FFServer, передающий H.264 потоком от Logitech C920

[113632]GNU [114082]tar[114083] - in the [114084]pax[114085] pax - handle hardlinks on the own.

Таким образом, у вас есть только два процесса [114086]tar[114087] и вам не нужно снова и снова ссылаться на [114088]cp[114089].[113635].

2
24.10.2014, 14:56
2 ответа

Я играл с камерой ffmpeg и logitech C920 на моем маршрутизаторе OpenWRT (TP-Link WDR3600, MIPS cpu на частоте 560 мГц), используя вашу конфигурацию. При 640x480 и выше моя система работала ненадежно. Я попробовал запустить ffmpeg в одиночку без транскодирования (мой маршрутизатор вообще не способен на транскодирование, слишком слабый процессор) и наблюдать за потоком с помощью VLC:

ffmpeg -f v4l2 -input_format h264 -video_size 320x400 -i /dev/video0 -copyinkf -codec copy -f mpegts udp://192.168.1.100:20000

При 640x480 видео искажалось, разрешение 800x600 или лучше вообще не работало, при этом ffmpeg выдавал тонны этих "немонотонных DTS..." сообщений. 320x400 было нормально. Видеовыход MJPEG работал намного лучше, и я смог запустить C920 со скоростью 1920x1080 и 15 кадров в секунду, со скоростью передачи данных выше 50 Мбит/с, но MJPEG также не был на 100% безошибочным. Похоже, что у камеры возникли проблемы с H264, по крайней мере, с ffmpeg. В H264 камера давала постоянный битрейт около 3.2 Мбит/с независимо от того, какое разрешение/частоту я пытался установить.

Но вернемся к делу. Чтобы заставить h264 работать с ffserver, я изменил раздел "Feed", изменив "Format" и прокомментировав StartSendOnKey в разделе "stream":

Format mpegts
...
#StartSendOnKey

добавив строку "Launch" в разделе "Feed":

Launch ffmpeg -f v4l2 -input_format h264 -video_size 320x400 -i /dev/video0 -copyinkf -codec copy

и изменив MaxBandwidth на 50000

я использовал vlc в качестве клиентского программного обеспечения.

1
27.01.2020, 22:22

Я использую эту конфигурацию, и она хорошо работает файл server.conf:

HTTPPort 1235
RTSPPort 1234
HTTPBindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 100000
#CustomLog –
#########################################
## usb cam:  logitec c920
#########################################
<Feed camfeed.ffm>
    File /tmp/camfeed.ffm
    FileMaxSize 500K
    #allow only localhost to publish feed
    ACL allow 192.168.1.149
</Feed>


<Stream usbcam.mov>
    Feed camfeed.ffm
    Format rtp

    #cam defaults:
    VideoSize 800x600
    VideoFrameRate 24
    VideoBitRate 400
    VideoCodec libx264

    NoLoop
    NoAudio
    Preroll 0
    StartSendOnKey
</Stream>

######################################
# ffmpeg cmd:
######################################
# ffmpeg -y -s 800x600 -f video4linux2 -i /dev/video0 -c:v libx264 -tune zerolatency -an http://192.168.1.149:1235/camfeed.ffm
0
27.01.2020, 22:22

Теги

Похожие вопросы