Ffmpeg ile Akış mp4


16

Tüm HTML5 video oynatıcılarda uyumlu olabilmesi için iki akış - webm ve mp4 - içeren bir özet akışı oluşturmam gerekiyor. Webm akışı mükemmel çalışıyor. Ancak, mp4 akışına erişmeye çalışırken, sunucu aşağıdaki hatayı verir:

Sat Mar  9 23:21:54 2013 muxer does not support non seekable output

Ffserver.conf dosyasının mp4 akışı ile ilgilenen kısmı:

<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>

Bulduğum kadarıyla, bazı insanlar mp4'ün sadece akış yapılamayacağını söylüyor. Ben bir HTML5 video oynatıcı ile iPhone video akışı için mp4 gerekli olduğu izlenimi altında olması dışında, mp4 için hiçbir eki var. Durum böyle değilse, bana bildirin ve memnuniyetle ffmpeg akışı ile daha güzel oynayan bir şeye geçeceğim.


3
Gerçekten MP4 akışı yapmak zorunda değilsiniz . HTML5 H.264 / MP4 video için video dosyasını kodlamak -movflags faststartveya onunla işlem yapmak qt-faststart, ardından <video>etiketteki MP4 dosyasını işaret etmek yeterli olmalıdır . Sunucunuzun , istemcinin aramasını sağlamak için bir H.264 akış modülüne ihtiyacı vardır . Yoksa canlı girdiniz var mı?
Mart'ta slhck

Müşterim bunun akış olmasını istiyor - istemcinin tamamen aramasını devre dışı bırakmak istiyor. Bir dosyadan akış yapıyor (sunucudaki dosya bir fark yaratırsa webm biçimindedir). Kontrolleri gizleyemiyorum, çünkü iPhone'lar kontrolleri gösterilmeye zorluyor.
Fibericon

@slhck: Mp4 ile canlı web kamerası girişi yayınlıyorum ama yapamıyorum. Ben flv kullandığımda çalışır. Canlı akış için mp4 kullanmak mümkün müdür?
John Qualis

@JohnQualis ffserver ile yapılabileceğinden emin değilim. Ancak kap önemli değil - kodekler FLV ve MP4 (H.264 ve AAC) ile aynı.
slhck

@sklhck: Flv ile ffserver kullanarak çalıştım ama mp4 ile değil. Çoğu web tarayıcısı mp4'ü destekler. İphone, android ve tüm ünlü web tarayıcılarında çalışan bir şeye ihtiyacım var ve onun h264 :) Ve canlı bir web kamerası akışı yapıyorum
John Qualis

Yanıtlar:


6

Kendi Web Sitenizden HTML 5 ve iPad dostu Video makalesi , en son 12 Kasım 2014 tarihinde güncellenmiştir:

görüntü

Makale, MP4'ün AAC ile H.264 kodlamasını kullanarak ffmpeg'in yakın bir sürümü ile iyi bir çözüm olarak kullanılmasını önermektedir.

Ayrıntılara dikkat ederek makaleyi okumanızı öneririm: Tüm önemli tarayıcılarda çalışacak örnek bir HTML dosyası ve videoları doğru şekilde yayınlayacak şekilde .mp4 dosyalarına dönüştürmek için kullanılan örnek bir FFmpeg komutu içerir.


bu "canlı" akış hakkında mı?
Markus Siebeneicher

@MarkusSiebeneicher: Evet, çoğunlukla.
harrymc

Hala "aranabilir" görünmüyor gibi ffmpeg ile "canlı" akış mp4 akış sorunları var. Ffmpeg çıktısını doğrudan tarayıcıya bağlarım, webm kutusundan çıkar çıkmaz. Mp4 biçimini kullanarak tür onun aranabilir değil diyor ... Bu yüzden mp4 "canlı" yayınlanabilir yapmak için ne yapacağını merak ediyorum, hiçbir video doğrudan dosya olarak kaydedilir (hangi aranabilir yapacak).
Markus Siebeneicher

@MarkusSiebeneicher: Bu soruyu ayrıntılarla yeni bir gönderide sormanızı öneririm.
harrymc

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.