<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <br>
    <br>
    <br>
    <div class="moz-cite-prefix">Den 26.10.2024 18:31, skrev Terje J.
      Hanssen:<br>
    </div>
    <blockquote type="cite"
      cite="mid:2ea97a1b-e5f1-40bd-939e-40db0d571d8f@gmail.com">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <br>
      <br>
      <br>
      <div class="moz-cite-prefix">Den 26.10.2024 17:26, skrev Terje J.
        Hanssen:<br>
      </div>
      <blockquote type="cite"
        cite="mid:8c9bb242-269c-431c-912b-bef899b754de@gmail.com">
        <meta http-equiv="Content-Type"
          content="text/html; charset=UTF-8">
        <br>
        <br>
        <br>
        <div class="moz-cite-prefix">Den 26.10.2024 17:10, skrev Andrew
          Randrianasulu:<br>
        </div>
        <blockquote type="cite"
cite="mid:CA+rFky6cae+biZMUdh_8dkPYpapAW5OCtiNsgDxgbFPW9u+y4A@mail.gmail.com">
          <meta http-equiv="content-type"
            content="text/html; charset=UTF-8">
          <div dir="auto">
            <div><br>
              <br>
              <div class="gmail_quote">
                <div dir="ltr" class="gmail_attr">сб, 26 окт. 2024 г.,
                  17:39 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>
                    <br>
                    <br>
                    <div>Den 26.10.2024 02:12, skrev Andrew
                      Randrianasulu:<br>
                    </div>
                    <blockquote type="cite">
                      <div dir="auto">
                        <div><br>
                          <br>
                          <div class="gmail_quote">
                            <div dir="ltr" class="gmail_attr">сб, 26
                              окт. 2024 г., 03:06 Terje J. Hanssen via
                              Cin <<a
                                href="mailto:cin@lists.cinelerra-gg.org"
                                target="_blank" rel="noreferrer"
                                moz-do-not-send="true"
                                class="moz-txt-link-freetext">cin@lists.cinelerra-gg.org</a>>:<br>
                            </div>
                            <blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                              <div>   An overview over the system FFmpeg
                                7.1 supported QSV pixel formats and
                                profiles:<br>
                                <br>
                                <br>
                                <font
                                  face="Courier New, Courier, monospace">ffmpeg
                                  -hide_banner -encoders | grep qsv<br>
                                   V..... av1_qsv              AV1
                                  (Intel Quick Sync Video acceleration)
                                  (codec av1)<br>
                                   V..... h264_qsv             H.264 /
                                  AVC / MPEG-4 AVC / MPEG-4 part 10
                                  (Intel Quick Sync Video acceleration)
                                  (codec h264)<br>
                                   V..... hevc_qsv             HEVC
                                  (Intel Quick Sync Video acceleration)
                                  (codec hevc)<br>
                                   V..... mjpeg_qsv            MJPEG
                                  (Intel Quick Sync Video acceleration)
                                  (codec mjpeg)<br>
                                   V..... mpeg2_qsv            MPEG-2
                                  video (Intel Quick Sync Video
                                  acceleration) (codec mpeg2video)<br>
                                   V..... vp9_qsv              VP9 video
                                  (Intel Quick Sync Video acceleration)
                                  (codec vp9)<br>
                                  <br>
                                  <br>
                                  ffmpeg -hide_banner -h encoder=av1_qsv
                                  | egrep
                                  'Supported|profile|main|high|professional'<br>
                                      Supported hardware devices: qsv
                                  qsv qsv <br>
                                      Supported pixel formats: nv12
                                  p010le qsv<br>
                                    -profile          
                                  <int>        E..V....... (from 0
                                  to INT_MAX) (default unknown)<br>
                                       main            1           
                                  E..V.......<br>
                                  <br>
                                  <br>
                                  ffmpeg -hide_banner -h
                                  encoder=hevc_qsv | egrep
                                  'Supported|profile|main|high|professional'<br>
                                      Supported hardware devices: qsv
                                  qsv qsv <br>
                                      Supported pixel formats: nv12
                                  p010le p012le yuyv422 y210le qsv bgra
                                  x2rgb10le vuyx xv30le<br>
                                    -profile          
                                  <int>        E..V....... (from 0
                                  to INT_MAX) (default unknown)<br>
                                       main            1           
                                  E..V.......<br>
                                       main10          2           
                                  E..V.......<br>
                                       mainsp          3           
                                  E..V.......<br>
                                    -tier             
                                  <int>        E..V....... Set the
                                  encoding tier (only level >= 4 can
                                  support high tier) (from 0 to 256)
                                  (default high)<br>
                                       main            0           
                                  E..V.......<br>
                                       high            256         
                                  E..V.......<br>
                                  <br>
                                  <br>
                                  ffmpeg -hide_banner -h
                                  encoder=h264_qsv | egrep
                                  'Supported|profile|main|high|professional'<br>
                                      Supported hardware devices: qsv
                                  qsv qsv <br>
                                      Supported pixel formats: nv12 qsv<br>
                                    -profile          
                                  <int>        E..V....... (from 0
                                  to INT_MAX) (default unknown)<br>
                                       main            77          
                                  E..V.......<br>
                                       high            100         
                                  E..V.......<br>
                                </font></div>
                            </blockquote>
                          </div>
                        </div>
                        <div dir="auto"><br>
                        </div>
                        <div dir="auto"><br>
                        </div>
                        <div dir="auto">from this we can conclude
                          av1/hevc should have 10bit option  ...</div>
                        <div dir="auto"><br>
                        </div>
                        <div dir="auto">probably writing down numerical
                          values for profiles (high, main...) for each
                          codec is also good idea.</div>
                        <br>
                      </div>
                    </blockquote>
                    <br>
                    A reference and overview table for QSV capabilties
                    for each iGPU and dGPU generation is here<br>
                    <a
href="https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding"
                      target="_blank" rel="noreferrer"
                      moz-do-not-send="true"
                      class="moz-txt-link-freetext">https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding</a><br>
                    <br>
                    And finally, after much trying and failing, I was
                    able to prove that true 10bit 422 color depth
                    hevc_qsv encoding is possible with my system ffmpeg
                    7.1<br>
                    .<br>
                    While pixel format p010le results in "just" 10bit
                    yuv420p, the clue is to to use either (trying this
                    for av1_qsv, auto- switch to 8bit nv12):<br>
                    <blockquote><font
                        face="Courier New, Courier, monospace">-pix_fmt
                        y210le</font><br>
                      <font face="Courier New, Courier, monospace">or</font><br>
                      <font face="Courier New, Courier, monospace">-v
                        format=yuv422p010le<br>
                      </font></blockquote>
                  </div>
                </blockquote>
              </div>
            </div>
          </div>
        </blockquote>
      </blockquote>
      <font face="Courier New, Courier, monospace">typo, should be<br>
                -vf format=yuv422p10le<br>
        <br>
      </font>
      <blockquote type="cite"
        cite="mid:8c9bb242-269c-431c-912b-bef899b754de@gmail.com">
        <blockquote type="cite"
cite="mid:CA+rFky6cae+biZMUdh_8dkPYpapAW5OCtiNsgDxgbFPW9u+y4A@mail.gmail.com">
          <div dir="auto">
            <div>
              <div class="gmail_quote">
                <blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                  <div>
                    <blockquote><font
                        face="Courier New, Courier, monospace"> </font></blockquote>
                    <font face="Courier New, Courier, monospace">Code
                      example:<br>
                      <br>
                      ffmpeg -hide_banner -hwaccel_output_format qsv -i
                      cfhd01.mkv -c:v hevc_qsv -pix_fmt y210le
                      cfhd01_hevc_qsv_pxfmt_y210le.mp4<br>
                      <br>
                      Input file:<br>
                      <br>
                      ffprobe -hide_banner cfhd01.mkv<br>
                      Input #0, matroska,webm, from 'cfhd01.mkv':<br>
                        Metadata:<br>
                          ENCODER         : Lavf61.1.100<br>
                        Duration: 00:01:11.24, start: 0.000000, bitrate:
                      393480 kb/s<br>
                        Stream #0:0(eng): Video: cfhd (CFHD /
                      0x44484643), yuv422p10le(tv, bt709, top coded
                      first (swapped)), 1920x1080, SAR 1:1 DAR 16:9, 25
                      fps, 25 tbr, 1k tbn (default)<br>
                            Metadata:<br>
                              HANDLER_NAME    : Apple Video Media
                      Handler<br>
                              VENDOR_ID       : appl<br>
                              ENCODER         : Lavc61.3.100 cfhd<br>
                              DURATION        : 00:01:11.240000000<br>
                      <br>
                      Output file:<br>
                      <br>
                      ffprobe -hide_banner
                      cfhd01_hevc_qsv_pxfmt_y210le.mp4<br>
                      Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
                      'cfhd01_hevc_qsv_pxfmt_y210le.mp4':<br>
                        Metadata:<br>
                          major_brand     : isom<br>
                          minor_version   : 512<br>
                          compatible_brands: isomiso2mp41<br>
                          encoder         : Lavf61.7.100<br>
                        Duration: 00:01:11.24, start: 0.000000, bitrate:
                      31770 kb/s<br>
                        Stream #0:0[0x1](eng): Video: hevc (Rext) (hev1
                      / 0x31766568), yuv422p10le(tv, bt709,
                      progressive), 1920x1080 [SAR 1:1 DAR 16:9], 31767
                      kb/s, 25 fps, 25 tbr, 12800 tbn (default)<br>
                            Metadata:<br>
                              handler_name    : Apple Video Media
                      Handler<br>
                              vendor_id       : [0][0][0][0]<br>
                              encoder         : Lavc61.19.100 hevc_qsv<br>
                    </font></div>
                </blockquote>
              </div>
            </div>
            <div dir="auto"><br>
            </div>
            <div dir="auto"><br>
            </div>
            <div dir="auto">Good to know.</div>
            <div dir="auto"><br>
            </div>
            <div dir="auto">Hopefully if we on the right track with
              "just" 10bit yuv420 encoding we will find way to stuff
              more complex cases in there too ....</div>
            <div dir="auto"><br>
            </div>
            <div dir="auto"><br>
            </div>
            <div dir="auto">Does it work with vaapi encoder (system
              ffmpeg as cli application) too?</div>
          </div>
        </blockquote>
        <br>
        I am testing similar now with vaapi and will report on that
        thread soon.<br>
        The above i/o files and simple code line are video only, to
        avoid confusing from 16ch audio in the prores_hq.mov <br>
      </blockquote>
    </blockquote>
    <br>
    Regarding ffmpeg quality flags or parameters, I wonder if is an idea
    to standardized on "-global_quality" at least for qsv and VAAPI if
    possible?<br>
    Documentation is limited, though it looks like the range may be: 1
    (best) - 51; 18 and 25 and even 50 and 90 are used by ffmpeg
    examples as follows:<br>
    <br>
<a class="moz-txt-link-freetext" href="https://nelsonslog.wordpress.com/2022/08/22/ffmpeg-and-hevc_qsv-intel-quick-sync-settings/">https://nelsonslog.wordpress.com/2022/08/22/ffmpeg-and-hevc_qsv-intel-quick-sync-settings/</a><br>
<a class="moz-txt-link-freetext" href="https://kimathir.wordpress.com/2018/05/07/intel-qsv-encoding-coffee-lake/">https://kimathir.wordpress.com/2018/05/07/intel-qsv-encoding-coffee-lake/</a><br>
<a class="moz-txt-link-freetext" href="https://superuser.com/questions/1830920/constructing-encoding-statements-using-ffmpeg-qsv-and-intel-arc-card">https://superuser.com/questions/1830920/constructing-encoding-statements-using-ffmpeg-qsv-and-intel-arc-card</a><br>
    <a class="moz-txt-link-freetext" href="https://trac.ffmpeg.org/wiki/Hardware/QuickSync#FullExamples">https://trac.ffmpeg.org/wiki/Hardware/QuickSync#FullExamples</a><br>
    <a class="moz-txt-link-freetext" href="https://trac.ffmpeg.org/wiki/Hardware/VAAPI#FullExamples">https://trac.ffmpeg.org/wiki/Hardware/VAAPI#FullExamples</a><br>
     <br>
    <blockquote type="cite"
      cite="mid:2ea97a1b-e5f1-40bd-939e-40db0d571d8f@gmail.com">
      <blockquote type="cite"
        cite="mid:8c9bb242-269c-431c-912b-bef899b754de@gmail.com">
        <blockquote type="cite"
cite="mid:CA+rFky6cae+biZMUdh_8dkPYpapAW5OCtiNsgDxgbFPW9u+y4A@mail.gmail.com">
          <div dir="auto">
            <div dir="auto"><br>
            </div>
            <div dir="auto">
              <div class="gmail_quote">
                <blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                  <div><font face="Courier New, Courier, monospace"> <br>
                    </font>
                    <blockquote><font
                        face="Courier New, Courier, monospace"><br>
                      </font></blockquote>
                    <br>
                    <br>
                  </div>
                </blockquote>
              </div>
            </div>
          </div>
        </blockquote>
        <br>
      </blockquote>
      <br>
    </blockquote>
    <br>
  </body>
</html>