Muszę utworzyć kanał, który ma dwa strumienie - webm i mp4 - aby był kompatybilny ze wszystkimi odtwarzaczami wideo HTML5. Strumień webm działa idealnie. Jednak podczas próby uzyskania dostępu do strumienia mp4 serwer wyrzuca następujący błąd:
Sat Mar 9 23:21:54 2013 muxer does not support non seekable output
Oto część pliku ffserver.conf, która dotyczy strumienia 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>
Z tego, co mogę znaleźć, niektórzy twierdzą, że mp4 po prostu nie może być przesyłany strumieniowo. Nie mam przywiązania do mp4, z wyjątkiem faktu, że miałem wrażenie, że potrzebujesz mp4, aby przesyłać strumieniowo wideo do iPhone'a za pomocą odtwarzacza wideo HTML5. Jeśli tak nie jest, daj mi znać, a chętnie przejdę do czegoś, co gra ładniej przy streamingu ffmpeg.
-movflags faststart
lub potraktowanie goqt-faststart
, a następnie wskazanie pliku MP4 w<video>
znaczniku. Twój serwer potrzebuje wtedy modułu przesyłania strumieniowego H.264, aby umożliwić klientowi wyszukiwanie. Czy masz wkład na żywo?