Yerel bir uygulamanın bir JPEG görüntüleri dizisini bir FIFO (Linux üzerinde Unix adlandırılmış boru) içine yazdığı bir kurulumum var. diğer ucunda ben ffmpeg
diziyi alıp ffserver
örneğine içine geçiremez:ffserver kullanarak tek bir JPEG işlevi
% ffmpeg -i fifo.mjpeg http://127.0.0.1:8090/feed.ffm
ffserver
için yapılandırma şuna benzer: Bu iyi çalışır
HTTPPort 8090
HTTPBindAddress 0.0.0.0
MaxHTTPConnections 20
MaxClients 10
MaxBandwidth 1000
<Feed feed.ffm>
File /tmp/feed.ffm
FileMaxSize 200k
ACL allow 127.0.0.1
</Feed>
<Stream stream.mpjpeg>
Format mpjpeg
Feed feed.ffm
VideoSize 960x600
VideoFrameRate 2
VideoIntraOnly
Strict -1
NoAudio
NoDefaults
</Stream>
kızkardeşimi işaret edebilir web tarayıcısına http://127.0.0.1:8090/stream.mpjpeg
ve videoyu izleyin.
Şimdi tek bir JPEG indirmek için bir yol eklemek istiyorum (bunu videonun anlık görüntüsü olarak düşünüyorum).
<Stream image.jpg>
Format singlejpeg
Feed feed.ffm
VideoSize 960x600
VideoFrameRate 2
VideoIntraOnly
Strict -1
NoAudio
NoDefaults
</Stream>
sadece çeşit yaradı: Ben ffserver
yapılandırmaya aşağıdaki eklendi. Tabii, eğer tarayıcımı http://127.0.0.1:8090/image.jpg
'a yönlendirirsem, isimli videodan bir fotoğraf çektim ancak tarayıcı hiç bir zaman yüklemeyi durdurmuyor! Ben wget http://127.0.0.1:8090/image.jpg
çalıştırırsanız
Doğrusu ben MIME türü iyi (image/jpeg
) olduğunu görüyoruz, ancak resmin sonu var gibi görünüyor.
ffserver
, yapılandırmamda tek bir görüntüden daha fazlasını gönderen bir şey eksik mi?
Bu kurulumu hem 2.8.6 (Debian Jessie, paket jessie-backports'tan geliyor) hem de 3.0 (Arch Linux) denedim, her iki durumda da aynı sonucu ekledim.