В качестве сервера пытаюсь использовать ffserver, в качестве клиента — ffplay. Но если есть лучшие альтернативы, попробую и их.
Вещать видео из файла у меня получилось. А вот с видеокамеры никак.
Файл ffserver.conf сейчас такой:
Код: Выделить всё
Port 12345
RTSPPort 554
BindAddress 0.0.0.0
<Feed webcam.ffm>
File /tmp/webcam.ffm
FileMaxSize 200K
Launch ffmpeg -s 640x480 -f video4linux2 -i /dev/video0 -vcodec mpeg2video
</Feed>
<Stream webcam>
Feed webcam.ffm
Format rtp
VideoCodec mpeg2video
VideoFrameRate 30
VideoBufferSize 80000
VideoBitRate 300
VideoSize 640x480
PreRoll 1
NoAudio
</Stream>
<Stream file>
Format rtp
File "/storage/dualmonitor.avi"
NoAudio
</Stream>
Поток "file" проигрывается через ffplay командой:
Код: Выделить всё
ffplay rtsp://localhost:554/file
Если запустить поток webcam, то ffplay выдаёт такое:
Код: Выделить всё
$ ffplay rtsp://localhost:554/webcam
FFplay version 0.6.3-rpmfusion, Copyright (c) 2003-2010 the FFmpeg developers
built on May 5 2011 19:19:44 with gcc 4.5.1 20100924 (Red Hat 4.5.1-4)
configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib --mandir=/usr/share/man --arch=i686 --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables' --extra-version=rpmfusion --enable-bzlib --enable-libdc1394 --enable-libdirac --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab --enable-avfilter --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib --cpu=i686 --enable-runtime-cpudetect
libavutil 50.15. 1 / 50.15. 1
libavcodec 52.72. 2 / 52.72. 2
libavformat 52.64. 2 / 52.64. 2
libavdevice 52. 2. 0 / 52. 2. 0
libavfilter 1.19. 0 / 1.19. 0
libswscale 0.11. 0 / 0.11. 0
libpostproc 51. 2. 0 / 51. 2. 0
[rtsp @ 0xb2301f00]Could not find codec parameters (Video: mpeg1video)
[rtsp @ 0xb2301f00]Estimating duration from bitrate, this may be inaccurate
rtsp://localhost:554/webcam: could not find codec parameters
Что это за codec parameters, и где их нужно указать, никак не могу понять.
Файл /tmp/webcam.ffm пишется нормальный, mplayer его проигрывает.
В общем-то, я нигде не нашла примеров, как запускать живое видео вещаться по RTSP (кроме sample конфига на все случаи жизни: http://ffmpeg.org/sample.html), поэтому, возможно, что-то у меня совсем неправильно в конфиге.
Если кто-то в этом разбирался и может помочь, я была бы очень благодарна.