OS: Debian Stretch
cat /etc/*release PRETTY_NAME="Debian GNU/Linux 9 (stretch)" NAME="Debian GNU/Linux" VERSION_ID="9" VERSION="9 (stretch)" ID=debian HOME_URL="https://www.debian.org/" SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/" uname -v #1 SMP Debian 4.9.25-1 (2017-05-02) cvlc --version VLC media player 2.2.6 Umbrella (revision 2.2.6-0-g1aae78981c) VLC-Version 2.2.6 Umbrella (2.2.6-0-g1aae78981c) Kompiliert von buildd auf binet.debian.org (May 24 2017 16:00:59) Kompiler: gcc version 6.3.0 20170516 (Debian 6.3.0-18) Dieses Programm kommt OHNE GEWÄHRLEISTUNG. Sie dürfen das Programm unter den Bedingungen der GNU General Public License weitergegeben; Für Details bitte die Datei COPYING ansehen. Geschrieben von der VideoLAN-Gruppe; zu sehen in der AUTHORS-Datei. ffplay -version ffplay version 3.2.5-1 Copyright (c) 2003-2017 the FFmpeg developers built with gcc 6.3.0 (Debian 6.3.0-18) 20170516 configuration: --prefix=/usr --extra-version=1 --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-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --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-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared libavutil 55. 34.101 / 55. 34.101 libavcodec 57. 64.101 / 57. 64.101 libavformat 57. 56.101 / 57. 56.101 libavdevice 57. 1.100 / 57. 1.100 libavfilter 6. 65.100 / 6. 65.100 libavresample 3. 1. 0 / 3. 1. 0 libswscale 4. 2.100 / 4. 2.100 libswresample 2. 3.100 / 2. 3.100 libpostproc 54. 1.100 / 54. 1.100 ffmpeg -version ffmpeg version 3.2.5-1 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 6.3.0 (Debian 6.3.0-18) 20170516 configuration: --prefix=/usr --extra-version=1 --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-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --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-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared libavutil 55. 34.101 / 55. 34.101 libavcodec 57. 64.101 / 57. 64.101 libavformat 57. 56.101 / 57. 56.101 libavdevice 57. 1.100 / 57. 1.100 libavfilter 6. 65.100 / 6. 65.100 libavresample 3. 1. 0 / 3. 1. 0 libswscale 4. 2.100 / 4. 2.100 libswresample 2. 3.100 / 2. 3.100 libpostproc 54. 1.100 / 54. 1.100
ffplay /dev/video0
Input #0, video4linux2,v4l2, from '/dev/video0':B sq= 0B f=0/0 Duration: N/A, start: 45810.627382, bitrate: 122880 kb/s Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 640x480, 122880 kb/s, 25 fps, 25 tbr, 1000k tbn, 1000k tbc
--> yuyv422
Perfect pair (raw video):
Server:
cvlc -vvv v4l2:// :v4l2-dev=/dev/video0 :v4l2-width=640 :v4l2-height=480 :v4l2-fps 25 --sout '#standard'
Client:
ffplay -f rawvideo -pixel_format yuyv422 -video_size 640x480 -framerate 25 http://localhost:8081 (ffplay -f rawvideo -pixel_format yuyv422 -video_size 640x480 http://localhost:8081) (ffplay -f rawvideo -pixel_format yuyv422 -video_size 640x480 http://server-ip:8081)
Sorry, don't have gbit-network nor 1080p-cam :(
For Raspberry Pi(3) users:
sudo modprobe bcm2835-v4l2
(No Display/X11 on the pi3)
ffprobe /dev/video0 ffprobe version N-85344-gb438a78 Copyright (c) 2007-2017 the FFmpeg developers built with gcc 4.9.2 (Raspbian 4.9.2-10) configuration: libavutil 55. 60.100 / 55. 60.100 libavcodec 57. 92.100 / 57. 92.100 libavformat 57. 72.100 / 57. 72.100 libavdevice 57. 7.100 / 57. 7.100 libavfilter 6. 84.100 / 6. 84.100 libswscale 4. 7.100 / 4. 7.100 libswresample 2. 8.100 / 2. 8.100 Input #0, video4linux2,v4l2, from '/dev/video0': Duration: N/A, start: 153.062714, bitrate: 283115 kb/s Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1024x768, 283115 kb/s, 30 fps, 30 tbr, 1000k tbn, 1000k tbc
--> yuv420p
But with,
cvlc -vvv v4l2:// :v4l2-dev=/dev/video0 :v4l2-width=1024 :v4l2-height=768 :v4l2-fps=30 --sout '#standard'
the result with
ffplay -f rawvideo -pixel_format yuv420p -video_size 1024x768 http://server-ip:3333
on the client was not ok.
cvlc -vvv v4l2:// :v4l2-dev=/dev/video0 :v4l2-width=800 :v4l2-height=600 :v4l2-fps=16 --sout '#standard'
(~12MBiT/s --> 100Mbit)
on the server and the result with
ffplay -f rawvideo -pixel_format yuv420p -video_size 800x600 http://server-ip:3333
on the client was ok!