J'essaie d'utiliser crtmpserver et ffmpeg (du ppa mc3man, je suis sur Ubuntu 14.04) pour diffuser, pour l'instant juste localement sur ma machine (pour que tout fonctionne correctement).
J'ai la configuration par défaut de crtmpserver, et elle est en cours d'exécution.
Maintenant, j'essaie de diffuser un fichier FLV en utilisant:
ffmpeg -re -i SampleVideo_1280x720_20mb.flv -f flv -c copy -metadata streamName="aaa" "tcp://localhost:6666"
et puis, pendant qu'il joue, regardez le résultat avec ffplay
ffplay "rtmp://localhost/flvplayback/aaa"
Cependant, cette dernière commande entraîne les erreurs suivantes:
[rtmp @ 0x7f7800005760] Server error: call to function _checkbw failed
rtmp://localhost/flvplayback/aaa: Unknown error occurred
Je ne sais pas ce qui ne va pas, quelqu'un qui a plus d'expérience dans ce domaine a-t-il une idée de ce que je pourrais essayer de résoudre?
J'ai utilisé crtmpserver à fond, je sais que l'erreur _checkbw. Bien que je ne sache pas encore comment résoudre ce problème, vous pouvez également utiliser le flux de commande ffmpeg suivant pour crtmpserver sur rtsp et le lire à partir de n’importe quel lecteur multimédia, y compris VLC et Android, lecteur multimédia natif.
ffmpeg -re -f video4linux2 -s 640x480 -i /dev/video0 -pix_fmt yuv420p -r 20 -c:v libx264 -q 1 -f rtsp -metadata title="aaa" "tcp://<server ip here>:5554"
aussi vous pouvez le lire via
vlc rtsp://<server ip here>:5554/flvplayback/aaa
PS: veillez à autoriser le trafic de ces ports sur le serveur.