#11525: 60fps stream from Elgato Facecam Pro is frozen
-------------------------------------+-------------------------------------
             Reporter:  Kirill A.    |                     Type:  defect
  Korinsky                           |
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Summary of the bug:

 When I use Elgato Facecam Pro is frozen an attempt to consume 60fps stream
 from this device lead to frozen picture. 30 fps and adding -noframedrop
 helps, but the last one introduced a significant delay for couple of
 seconds.

 I had captured two video on my laptop on OpenBSD from this device as:
 {{{
 tmp $ ffmpeg -input_format mjpeg -video_size 3840x2160 -framerate 30 -i
 /dev/video1 -codec copy -t 10 framerate-30.mp4
 ffmpeg version 6.1.2 Copyright (c) 2000-2024 the FFmpeg developers
   built with OpenBSD clang version 16.0.6
   configuration: --enable-shared --arch=amd64 --cc=cc --cxx=c++ --enable-
 debug --disable-stripping --disable-indev=jack --disable-outdev=sdl2
 --disable-vulk
 an --enable-fontconfig --enable-frei0r --enable-gpl --enable-ladspa
 --enable-libaom --enable-libass --enable-libdav1d --enable-libfontconfig
 --enable-libfre
 etype --enable-libfribidi --enable-libgsm --enable-libmp3lame --enable-
 libopus --enable-libspeex --enable-libtheora --enable-libv4l2 --enable-
 libvorbis --en
 able-libvpx --enable-libx264 --enable-libx265 --enable-libxml2 --enable-
 libxvid --enable-libzimg --enable-nonfree --enable-openssl --enable-
 libvidstab --ext
 ra-cflags='-I/usr/local/include -I/usr/X11R6/include' --extra-
 libs='-L/usr/local/lib -L/usr/X11R6/lib' --extra-ldsoflags=
 --mandir=/usr/local/man --objcc=/u
 sr/bin/false --optflags='-O2 -pipe -g -Wno-redundant-decls'
   libavutil      58. 29.100 / 58. 29.100
   libavcodec     60. 31.102 / 60. 31.102
   libavformat    60. 16.100 / 60. 16.100
   libavdevice    60.  3.100 / 60.  3.100
   libavfilter     9. 12.100 /  9. 12.100
   libswscale      7.  5.100 /  7.  5.100
   libswresample   4. 12.100 /  4. 12.100
   libpostproc    57.  3.100 / 57.  3.100
 Input #0, video4linux2,v4l2, from '/dev/video1':
   Duration: N/A, start: 50567.670002, bitrate: N/A
   Stream #0:0: Video: mjpeg (Baseline), yuvj420p(pc,
 bt470bg/unknown/unknown), 3840x2160 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr,
 1000k tbn
 Output #0, mp4, to 'framerate-30.mp4':
   Metadata:
     encoder         : Lavf60.16.100
   Stream #0:0: Video: mjpeg (Baseline) (mp4v / 0x7634706D), yuvj420p(pc,
 bt470bg/unknown/unknown), 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 30 fps, 30
 tbr, 100
 0k tbn
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
 Press [q] to stop, [?] for help
 [out#0/mp4 @ 0xb2000de8700] video:98822kB audio:0kB subtitle:0kB other
 streams:0kB global headers:0kB muxing overhead: 0.004377%
 size=   98826kB time=00:00:09.98 bitrate=81120.5kbits/s speed=   1x

 tmp $
 tmp $ ffmpeg -input_format mjpeg -video_size 3840x2160 -framerate 60 -i
 /dev/video1 -codec copy -t 10 framerate-60.mp4
 ffmpeg version 6.1.2 Copyright (c) 2000-2024 the FFmpeg developers
   built with OpenBSD clang version 16.0.6
   configuration: --enable-shared --arch=amd64 --cc=cc --cxx=c++ --enable-
 debug --disable-stripping --disable-indev=jack --disable-outdev=sdl2
 --disable-vulk
 an --enable-fontconfig --enable-frei0r --enable-gpl --enable-ladspa
 --enable-libaom --enable-libass --enable-libdav1d --enable-libfontconfig
 --enable-libfre
 etype --enable-libfribidi --enable-libgsm --enable-libmp3lame --enable-
 libopus --enable-libspeex --enable-libtheora --enable-libv4l2 --enable-
 libvorbis --en
 able-libvpx --enable-libx264 --enable-libx265 --enable-libxml2 --enable-
 libxvid --enable-libzimg --enable-nonfree --enable-openssl --enable-
 libvidstab --ext
 ra-cflags='-I/usr/local/include -I/usr/X11R6/include' --extra-
 libs='-L/usr/local/lib -L/usr/X11R6/lib' --extra-ldsoflags=
 --mandir=/usr/local/man --objcc=/u
 sr/bin/false --optflags='-O2 -pipe -g -Wno-redundant-decls'
   libavutil      58. 29.100 / 58. 29.100
   libavcodec     60. 31.102 / 60. 31.102
   libavformat    60. 16.100 / 60. 16.100
   libavdevice    60.  3.100 / 60.  3.100
   libavfilter     9. 12.100 /  9. 12.100
   libswscale      7.  5.100 /  7.  5.100
   libswresample   4. 12.100 /  4. 12.100
   libpostproc    57.  3.100 / 57.  3.100
 Input #0, video4linux2,v4l2, from '/dev/video1':
   Duration: N/A, start: 50588.050002, bitrate: N/A
   Stream #0:0: Video: mjpeg (Baseline), yuvj420p(pc,
 bt470bg/unknown/unknown), 3840x2160 [SAR 1:1 DAR 16:9], 60 fps, 60 tbr,
 1000k tbn
 Output #0, mp4, to 'framerate-60.mp4':
   Metadata:
     encoder         : Lavf60.16.100
   Stream #0:0: Video: mjpeg (Baseline) (mp4v / 0x7634706D), yuvj420p(pc,
 bt470bg/unknown/unknown), 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 60 fps, 60
 tbr, 100
 0k tbn
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
 Press [q] to stop, [?] for help
 [out#0/mp4 @ 0x90d2c605500] video:168313kB audio:0kB subtitle:0kB other
 streams:0kB global headers:0kB muxing overhead: 0.004573%
 size=  168321kB time=00:00:09.99 bitrate=138026.3kbits/s speed=   1x
 tmp $
 }}}

 Here files:
  - https://kirill.korins.ky/pub/ffmpeg-framerate-30.mp4
  - https://kirill.korins.ky/pub/ffmpeg-framerate-60.mp4

 I had tried Linux as well with the same result, with ffmpeg 7.1.

 And on the same setup Jabra PanaCast 20 produces same 4K 60fps strem which
 doesn't create any issue.
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/11525>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
_______________________________________________
FFmpeg-trac mailing list
FFmpeg-trac@avcodec.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-trac

To unsubscribe, visit link above, or email
ffmpeg-trac-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to