J'ai besoin de créer un flux qui a deux flux - webm et mp4 - afin qu'il puisse être compatible avec tous les lecteurs vidéo HTML5. Le flux webm fonctionne parfaitement. Cependant, lors de la tentative d'accès au flux mp4, le serveur crache l'erreur suivante:
Sat Mar 9 23:21:54 2013 muxer does not support non seekable output
Voici la partie du fichier ffserver.conf qui traite du flux mp4:
<Stream channel1.mp4> # Output stream URL definition
Feed feed1.ffm # Feed from which to receive video
Format mp4
# Audio settings
AudioCodec libmp3lame
AudioBitRate 64 # Audio bitrate
# Video settings
VideoCodec libx264
VideoSize 560x320 # Video resolution
VideoFrameRate 25 # Video FPS
AVOptionVideo flags +global_header # Parameters passed to encoder
# (same as ffmpeg command-line parameters)
AVOptionVideo cpu-used 0
AVOptionVideo qmin 10
AVOptionVideo qmax 42
AVOptionVideo quality good
AVOptionAudio flags +global_header
PreRoll 15
StartSendOnKey
VideoBitRate 400 # Video bitrate
</Stream>
D'après ce que je peux trouver, certaines personnes disent que mp4 ne peut tout simplement pas être diffusé. Je n'ai aucun attachement à mp4, sauf que j'avais l'impression que vous aviez besoin de mp4 pour diffuser de la vidéo sur l'iPhone avec un lecteur vidéo HTML5. Si ce n'est pas le cas, faites le moi savoir et je serai ravi de passer à quelque chose qui fonctionne mieux avec le streaming ffmpeg.
-movflags faststart
ou de le traiterqt-faststart
, puis de pointer vers le fichier MP4 dans la<video>
balise. Votre serveur a alors besoin d'un module de streaming H.264 pour permettre au client de rechercher. Ou avez-vous une entrée en direct?Réponses:
L'article HTML 5 et la vidéo compatible iPad de votre propre site Web , mis à jour le 12 novembre 2014, contiennent les informations suivantes:
L'article recommande d'utiliser MP4 comme une bonne solution avec une version assez récente de ffmpeg, en utilisant le codage H.264 avec AAC.
Je suggère de lire l'article avec une attention aux détails: il contient un exemple de fichier HTML qui fonctionnera sur tous les principaux navigateurs, ainsi qu'un exemple de commande FFmpeg utilisé pour convertir des vidéos en fichiers .mp4 afin qu'elles soient diffusées correctement.
la source
Je suppose qu'il sera utile de penser au HTTP Live Streaming.
https://developer.apple.com/streaming/
Si je comprends bien, cela fonctionne bien dans les appareils iOs.
En voici un exemple:
/programming/28723993/ffmpeg-hls-stream-for-android-and-ios
la source