HD Webcam Stream

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

HD Webcam Stream

Markus Raps
Hi there,

iam trying to send a USB Webcam (Audio and Video) steam via UDP to
Another machine for further rendering.
my problem: the other side cant see the video data in the mpegts stream
without encoding.

but i dont have the performance to encode on the first machine.

so is there a flag or option i can set ?



ffmpeg -f v4l2 -list_formats all -i /dev/video0
ffmpeg version 3.2.14-1~deb9u1+rpt1 Copyright (c) 2000-2019 the FFmpeg
developers
   built with gcc 6.3.0 (Raspbian 6.3.0-18+rpi1+deb9u1) 20170516
   configuration: --prefix=/usr --extra-version='1~deb9u1+rpt1'
--toolchain=hardened --libdir=/usr/lib/arm-linux-gnueabihf
--incdir=/usr/include/arm-linux-gnueabihf --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-omx-rpi --enable-mmal --enable-openal --enable-opengl
--enable-sdl2 --enable-libdc1394 --enable-libiec61883 --arch=armhf
--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
[video4linux2,v4l2 @ 0xa245c0] Raw       :     yuyv422 :           YUYV
4:2:2 : 640x480 160x90 160x120 176x144 320x180 320x240 352x288 432x240
640x360 800x448 800x600 864x480 960x720 1024x576 1280x720 1600x896
1920x1080 2304x1296 2304x1536
[video4linux2,v4l2 @ 0xa245c0] Compressed:       mjpeg :          
Motion-JPEG : 640x480 160x90 160x120 176x144 320x180 320x240 352x288
432x240 640x360 800x448 800x600 864x480 960x720 1024x576 1280x720
1600x896 1920x1080




ffmpeg -f alsa -i hw:1 -f v4l2 -input_format mjpeg -framerate 30
-video_size 1920x1080 -i /dev/video0 -c:v copy -c:a aac -f mpegts
udp://192.168.4.4:6666?pkt_size=1316
ffmpeg version 3.2.14-1~deb9u1+rpt1 Copyright (c) 2000-2019 the FFmpeg
developers
   built with gcc 6.3.0 (Raspbian 6.3.0-18+rpi1+deb9u1) 20170516
   configuration: --prefix=/usr --extra-version='1~deb9u1+rpt1'
--toolchain=hardened --libdir=/usr/lib/arm-linux-gnueabihf
--incdir=/usr/include/arm-linux-gnueabihf --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-omx-rpi --enable-mmal --enable-openal --enable-opengl
--enable-sdl2 --enable-libdc1394 --enable-libiec61883 --arch=armhf
--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
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, alsa, from 'hw:1':
   Duration: N/A, start: 1559647194.626243, bitrate: 1024 kb/s
     Stream #0:0: Audio: pcm_s16le, 32000 Hz, stereo, s16, 1024 kb/s
Input #1, video4linux2,v4l2, from '/dev/video0':
   Duration: N/A, start: 751.380230, bitrate: N/A
     Stream #1:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown),
1920x1080, -5 kb/s, 30 fps, 30 tbr, 1000k tbn, 1000k tbc
Output #0, mpegts, to 'udp://192.168.4.4:6666?pkt_size=1316':
   Metadata:
     encoder         : Lavf57.56.101
     Stream #0:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown),
1920x1080, q=2-31, -5 kb/s, 30 fps, 30 tbr, 90k tbn, 1000k tbc
     Stream #0:1: Audio: aac (LC), 32000 Hz, stereo, fltp, 128 kb/s
     Metadata:
       encoder         : Lavc57.64.101 aac
Stream mapping:
   Stream #1:0 -> #0:0 (copy)
   Stream #0:0 -> #0:1 (pcm_s16le (native) -> aac (native))
Press [q] to stop, [?] for help
[alsa @ 0x1a9d680] Thread message queue blocking; consider raising the
thread_queue_size option (current value: 8)
frame=  733 fps= 30 q=-1.0 Lsize=  203742kB time=00:00:24.51
bitrate=68090.1kbits/s speed=   1x
video:188517kB audio:384kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 7.855927%
[aac @ 0x1aac7a0] Qavg: 426.005


ffmpeg -i udp://192.168.4.4:6666 -c copy save_video.ts
ffmpeg version 3.4.6-0ubuntu0.18.04.1 Copyright (c) 2000-2019 the FFmpeg
developers
   built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
   configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.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-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
Input #0, mpegts, from 'udp://192.168.4.4:6666':
   Duration: N/A, start: 39.264056, bitrate: N/A
   Program 1
     Metadata:
       service_name    : Service01
       service_provider: FFmpeg
     Stream #0:0[0x100]: Data: bin_data ([6][0][0][0] / 0x0006)
Output #0, mpegts, to 'save_video.ts':
Output file #0 does not contain any stream


--
Mit freundlichen Grüßen / best regards
Markus Raps
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: HD Webcam Stream

Moritz Barsnick
On Tue, Jun 04, 2019 at 13:32:46 +0200, Markus Raps wrote:
> iam trying to send a USB Webcam (Audio and Video) steam via UDP to
> Another machine for further rendering.
> my problem: the other side cant see the video data in the mpegts stream
> without encoding.
[...]
> Output #0, mpegts, to 'udp://192.168.4.4:6666?pkt_size=1316':
>    Metadata:
>      encoder         : Lavf57.56.101
>      Stream #0:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown), 1920x1080, q=2-31, -5 kb/s, 30 fps, 30 tbr, 90k tbn, 1000k tbc
>      Stream #0:1: Audio: aac (LC), 32000 Hz, stereo, fltp, 128 kb/s
>      Metadata:
>        encoder         : Lavc57.64.101 aac

While ffmpeg is happily doing this, I understand that MJPEG in MPEG-TS
is not supported. That it why the demuxing ffmpeg doesn't cope with it.

I haven't yet found a more suitable container for UDP though... No
solution, sorry.

Cheers,
Moritz
_______________________________________________
ffmpeg-user mailing list
[hidden email]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".