ffmpeg переходит на nginx, соединение отказано

441
hans gerte

Новичок в ffmpeg и прочитал дюжину руководств и инструкций, но все еще не может заставить его работать.

У меня есть сервер Tvheadend, который принимает каналы от DVB, каналы работают без проблем, но мне нужно перекодировать его, чтобы U мог видеть канал за пределами моего дома.

Я попытался установить модуль nginx + rtmp с ffmpeg на более мощный сервер (ubuntu 18.08), но, что бы я ни делал, я не могу заставить его работать.

Вот что я пытаюсь:

ffmpeg -f mpegts -i http://username:password@192.168.0.14:4445/stream/channelid/9 -deinterlace -vcodec libx264 -vb 1000k -acodec libfacc -ar 48000 -ab 48k -f flv rtmp://192.168.0.58:1935/test 

Источник - сервер tvheadend, а сервер rtmp - это ffmpeg, где будет выполняться транскодирование.

ffmpeg version 3.4.2-2 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 7 (Ubuntu 7.3.0-16ubuntu2) configuration: --prefix=/usr --extra-version=2 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared libavutil 55. 78.100 / 55. 78.100 libavcodec 57.107.100 / 57.107.100 libavformat 57. 83.100 / 57. 83.100 libavdevice 57. 10.100 / 57. 10.100 libavfilter 6.107.100 / 6.107.100 libavresample 3. 7. 0 / 3. 7. 0 libswscale 4. 8.100 / 4. 8.100 libswresample 2. 9.100 / 2. 9.100 libpostproc 54. 7.100 / 54. 7.100 [h264 @ 0x557f8caccca0] SPS unavailable in decode_picture_timing [h264 @ 0x557f8caccca0] non-existing PPS 0 referenced [h264 @ 0x557f8caccca0] SPS unavailable in decode_picture_timing [h264 @ 0x557f8caccca0] non-existing PPS 0 referenced [h264 @ 0x557f8caccca0] decode_slice_header error [h264 @ 0x557f8caccca0] no frame! [h264 @ 0x557f8caccca0] SPS unavailable in decode_picture_timing [h264 @ 0x557f8caccca0] non-existing PPS 0 referenced [h264 @ 0x557f8caccca0] SPS unavailable in decode_picture_timing [h264 @ 0x557f8caccca0] non-existing PPS 0 referenced [h264 @ 0x557f8caccca0] decode_slice_header error [h264 @ 0x557f8caccca0] no frame! [h264 @ 0x557f8caccca0] SPS unavailable in decode_picture_timing [h264 @ 0x557f8caccca0] non-existing PPS 0 referenced [h264 @ 0x557f8caccca0] SPS unavailable in decode_picture_timing [h264 @ 0x557f8caccca0] non-existing PPS 0 referenced [h264 @ 0x557f8caccca0] decode_slice_header error [h264 @ 0x557f8caccca0] no frame! [h264 @ 0x557f8caccca0] SPS unavailable in decode_picture_timing [h264 @ 0x557f8caccca0] non-existing PPS 0 referenced [h264 @ 0x557f8caccca0] SPS unavailable in decode_picture_timing [h264 @ 0x557f8caccca0] non-existing PPS 0 referenced [h264 @ 0x557f8caccca0] decode_slice_header error [h264 @ 0x557f8caccca0] no frame! [mp3 @ 0x557f8cacdee0] Header missing Input #0, mpegts, from 'http://username:password@192.168.0.14:4445/stream/channelid/14': Duration: N/A, start: 71505.814511, bitrate: N/A Program 1  Metadata: service_name : ? service_provider: ? Stream #0:0[0x50f]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(tv, bt470bg, top first), 704x576 [SAR 16:11 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:1[0xd10](dan): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s Unknown encoder 'libfacc' 

Обновление: просто измените аудио кодек на aac, но теперь я получаю это

ffmpeg version 3.4.2-2 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 7 (Ubuntu 7.3.0-16ubuntu2) configuration: --prefix=/usr --extra-version=2 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared libavutil 55. 78.100 / 55. 78.100 libavcodec 57.107.100 / 57.107.100 libavformat 57. 83.100 / 57. 83.100 libavdevice 57. 10.100 / 57. 10.100 libavfilter 6.107.100 / 6.107.100 libavresample 3. 7. 0 / 3. 7. 0 libswscale 4. 8.100 / 4. 8.100 libswresample 2. 9.100 / 2. 9.100 libpostproc 54. 7.100 / 54. 7.100 [mp3 @ 0x5572191f6de0] Header missing [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] SPS unavailable in decode_picture_timing [h264 @ 0x5572191f5ba0] non-existing PPS 0 referenced [h264 @ 0x5572191f5ba0] decode_slice_header error [h264 @ 0x5572191f5ba0] no frame! [h264 @ 0x5572191f5ba0] Increasing reorder buffer to 2 Input #0, mpegts, from 'http://username:password@192.168.0.14:4445/stream/channelid/9': Duration: N/A, start: 79841.014511, bitrate: N/A Program 1  Metadata: service_name : ? service_provider: ? Stream #0:0[0x50f]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(tv, bt470bg, top first), 704x576 [SAR 16:11 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:1[0xd10](dan): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s [tcp @ 0x5572194ef060] Connection to tcp://192.168.0.58:1935 failed: Connection refused [rtmp @ 0x5572194b65e0] Cannot open connection tcp://192.168.0.58:1935 rtmp://192.168.0.58:1935/test: Connection refused 
0
Привет slhck, извините, только что обновил вопрос с дополнительной информацией hans gerte 5 лет назад 0
«Неизвестный кодировщик« libfacc »- начать с этой проблемы. Вместо этого используйте `-acodec aac`. slhck 5 лет назад 0
В следующий раз при редактировании вашего вопроса, пожалуйста, убедитесь, что вы используете правильную грамматику и форматирование. Используйте кнопку кода (`{}`) для форматирования вывода консоли. Заранее спасибо. slhck 5 лет назад 0
синтаксис aac сработал, но теперь я получаю сообщение об ошибке соединения отказано hans gerte 5 лет назад 0
Хорошо, у вас есть сервер, работающий на 192.168.0.58 и прослушивающий TCP-порт 1935? Если нет, вы должны настроить и запустить сервер соответствующим образом. slhck 5 лет назад 0
Я попытался установить nginx-RTMP на том же сервере. nginx запущен, по умолчанию отображается nginx. но не уверен, что nginx.conf является рупором. hans gerte 5 лет назад 0
Вы не показали свой `nginx.conf`, поэтому трудно сказать. Загляните в свои логи nginx - и `netstat -altun` может показать вам открытые порты. Обратите внимание, что это не сайт для устранения неисправностей. Было бы лучше, если бы вы могли показать больше информации о том, что вы пробовали и в чем проблема. slhck 5 лет назад 0
Как вы решили проблему? Другие читатели извлекут выгоду из решения. Вы можете разместить его как ответ на свой вопрос ниже. slhck 5 лет назад 0
Я переустановил модуль nginx-rtmp и убедился, что порт rtmp был открыт с помощью `netstat - altun`, и убедился, что строка ffmpeg совпадает с строкой сервера nignx. hans gerte 5 лет назад 0

1 ответ на вопрос

0
slhck

OP решил проблему, переустановив nginx-rtmpмодуль, убедившись, что порт RTMP был открыт с помощью netstat -altun. Он также позаботился о том, чтобы строка ffmpeg была такой же, как у сервера nignx.

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