Scherbakov
@Scherbakov
Заместитель директора

Как решить проблему ffmpeg и ip камеры ACTi?

У меня возникла проблема с вещанием из потока IP камеры.
Исходные данные:
Есть камеры ACTi E13, E32, E53.
Есть сервер Ubuntu 13.04 (ffmpeg на борту).

При запуске трансляции ffmpeg выдает непонятную ошибку о которой интернет собственно ничего не знает
Привожу полный код:

ffmpeg -i "rtsp://user:user@10.2.1.20:7070/track1" -i "rtsp://user:user@10.2.1.20:7070/track3" -s 1280x720 -trellis 2 -vcodec copy -acodec copy -f flv "rtmp://127.0.0.1/live/cam2"
ffmpeg version git-2014-01-07-b051746 Copyright (c) 2000-2014 the FFmpeg developers
  built on Jan  7 2014 10:46:49 with gcc 4.7 (Ubuntu/Linaro 4.7.3-1ubuntu1)
  configuration: --enable-gpl --enable-nonfree --enable-shared --enable-pthreads --enable-encoder=libvorbis --enable-encoder=libogg --enable-encoder=liba52 --enable-encoder=libgsm --enable-encoder=dc1394 --enable-encoder=libxvid --disable-debug --enable-encoder=libfaac --enable-encoder=libmp3lame --enable-encoder=libx264 --enable-encoder=libfaad --enable-encoder=libtheora --enable-decoder=libvorbis --enable-decoder=libogg --enable-decoder=liba52 --enable-decoder=libgsm --enable-decoder=dc1394 --enable-decoder=libxvid --enable-decoder=libfaac --enable-decoder=libmp3lame --enable-decoder=libx264 --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-libvpx --enable-decoder=libfaad
  WARNING: library configuration mismatch
  avutil      configuration: --prefix=/usr/local/cpffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libopencore-amrnb --enable-decoder=liba52 --enable-libopencore-amrwb --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-libvpx --enable-version3 --extra-version=syslint
  avcodec     configuration: --prefix=/usr/local/cpffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libopencore-amrnb --enable-decoder=liba52 --enable-libopencore-amrwb --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-libvpx --enable-version3 --extra-version=syslint
  avformat    configuration: --prefix=/usr/local/cpffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libopencore-amrnb --enable-decoder=liba52 --enable-libopencore-amrwb --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-libvpx --enable-version3 --extra-version=syslint
  avdevice    configuration: --prefix=/usr/local/cpffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libopencore-amrnb --enable-decoder=liba52 --enable-libopencore-amrwb --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-libvpx --enable-version3 --extra-version=syslint
  swscale     configuration: --prefix=/usr/local/cpffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libopencore-amrnb --enable-decoder=liba52 --enable-libopencore-amrwb --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-libvpx --enable-version3 --extra-version=syslint
  swresample  configuration: --prefix=/usr/local/cpffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libopencore-amrnb --enable-decoder=liba52 --enable-libopencore-amrwb --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-libvpx --enable-version3 --extra-version=syslint
  postproc    configuration: --prefix=/usr/local/cpffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libopencore-amrnb --enable-decoder=liba52 --enable-libopencore-amrwb --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-libvpx --enable-version3 --extra-version=syslint
  libavutil      52. 62.100 / 52. 40.100
  libavcodec     55. 47.100 / 55. 18.102
  libavformat    55. 22.102 / 55. 12.102
  libavdevice    55.  5.102 / 55.  3.100
  libavfilter     4.  0.103 /  4.  0.103
  libswscale      2.  5.101 /  2.  4.100
  libswresample   0. 17.104 /  0. 17.102
  libpostproc    52.  3.100 / 52.  3.100
[h264 @ 0xe45ec0] number of reference frames (0+2) exceeds max (1; probably corrupt input), discarding one
Input #0, rtsp, from 'rtsp://user:user@10.2.1.20:7070/track1':
  Metadata:
    title           : Session streamed by RTP/RTSP server
    comment         : ACTi.COM Streaming Media v
  Duration: N/A, start: 0.332667, bitrate: N/A
    Stream #0:0: Video: h264 (High), yuv420p, 1280x720, 7.50 fps, 15.08 tbr, 90k tbn, 15 tbc
Guessed Channel Layout for  Input Stream #1.0 : mono
Input #1, rtsp, from 'rtsp://user:user@10.2.1.20:7070/track3':
  Metadata:
    title           : Session streamed by RTP/RTSP server
    comment         : ACTi.COM Streaming Media v
  Duration: N/A, start: 0.000000, bitrate: 64 kb/s
    Stream #1:0: Audio: pcm_mulaw, 8000 Hz, mono, s16, 64 kb/s
Output #0, flv, to 'rtmp://127.0.0.1/live/cam2':
  Metadata:
    title           : Session streamed by RTP/RTSP server
    comment         : ACTi.COM Streaming Media v
    encoder         : Lavf55.12.102
    Stream #0:0: Video: h264 ([7][0][0][0] / 0x0007), yuv420p, 1280x720, q=2-31, 7.50 fps, 1k tbn, 90k tbc
    Stream #0:1: Audio: pcm_mulaw ([8][0][0][0] / 0x0008), 8000 Hz, mono, 64 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #1:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
[flv @ 0xff5000] Non-monotonous DTS in output stream 0:0; previous: 0, current: -264; changing to 0. This may result in incorrect timestamps in the output file.
[flv @ 0xff5000] Non-monotonous DTS in output stream 0:0; previous: 0, current: -205; changing to 0. This may result in incorrect timestamps in the output file.
[flv @ 0xff5000] Non-monotonous DTS in output stream 0:0; previous: 0, current: -135; changing to 0. This may result in incorrect timestamps in the output file.
[flv @ 0xff5000] Non-monotonous DTS in output stream 0:0; previous: 0, current: -66; changing to 0. This may result in incorrect timestamps in the output file.
[flv @ 0xff5000] Non-monotonous DTS in output stream 0:0; previous: 0, current: -6; changing to 0. This may result in incorrect timestamps in the output file.
[NULL @ 0xe45ec0] RTP: missed 288 packets
CSeq 6 expected, 0 received.ize=   11493kB time=00:00:29.98 bitrate=3139.7kbits/s    
CSeq 6 expected, 0 received.ize=   12166kB time=00:00:30.08 bitrate=3313.2kbits/s    
[flv @ 0xff5000] Failed to update header with correct duration.
[flv @ 0xff5000] Failed to update header with correct filesize.
frame=  449 fps= 15 q=-1.0 Lsize=   12288kB time=00:00:30.32 bitrate=3319.7kbits/s    
video:12031kB audio:244kB subtitle:0 global headers:0kB muxing overhead 0.110681%


Как я понял проблема все таки в камерах, т.к. другие модели работают (не ACTi)
Все происходит на 30й секунде (до этого трансляция идет безупречно)
[flv @ 0xff5000] Failed to update header with correct duration.
[flv @ 0xff5000] Failed to update header with correct filesize.

А на этой ошибке сваливается. Пробовал всякоразные интерпритации использования ключей. Ничего не помогает. AVCONV даже стартовать отказывается.

FFMPEG сегодня обновил с GITa, до этого был 0.9.

Вопрос: Можно ли хотя бы костылями заставить ffmpeg проигнорировать ошибку.
  • Вопрос задан
  • 4648 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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