<!DOCTYPE html>
<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    In case this also may be something for a CinGG "dv50.mov" preset:<br>
    <br>
    Long time ago, Renomath "Video with Linux, Workflow Resources" by
    Eric Olson, catched my interest (then unobtainable) DV50 when I read
    <br>
    <br>
    <a href="https://renomath.org/video/linux/hi8/">Hi8 Tape to DVD
      Video Workflow with Linux</a><br>
    <i>If you have a faster system you may want to consider capturing
      using the DV50 codec using a 4:2:2 color space. In order to do
      this, libng from the xawtv project needs to be patched to
      recognize the dv50 codec. Using dv50 as the capture codec really
      allows the Linux solution to surpass a stand-along DVD recorder. <br>
      It is also possible to capture the video using ffmpeg or lavrec. <br>
    </i><br>
    <a href="https://renomath.org/video/linux/cinelerra/">Cinelerra
      Version 4.x yuv4mpeg Patch</a><br>
    <i>Patch for dnxhd and dv50 Quicktime Input, which add dnxhd and
      dv50 input to Cinelerra. The advantage of dnxhd and dv50 over
      mjpeg is native support of 1080i, 4:2:2 chroma and greater
      encoding quality due to more flexible quantization and compression
      methods. <br>
      -------<br>
      <br>
    </i>While ffv1.mkv often is suggested as preservation master file
    for migrating analog VHS materials, a mezzanin file has also been
    suggested using <br>
    File Wrapper: QuickTime (.mov), Video Stream: DV50, Audio Stream:
    48Khz/16-bit PCM<br>
    <a class="moz-txt-link-freetext"
      href="https://memoriav.ch/wp-content/uploads/2014/07/VARRFP.pdf">https://memoriav.ch/wp-content/uploads/2014/07/VARRFP.pdf</a><br>
    <br>
    ----<br>
    <br>
    FFmpeg documentation has little documentation about dv50, which
    seemingly is less used:<br>
    <a class="moz-txt-link-freetext" href="https://ffmpeg.org/ffmpeg.html#Main-options">https://ffmpeg.org/ffmpeg.html#Main-options</a><br>
    <a class="moz-txt-link-freetext" href="https://ffmpeg.org/pipermail/ffmpeg-user/2023-June/056548.html">https://ffmpeg.org/pipermail/ffmpeg-user/2023-June/056548.html</a><br>
    <br>
        -target type (output)<br>
    <br>
    Specify target file type (vcd, svcd, dvd, dv, <b>dv50</b>). type
    may be prefixed with <b>pal-</b>, ntsc- or film- to use the
    corresponding standard. All the format options (bitrate, codecs,
    buffer sizes) are then set automatically. <br>
    The dv50 target is identical to the dv target except that the pixel
    format set is <b>yuv422p</b> for all three standards.<br>
    ----------<br>
    <br>
    I have tried to experiment with dv50 encoding via my ms2130 capture
    and v4l2 driver. First with just "c:v dvvideo -target dv50" which
    resulted in "25fps" and 50Mbps, but this caused jumping video
    images. I expect that issue was due to a unsupported frame rate. <br>
    <br>
    Some AI search later told me that DVCPRO50 (aka DV50) possibly
    optional could shoot in 50fps, so I tried to add "-r 50" in the
    output, which resulted in twice as big output file with 50fps as
    follows, but steady video images.<br>
    <br>
    ffmpeg -hide_banner -f v4l2 -i /dev/video0 -f alsa -ch_layout stereo
    -i hw:CARD=UHD,DEV=0 -codec:v dvvideo -b:v 50M -minrate 50M -maxrate
    50M -target pal-dv50 -r 50 -c:a copy -t 10 -f mov DV50p+pcm.mov<br>
    <br>
    Input #0, video4linux2,v4l2, from '/dev/video0':<br>
      Duration: N/A, start: 174.116728, bitrate: 1990656 kb/s<br>
      Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422,
    1920x1080, 1990656 kb/s, 60 fps, 60 tbr, 1000k tbn<br>
    Input #1, alsa, from 'hw:CARD=UHD,DEV=0':<br>
      Duration: N/A, start: 1749543254.028464, bitrate: 1536 kb/s<br>
      Stream #1:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s<br>
    [vost#0:0/dvvideo @ 0x55ecffd02f80] Multiple -r options specified
    for stream 0, only the last option '-r 50' will be used.<br>
    Stream mapping:<br>
      Stream #0:0 -> #0:0 (rawvideo (native) -> dvvideo (native))<br>
      Stream #1:0 -> #0:1 (copy)<br>
    Press [q] to stop, [?] for help<br>
    [dvvideo @ 0x7f5c30706300] Only top-left chroma location is
    supported in DV, input value is: unspecified<br>
    ......<br>
    [dvvideo @ 0x55ecffce9440] Only top-left chroma location is
    supported in DV, input value is: unspecified<br>
    <br>
    Output #0, mov, to 'DV50p+pcm.mov':<br>
      Metadata:<br>
        encoder         : Lavf61.7.100<br>
      Stream #0:0: Video: dvvideo (dvcp / 0x70637664), yuv422p(tv,
    progressive), 720x576, q=2-31, 50000 kb/s, 50 fps, 12800 tbn<br>
          Metadata:<br>
            encoder         : Lavc61.19.101 dvvideo<br>
      Stream #0:1: Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz,
    stereo, s16, 1536 kb/s<br>
    [out#0/mov @ 0x55ecffd02700] video:140625KiB audio:1875KiB
    subtitle:0KiB other streams:0KiB global headers:0KiB muxing
    overhead: 0.026991%<br>
    <br>
    frame=  500 fps= 50 q=-0.0 Lsize=  142539KiB time=00:00:10.00
    bitrate=116767.7kbits/s dup=0 drop=98 speed=0.998x   <br>
    <br>
    ------------<br>
    <br>
    du -sh DV*<br>
    69M    DV50i.mov<br>
    138M    DV50p.mov<br>
    140M    DV50p+pcm.mov<br>
    ---------<br>
    <br>
    ffprobe -hide_banner DV50p+pcm.mov<br>
    <br>
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'DV50p+pcm.mov':<br>
      Metadata:<br>
        major_brand     : qt  <br>
        minor_version   : 512<br>
        compatible_brands: qt  <br>
        encoder         : Lavf61.7.100<br>
      Duration: 00:00:10.00, start: 0.000000, bitrate: 116767 kb/s<br>
      Stream #0:0[0x1]: Video: dvvideo (dv5p / 0x70357664),
    yuv422p(progressive), 720x576 [SAR 16:15 DAR 4:3], 57600 kb/s, 50
    fps, 50 tbr, 12800 tbn (default)<br>
          Metadata:<br>
            handler_name    : VideoHandler<br>
            vendor_id       : FFMP<br>
            encoder         : Lavc61.19.101 dvvideo<br>
      Stream #0:1[0x2]: Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz,
    stereo, s16, 1536 kb/s (default)<br>
          Metadata:<br>
            handler_name    : SoundHandler<br>
            vendor_id       : [0][0][0][0]<br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
     <br>
    <br>
    <br>
  </body>
</html>