<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Oct 25, 2024 at 5:05 PM Terje J. Hanssen <<a href="mailto:terjejhanssen@gmail.com">terjejhanssen@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><u></u>

  
    
  
  <div>
    <br>
    <br>
    <br>
    <div>Den 25.10.2024 01:55, skrev Terje J.
      Hanssen:<br>
    </div>
    <blockquote type="cite">
      
      <br>
      <br>
      <br>
      <div>Den 25.10.2024 00:43, skrev Andrew
        Randrianasulu:<br>
      </div>
      <blockquote type="cite">
        
      </blockquote>
    </blockquote>
    <br>
    snip ...................<br>
    <blockquote type="cite">
      <blockquote type="cite">
        <div dir="auto">
          <div>
            <div class="gmail_quote">
              <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
                <div>
                  <blockquote type="cite">
                    <div dir="auto">
                      <div>
                        <div class="gmail_quote">
                          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
                            <div><font face="Courier New, Courier, monospace">
                                <br>
                                -----------------------<br>
                                <br>
                                localhost:/Cin # bin/cin<br>
                                Cinelerra Infinity - built: Oct 24 2024
                                16:26:16<br>
                                <br>
                                Tested with similar results as my
                                previous ffmpeg_71 build:<br>
                                <br>
                                SD-DV to av1_qsv, hevc_qsv and h264_qsv
                                nv12 works<br>
                                HDV to hevc_qsv works with nv12, p010le
                                and yuv422 works<br>
                                HDV to av1_qsv and to h264_qsv don't
                                work<br>
                              </font></div>
                          </blockquote>
                        </div>
                      </div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto">does av1_vaapi work for HDV case?</div>
                    </div>
                  </blockquote>
                  <br>
                  <br>
                  Yes, I test-rendered HDV (hdv09_04) to hevc_vaapi,
                  av1_vaapi, h264_vaapi, all i .mp4 below<br>
                  Also FHD (hd01) to av1_vaapi.mp4 worked, see ffprobe
                  below<br>
                  <br>
                  Testing .webm type breaks with the following output:<br>
                  <blockquote><font face="Courier New, Courier, monospace">[av1_vaapi
                      @ 0x7f5f74122a80] Driver does not support QVBR RC
                      mode (supported modes: CQP, CBR, VBR, ICQ).</font><br>
                    <font face="Courier New, Courier, monospace">FFMPEG::open_encoder 
                      err: Invalid argument</font><br>
                    <font face="Courier New, Courier, monospace">int
                      FFMPEG::open_encoder(const char*, const char*):</font><br>
                    <font face="Courier New, Courier, monospace">open
                      failed
                      av1_vaapi:/Videoklipp/VAAPI/hdv09_04_av1_vaapi.webm</font></blockquote>
                </div>
              </blockquote>
            </div>
          </div>
          <div dir="auto"><br>
          </div>
          <div dir="auto">hm, you probably need to tweak this profile
            for your driver then ...</div>
        </div>
      </blockquote>
      <br>
      I got this tweak to work for hdv09_04.m2t rendering to
      av1_vaapi.webm <br>
      <blockquote><font face="Courier New, Courier, monospace">cin_hw_dev=vaapi</font><br>
        <font face="Courier New, Courier, monospace">g=30</font><br>
        <font face="Courier New, Courier, monospace">profile=main</font><br>
        <font face="Courier New, Courier, monospace">rc_mode=CQP<br>
          <br>
        </font></blockquote>
      <font face="Courier New, Courier, monospace">Render::render_single:
        Session finished.<br>
        ** rendered 5972 frames in 27.408 secs, 217.893 fps<br>
        FFMPEG::open_decoder: some stream times estimated:
        /Videoklipp/VAAPI/hdv09_04_av1_vaapi.webm<br>
        FFMPEG::open_decoder: some stream times estimated:
        /Videoklipp/VAAPI/hdv09_04_av1_vaapi.webm<br>
        audio0 pad 64 -143 (207)<br>
        audio0 pad 0 -143 (143)<br>
        audio0 pad 0 -15 (15)<br>
        <br>
        <br>
        while<br>
        <br>
        [av1_vaapi @ 0x7f8000317a40] Bitrate must be set for VBR RC
        mode.<br>
        FFMPEG::open_encoder  err: Invalid argument<br>
        int FFMPEG::open_encoder(const char*, const char*):<br>
        open failed av1_vaapi:/Videoklipp/VAAPI/hdv09_04_av1_vaapi.webm<br>
        <br>
      </font><br>
    </blockquote>
    <br>
    I think this build uses ffmpeg 7.0 embedded, but is it a way to very
    which ffmpeg version in use via Cingg?<br></div></blockquote><div><br></div><div>Yes, look at line</div><div><br></div><div>Libav version: Lavc61.3.100</div><div><br></div><div>61.19 -> 7.1</div><div>61.3 -> 7.0</div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
    <br>
    As already tested as working on my own build Cingg based on system
    ffmpeg 7.1, <br>
<a href="https://lists.cinelerra-gg.org/pipermail/cin/2024-October/008932.html" target="_blank">https://lists.cinelerra-gg.org/pipermail/cin/2024-October/008932.html</a><br>
    <br>
    this also shows to work on this 7.0(?) build:<br>
    hdv.m2t and hd.mov (prores 422 hq) rendering with to av1_vaapi.webm
    on Arc A750 works with<br>
    <br>
    vprofile=high or vprofile=professional<br>
    <br>
    but 10bit yuv422 are downscaled to 8bit yuv420 in the output, at
    least with this profile and/or without other parameters set<br></div></blockquote><div><br></div><div>yeah, seems to be limitation of current code in cingg.</div><div><br></div><div>in cinelerra/ffmpeg.C there is function</div><div><br></div><div>AVHWDeviceType FFVideoStream::encode_hw_activate()</div><div><br></div><div>frames_ctx->sw_format = AV_PIX_FMT_NV12;</div><div><br></div><div>if you change  AV_PIX_FMT_NV12 with  AV_PIX_FMT_P010</div><div><br></div><div>does it  encode 10 bit ?<br></div><div><br></div><div>You said av1_qsv  at least can be set to p012 ? Then, this is advantage (when it works)<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
    <br>
    <font face="Courier New, Courier, monospace"><br>
      Render::render_single: Session finished.<br>
      ** rendered 5972 frames in 28.582 secs, 208.943 fps<br>
      FFMPEG::open_decoder: some stream times estimated:
      /Videoklipp/VAAPI/hdv09_04_av1_vaapi.webm<br>
      <br>
      Render::render_single: Session finished.<br>
      ** rendered 1781 frames in 13.666 secs, 130.323 fps<br>
      FFMPEG::open_decoder: some stream times estimated:
      /Videoklipp/VAAPI/hd01_av1_vaapi.webm<br>
      <br>
      /Videoklipp/VAAPI # ls -lht hdv* hd*<br>
      -rw-r--r-- 1 root  root  567M Oct 25 15:30 hd01_av1_vaapi.webm<br>
      -rw-r--r-- 1 root  root  1.5G Oct 25 15:11 hdv09_04_av1_vaapi.webm</font><br>
     <br>
    <font face="Courier New, Courier, monospace"><br>
      ffprobe -hide_banner hd01_av1_vaapi.webm<br>
      Input #0, matroska,webm, from 'hd01_av1_vaapi.webm':<br>
        Metadata:<br>
          ENCODER         : Lavf61.1.100<br>
        Duration: 00:01:11.28, start: 0.000000, bitrate: 67255 kb/s<br>
        Stream #0:0: Video: av1 (libdav1d) (Main), yuv420p(tv,
      bt709/unknown/unknown), 1920x1080, SAR 1:1 DAR 16:9, 25 fps, 25
      tbr, 1k tbn<br>
            Metadata:<br>
              DURATION        : 00:01:11.243000000<br>
        Stream #0:1: Audio: vorbis, 48000 Hz, 16 channels, fltp<br>
            Metadata:<br>
              DURATION        : 00:01:11.283000000</font><br>
    <br>
    <br>
    <blockquote type="cite"> <br>
      <br>
      <blockquote type="cite">
        <div dir="auto">
          <div dir="auto"><br>
          </div>
          <div dir="auto">so, vaapi works in more cases than qsv, it
            seems?</div>
        </div>
      </blockquote>
    </blockquote>
    <br>
    So far, yes<br>
    <br>
    <blockquote type="cite">
      <blockquote type="cite">
        <div dir="auto">
          <div dir="auto"><br>
          </div>
          <div dir="auto"><br>
          </div>
          <div dir="auto">
            <div class="gmail_quote">
              <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
                <div>
                  <blockquote><br>
                  </blockquote>
                  <br>
                  <font face="Courier New, Courier, monospace">terje@localhost:/Videoklipp/VAAPI>
                    ls -lt hd*<br>
                    -rw-r--r-- 1 root  root  349812400 okt.  24 20:54
                    hdv09_04_hevc_vaapi.mp4<br>
                    -rw-r--r-- 1 root  root  112467398 okt.  24 20:42
                    hd01_av1_vaapi.mp4<br>
                    -rw-r--r-- 1 root  root  606029742 okt.  24 20:35
                    hdv09_04_h264_vaapi.mp4<br>
                    -rw-r--r-- 1 root  root  378664255 okt.  24 20:28
                    hdv09_04_av1_vaapi.mp4<br>
                  </font><br>
                  <br>
                  <font face="Courier New, Courier, monospace">ffprobe
                    -hide_banner hdv09_04_hevc_vaapi.mp4<br>
                    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
                    'hdv09_04_hevc_vaapi.mp4':<br>
                      Metadata:<br>
                        major_brand     : isom<br>
                        minor_version   : 512<br>
                        compatible_brands: isomiso2mp41<br>
                        encoder         : Lavf61.7.100<br>
                      Duration: 00:03:58.88, start: 0.000000, bitrate:
                    11715 kb/s<br>
                      Stream #0:0[0x1](und): Video: hevc (Main) (hev1 /
                    0x31766568), yuv420p(tv, bt470bg/unknown/unknown,
                    top coded first (swapped)), 1440x1080 [SAR 4:3 DAR
                    16:9], 11580 kb/s, 25 fps, 25 tbr, 12800 tbn
                    (default)<br>
                          Metadata:<br>
                            handler_name    : VideoHandler<br>
                            vendor_id       : [0][0][0][0]<br>
                      Stream #0:1[0x2](und): Audio: aac (LC) (mp4a /
                    0x6134706D), 48000 Hz, stereo, fltp, 129 kb/s
                    (default)<br>
                          Metadata:<br>
                            handler_name    : SoundHandler<br>
                            vendor_id       : [0][0][0][0]<br>
                    <br>
                    <br>
                    ffprobe -hide_banner hd01_av1_vaapi.mp4<br>
                    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
                    'hd01_av1_vaapi.mp4':<br>
                      Metadata:<br>
                        major_brand     : isom<br>
                        minor_version   : 512<br>
                        compatible_brands: isomav01iso2mp41<br>
                        encoder         : Lavf61.1.100<br>
                      Duration: 00:01:11.28, start: 0.000000, bitrate:
                    12622 kb/s<br>
                      Stream #0:0[0x1](und): Video: av1 (libdav1d)
                    (Main) (av01 / 0x31307661), yuv420p(tv,
                    bt470bg/unknown/unknown, top coded first (swapped)),
                    1920x1080, 12246 kb/s, SAR 1:1 DAR 16:9, 25 fps, 25
                    tbr, 12800 tbn (default)<br>
                          Metadata:<br>
                            handler_name    : VideoHandler<br>
                            vendor_id       : [0][0][0][0]<br>
                      Stream #0:1[0x2](und): Audio: aac (LC) (mp4a /
                    0x6134706D), 48000 Hz, 16 channels, fltp, 378 kb/s
                    (default)<br>
                          Metadata:<br>
                            handler_name    : SoundHandler<br>
                            vendor_id       : [0][0][0][0]<br>
                    <br>
                  </font><br>
                  <blockquote type="cite">
                    <div dir="auto">
                      <div dir="auto">can you add auto-scale filter to
                        HDV cases so it will be full HD and not
                        1440*1080 ? or another similar rescaling ....</div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto">again, thanks for testing.</div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto">But as with any experimentation we
                        get some new questions instead of pure answers
                        ....</div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto">
                        <div class="gmail_quote">
                          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
                            <div><font face="Courier New, Courier, monospace">
                                <br>
                                <br>
                                ===================================<br>
                                <br>
                                In separate posts:<br>
                                Can you possibly setup guideline detail
                                procedure on how to build an appimage
                                and a rpm package of this build,<br>
                                to possible install and test it on my
                                legacy Skylake and Kabylake platforms?<br>
                                <br>
                                ===================================<br>
                              </font></div>
                          </blockquote>
                        </div>
                      </div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto">I think basic procedure at</div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto"><a href="https://cinelerra-gg.org/download/CinelerraGG_Manual/Build_CinGG_AppImage_from_s.html" rel="noreferrer noreferrer noreferrer" target="_blank">https://cinelerra-gg.org/download/CinelerraGG_Manual/Build_CinGG_AppImage_from_s.html</a><br>
                      </div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto">starting from</div>
                      <div dir="auto"><br>
                      </div>
                      <div dir="auto">2- The script bld_appimage.sh uses
                        a platform specific version of appimagetool so
                        that it can create appimages for x86_64, i686,
                        aarch64, or armv7l architecture. We need to add
                        appimagetool-(platform).AppImage to the /{path
                        to cinelerra- 5.1}/tools directory, or somewhere
                        in your path. You can download the tool for your
                        system (e.g. appimagetool-x86_64.AppImage) from
                        git: <small><kbd><a href="https://github.com/AppImage/AppImageKit/releases" rel="noreferrer noreferrer" target="_blank">https://github.com/AppImage/AppImageKit/releases</a></kbd></small><br>
                      </div>
                      <div dir="auto"><small><br>
                        </small></div>
                      <div dir="auto"><small><br>
                        </small></div>
                      <div dir="auto"><small>for rpm build I think we
                          need to wait for this patch to land in git and
                          then become part of monthly src tarball.</small></div>
                      <div dir="auto"><small><br>
                        </small></div>
                      <div dir="auto"><small>Then you can edit .spec
                          file with soecifix date-based filename to
                          fetch and run</small></div>
                      <div dir="auto"><small><br>
                        </small></div>
                      <div dir="auto"><small><span style="font-size:15px">rpmbuild -bb ("build
                            binary") our_spec_file.spec</span><br>
                        </small></div>
                      <div dir="auto"><br>
                      </div>
                      <br>
                    </div>
                  </blockquote>
                </div>
              </blockquote>
            </div>
          </div>
        </div>
      </blockquote>
    </blockquote>
    snip ...........<br>
  </div>

</blockquote></div></div>