<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <br>
    <br>
    <div class="moz-cite-prefix">Den 04.05.2025 05:49, skrev Andrew
      Randrianasulu:<br>
    </div>
    <blockquote type="cite"
cite="mid:CA+rFky7jYdA-VAGmT6aT3_kwK-OWr5Hx8hA2QxaVzirUx_5mtA@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="auto">
        <div><br>
          <br>
          <div class="gmail_quote gmail_quote_container">
            <div dir="ltr" class="gmail_attr">вс, 4 мая 2025 г., 01:37
              Terje J. Hanssen <<a
                href="mailto:terjejhanssen@gmail.com"
                moz-do-not-send="true" class="moz-txt-link-freetext">terjejhanssen@gmail.com</a>>:<br>
            </div>
            <blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <div> <br>
                <div>Den 03.05.2025 13:00, skrev Terje J. Hanssen:<br>
                </div>
                <blockquote type="cite"> <br>
                  <div>Den 02.05.2025 21:42, skrev Andrew Randrianasulu:<br>
                  </div>
                  <blockquote type="cite">
                    <div dir="auto">
                      <div><br>
                        <br>
                        <div class="gmail_quote">
                          <div dir="ltr" class="gmail_attr">пт, 2 мая
                            2025 г., 22:37 Terje J. Hanssen <<a
                              href="mailto:terjejhanssen@gmail.com"
                              target="_blank" rel="noreferrer"
                              moz-do-not-send="true"
                              class="moz-txt-link-freetext">terjejhanssen@gmail.com</a>>:<br>
                          </div>
                          <blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                            <div> <a
href="https://www.mail-archive.com/cin@lists.cinelerra-gg.org/msg05748.html"
                                rel="noreferrer noreferrer"
                                target="_blank" moz-do-not-send="true"
                                class="moz-txt-link-freetext">https://www.mail-archive.com/cin@lists.cinelerra-gg.org/msg05748.html</a><br>
                              <br>
                              I contine this new thread with an short
                              extract from the long growing<br>
                              [Cin] ms2130 HDMI-USB3 UHD capture card -
                              not quite as expected?<br>
                              <br>
                              But shouldn't a 422 and not a 420 output
                              format be created?<br>
                              <br>
                              <blockquote>>> it seems in some
                                cases ffmpeg not geared towards
                                preserving most information, just picks
                                up most commonly defined/first pixel
                                format. <br>
                                >> Try mpeg2video as output codec,
                                and/or specify pixel format (pix_fmt)
                                more explicitly before output's
                                filename?<br>
                                <br>
                                >>> Could you possibly
                                examplify the latter?<br>
                                <br>
                                >>>> I think I just
                                theorized ffmpeg may try to get some
                                info from alsa device file directly, as
                                it tries with /dev/video. But I never
                                >>>> tried this way, so I
                                can be totally wrong!<br>
                              </blockquote>
                              -------------------------------<br>
                              <br>
                              Instead of 50i (pal interlaced fields), I
                              try 50 fps (progressive) that at least is
                              a pal frequence.<br>
                              <br>
                              And yes, it seems from the output that
                              ffmpeg uses mpeg1video as default output
                              codec.<br>
                              <br>
                              Furter I try to combine the current line<br>
                              <blockquote>ffmpeg -hide_banner -f v4l2
                                -input_format yuyv422 -video_size
                                720x576 -framerate 25 -t 20 -i
                                /dev/video2 out-720x576_ms2130.mpeg<br>
                              </blockquote>
                              <br>
                              with and utilize the syntax developed 2021
                              for "Blu-ray compliant MPEG-2 SD video
                              with LPCM audio"<br>
                              <blockquote>ffmpeg -i dv28.dv -c:v
                                mpeg2video -refs 1 -bf 2 -b:v 25M
                                -maxrate 25M -minrate 25M -bufsize 45M
                                -muxrate 45M -dc 10 -c:a pcm_s16be -f
                                vob dv28.mpg <br>
                              </blockquote>
                              and for the current ongoing "DVD compliant
                              MPEG-2 Video and PCM Audio"<br>
                              <blockquote>ffmpeg -hide_banner -i dv01.dv
                                -c:v mpeg2video -refs 1 -bf 2 -b:v 8M
                                -maxrate 8M -minrate 8M -bufsize 20M
                                -muxrate 11M -dc 10 -c:a pcm_dvd -f vob
                                -flags +ilme+ildct dv01.mpg<br>
                              </blockquote>
                              to first<br>
                              <blockquote>ffmpeg -hide_banner -f v4l2
                                -input_format yuyv422 -video_size
                                720x576 -framerate 50 -c:v mpeg2video
                                -refs 1 -bf 2 -b:v 8M -maxrate 8M
                                -minrate 8M -bufsize 20M -muxrate 11M
                                -dc 10 -c:a pcm_dvd -f vob -t 20 -i
                                /dev/video2 720x576_50p_ms2130.mpg <br>
                                Option b:v (video bitrate (please use
                                -b:v)) cannot be applied to input url
                                /dev/video2 -- you are trying to apply
                                an input option to an output file or
                                vice versa. Move this option before the
                                file it belongs to.<br>
                                Error parsing options for input file
                                /dev/video2.<br>
                                Error opening input files: Invalid
                                argument<br>
                              </blockquote>
                              <br>
                              and next revised with no output. That is I
                              need help to debug the syntax error: <br>
                              <blockquote>ffmpeg -hide_banner -f v4l2
                                -input_format yuyv422 -video_size
                                720x576 -framerate 50 -i /dev/video2
                                -c:v mpeg2video -refs 1 -bf 2 -b:v 8M
                                -maxrate 8M -minrate 8M -bufsize 20M
                                -muxrate 11M -dc 10 -c:a pcm_dvd -f vob
                                -t 20 720x576_50p_ms2130.mpg<br>
                                [video4linux2,v4l2 @ 0x55db770ef9c0]
                                Dequeued v4l2 buffer contains corrupted
                                data (0 bytes).<br>
                                Input #0, video4linux2,v4l2, from
                                '/dev/video2':<br>
                                  Duration: N/A, start: 0.000000,
                                bitrate: 331776 kb/s<br>
                                  Stream #0:0: Video: rawvideo (YUY2 /
                                0x32595559), yuyv422, 720x576, 331776
                                kb/s, 50 fps, 50 tbr, 1000k tbn<br>
                                Stream mapping:<br>
                                  Stream #0:0 -> #0:0 (rawvideo
                                (native) -> mpeg2video (native))<br>
                                Press [q] to stop, [?] for help<br>
                                [video4linux2,v4l2 @ 0x55db770ef9c0]
                                Dequeued v4l2 buffer contains corrupted
                                data (0 bytes).<br>
                                    Last message repeated 30 times<br>
                                [mpeg2video @ 0x55db77114f00] Warning
                                vbv_delay will be set to 0xFFFF (=VBR)
                                as the specified vbv buffer is too large
                                for the given bitrate!<br>
                                Output #0, vob, to
                                '720x576_50p_ms2130.mpg':<br>
                                  Metadata:<br>
                                    encoder         : Lavf59.27.100<br>
                                  Stream #0:0: Video: mpeg2video
                                (4:2:2), yuv422p(tv, progressive),
                                720x576, q=2-31, 8000 kb/s, 50 fps, 90k
                                tbn<br>
                                    Metadata:<br>
                                      encoder         : Lavc59.37.100
                                mpeg2video<br>
                                    Side data:<br>
                                      cpb: bitrate max/min/avg:
                                8000000/8000000/8000000 buffer size:
                                20000000 vbv_delay: N/A<br>
                                frame=    0 fps=0.0 q=0.0 Lsize=      
                                0kB time=00:00:00.00 bitrate=N/A
                                speed=   0x    <br>
                                video:0kB audio:0kB subtitle:0kB other
                                streams:0kB global headers:0kB muxing
                                overhead: unknown<br>
                                Output file is empty, nothing was
                                encoded (check -ss / -t / -frames
                                parameters if used)<br>
                              </blockquote>
                            </div>
                          </blockquote>
                        </div>
                      </div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto">well, I think framerate still 25
                        for 50i stream ....</div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto">can you re-check last line with
                        framerate parameter removed or changed back to
                        25?</div>
                      <div dir="auto"><br>
                      </div>
                    </div>
                  </blockquote>
                  <br>
                  Ok, as this old post by my mistake already has been
                  forwarded to the list and replied, I will follow it up
                  later today, but need to rig rig up my camcorder and
                  devices <br>
                </blockquote>
                <br>
                Finally ready, I had to recall a lot since 2023.<br>
                <br>
                ls /dev/video*<br>
                /dev/video0  /dev/video1  /dev/video2  /dev/video3<br>
                <br>
                <br>
                for i in /dev/video*; do echo "$i"; udevadm info
                --query=all --attribute-walk --name=$i | grep -E "name";
                done<br>
                /dev/video0<br>
                    ATTR{name}=="USB3.0 UHD: USB3.0 UHD"<br>
                /dev/video1<br>
                    ATTR{name}=="USB3.0 UHD: USB3.0 UHD"<br>
                /dev/video2<br>
                    ATTR{name}=="USB 2.0 Camera: HD 720P Webcam"<br>
                /dev/video3<br>
                    ATTR{name}=="USB 2.0 Camera: HD 720P Webcam"<br>
                <br>
                <br>
                v4l2-ctl --list-devices<br>
                USB 2.0 Camera: HD 720P Webcam (usb-0000:00:14.0-11.2):<br>
                    /dev/video2<br>
                    /dev/video3<br>
                    /dev/media1<br>
                <br>
                USB3.0 UHD: USB3.0 UHD (usb-0000:00:14.0-3):<br>
                    /dev/video0<br>
                    /dev/video1<br>
                    /dev/media0<br>
                <br>
                As seen the HDMI-USB3 capture card + the S-Video/HDMI
                converter (with the analog S-video camcorder) is now on
                /dev/video0<br>
                while the USB2 webcam is on /dev/video2<br>
              </div>
            </blockquote>
          </div>
        </div>
        <div dir="auto"><br>
        </div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">but what is on video1 ?</div>
      </div>
    </blockquote>
    <br>
    Nothing as far as I can see(?). It seems both camera devices
    allocate or are associated with three devices each.<br>
    <br>
    <blockquote type="cite"
cite="mid:CA+rFky7jYdA-VAGmT6aT3_kwK-OWr5Hx8hA2QxaVzirUx_5mtA@mail.gmail.com">
      <div dir="auto">
        <div dir="auto"><br>
        </div>
        <div dir="auto">it seems that whole thing fail at</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">Dequeued v4l2 buffer contains corrupted data (0
          bytes).</div>
      </div>
    </blockquote>
    <br>
    I seems to happend when and after using unsupported fps <br>
    <br>
    <blockquote type="cite"
cite="mid:CA+rFky7jYdA-VAGmT6aT3_kwK-OWr5Hx8hA2QxaVzirUx_5mtA@mail.gmail.com">
      <div dir="auto">
        <div dir="auto">Does anything else (guvcview, vlc ..) process
          video stream this usb3 UHD device?</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">mplayer tv:// -demuxer tv ?</div>
      </div>
    </blockquote>
    <br>
    Not that I use, but have not haven't found a way to verify it.<br>
    <br>
    However, I have recalled and found out more with progress. <br>
    <br>
    The most important it seems required to reboot the machine with the
    camcorder ON (video signal) on beforehand, before ffmpeg get the
    video input.<br>
    <br>
    Reboot also seems required to clean up v4L2 buffer after using
    unsupported fps ffplay or ffmpeg cause the<br>
    "Dequeued v4l2 buffer contains corrupted data (0 bytes)." <br>
    Hopefully there are a v4L command to easier cleanup the latter?<br>
    <br>
    Beside the already listed Video4Linux devices, there are also<br>
    <br>
    cat /proc/asound/cards<br>
    <blockquote> 0 [PCH_1          ]: HDA-Intel - HDA Intel PCH<br>
                            HDA Intel PCH at 0x4200910000 irq 168<br>
       1 [PCH            ]: HDA-Intel - HDA Intel PCH<br>
                            HDA Intel PCH at 0x41300000 irq 169<br>
       2 [UHD            ]: USB-Audio - USB3.0 UHD<br>
                            MACROSILICON USB3.0 UHD at
      usb-0000:00:14.0-3, super speed<br>
       3 [Camera         ]: USB-Audio - USB 2.0 Camera<br>
                            Sonix Technology Co., Ltd. USB 2.0 Camera at
      usb-0000:00:14.0-11.2, high speed<br>
    </blockquote>
    <br>
    However, so far ffmpeg has yet to find any audio streams via v4l2 as
    seen below.<br>
    S-vido as well as audio L/R cables are connected between the
    camcorder out and A/D converter IN.<br>
    Maybe additional configuration is required (I didn't think the
    separate sound card (Behringer U-Phono should be necessary) <br>
    ----------<br>
    <br>
    To list the v4l2 device capabilities;<br>
    <br>
    v4l2-ctl -d /dev/video0 --list-formats-ext<br>
    <blockquote>ioctl: VIDIOC_ENUM_FMT<br>
          Type: Video Capture<br>
      <br>
          [0]: 'YUYV' (YUYV 4:2:2)<br>
              Size: Discrete 1920x1080<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 1600x1200<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 1360x768<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 1280x1024<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 1280x960<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 1280x720<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 1024x768<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 800x600<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 720x576<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 720x480<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
              Size: Discrete 640x480<br>
                  Interval: Discrete 0.017s (60.000 fps)<br>
                  Interval: Discrete 0.020s (50.000 fps)<br>
                  Interval: Discrete 0.033s (30.000 fps)<br>
                  Interval: Discrete 0.050s (20.000 fps)<br>
                  Interval: Discrete 0.100s (10.000 fps)<br>
    </blockquote>
               <br>
    That is supported 10-20-30-50-60 fps for all sizes, not 25 fps!<br>
    -------------<br>
    <br>
    Try the same test for /dev/video1<br>
    <br>
    v4l2-ctl -d /dev/video1 --list-formats-ext<br>
    <blockquote>ioctl: VIDIOC_ENUM_FMT<br>
    </blockquote>
    ===========<br>
    <br>
    ffmpeg listed available formats (supported pixel formats, video
    formats, and frame sizes) for a particular input device: <br>
    <br>
    ffmpeg -hide_banner -f v4l2 -list_formats all -i /dev/video0<br>
    <br>
    [video4linux2,v4l2 @ 0x55a384b214c0] Raw       :     yuyv422
    :           YUYV 4:2:2 : 1920x1080 1600x1200 1360x768 1280x1024
    1280x960 1280x720 1024x768 800x600 720x576 720x480 640x480<br>
    [in#0 @ 0x55a384b21200] Error opening input: Immediate exit
    requested<br>
    Error opening input file /dev/video0.<br>
    <br>
    And similar test for /dev/video1<br>
    <br>
    ffmpeg -hide_banner -f v4l2 -list_formats all -i /dev/video1<br>
    <br>
    [video4linux2,v4l2 @ 0x557e1a5164c0] ioctl(VIDIOC_G_INPUT):
    Inappropriate ioctl for device<br>
    [in#0 @ 0x557e1a516200] Error opening input: Inappropriate ioctl for
    device<br>
    Error opening input file /dev/video1.<br>
    Error opening input files: Inappropriate ioctl for device<br>
    <br>
    ===============<br>
    <br>
    With supported 50 fps specified, ffplay playback looks ok visually:<br>
    <br>
    ffplay -hide_banner -f v4l2 -input_format yuyv422 -video_size
    720x576 -framerate 50 /dev/video0<br>
    <blockquote>Input #0, video4linux2,v4l2, from '/dev/video0':B sq=   
      0B <br>
        Duration: N/A, start: 311.577886, bitrate: 331776 kb/s<br>
        Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422,
      720x576, 331776 kb/s, 50 fps, 50 tbr, 1000k tbn<br>
      ^Cterje@localhost:/Videoklipp/HDMI-USB3_Capture>  sq=    0B <br>
    </blockquote>
    ===============<br>
    <br>
    Capture DVD compatible MPG video (no audio found) with supported 50
    fps progressive video.<br>
    No Audio stream!?<br>
    <br>
    ffmpeg -hide_banner -f v4l2 -input_format yuyv422 -video_size
    720x576 -framerate 50 -i /dev/video0 -c:v mpeg2video -refs 1 -bf 2
    -b:v 8M -maxrate 8M -minrate 8M -bufsize 20M -muxrate 11M -dc 10
    -c:a pcm_dvd -f vob -t 20 720x576_50fps_ms2130.mpg<br>
    <blockquote>Input #0, video4linux2,v4l2, from '/dev/video0':<br>
        Duration: N/A, start: 323.195348, bitrate: 331776 kb/s<br>
        Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422,
      720x576, 331776 kb/s, 50 fps, 50 tbr, 1000k tbn<br>
      Stream mapping:<br>
        Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg2video
      (native))<br>
      Press [q] to stop, [?] for help<br>
      [mpeg2video @ 0x55e390580200] Warning vbv_delay will be set to
      0xFFFF (=VBR) as the specified vbv buffer is too large for the
      given bitrate!<br>
      Output #0, vob, to '720x576_50fps_ms2130.mpg':<br>
        Metadata:<br>
          encoder         : Lavf61.7.100<br>
        Stream #0:0: Video: mpeg2video (4:2:2), yuv422p(tv,
      progressive), 720x576, q=2-31, 8000 kb/s, 50 fps, 90k tbn<br>
            Metadata:<br>
              encoder         : Lavc61.19.101 mpeg2video<br>
            Side data:<br>
              cpb: bitrate max/min/avg: 8000000/8000000/8000000 buffer
      size: 20000000 vbv_delay: N/A<br>
      [out#0/vob @ 0x55e390581e00] video:18921KiB audio:0KiB
      subtitle:0KiB other streams:0KiB global headers:0KiB muxing
      overhead: 1.242550%<br>
      frame= 1000 fps= 50 q=2.5 Lsize=   19156KiB time=00:00:19.98
      bitrate=7854.2kbits/s speed=0.998x    <br>
    </blockquote>
    <br>
    Stopped automatic ! Why?<br>
    <br>
    ----------------<br>
    <br>
    du -sh *<br>
    <blockquote>19M    720x576_50fps_ms2130.mpg<br>
    </blockquote>
    <br>
    ffprobe -hide_banner 720x576_50fps_ms2130.mpg<br>
    <blockquote>Input #0, mpeg, from '720x576_50fps_ms2130.mpg':<br>
        Duration: 00:00:20.00, start: 0.520000, bitrate: 7846 kb/s<br>
        Stream #0:0[0x1e0]: Video: mpeg2video (4:2:2), yuv422p(tv,
      progressive), 720x576 [SAR 1:1 DAR 5:4], 50 fps, 50 tbr, 90k tbn<br>
            Side data:<br>
              cpb: bitrate max/min/avg: 8000000/0/0 buffer size:
      20004864 vbv_delay: N/A<br>
    </blockquote>
    <br>
    The video file playback looks ok with correct SD aspect ratio using
    ffplay and VLC, though "1080P" is printer near the top-right corner.<br>
    <br>
    ============================<br>
    <br>
    <br>
    <br>
    <br>
    <br>
  </body>
</html>