<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">пт, 27 сент. 2024 г., 12:40 Terje J. Hanssen <<a href="mailto:terjejhanssen@gmail.com" target="_blank" rel="noreferrer">terjejhanssen@gmail.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><u></u>

  
    
  
  <div>
    <br>
    <br>
    <div>Den 26.09.2024 01:18, skrev Andrew
      Randrianasulu:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">
        <div dir="ltr"><br>
        </div>
        <br>
        <div class="gmail_quote">
          <div dir="ltr" class="gmail_attr">On Thu, Sep 26, 2024 at
            2:06 AM Terje J. Hanssen <<a href="mailto:terjejhanssen@gmail.com" rel="noreferrer noreferrer" target="_blank">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">
            <div> <br>
              <br>
              <div>Den 25.09.2024 23:22, 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 г., 00:16 Terje J. Hanssen <<a href="mailto:terjejhanssen@gmail.com" rel="noreferrer noreferrer" target="_blank">terjejhanssen@gmail.com</a>>:<br>
                      </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>
                          <br>
                          <div>Den 25.09.2024 21:33, skrev Andrew
                            Randrianasulu:<br>
                          </div>
                          <blockquote type="cite">
                            <div dir="auto">
                              <div><br>
                                <br>
                                <div class="gmail_quote">
                                  <div dir="ltr" class="gmail_attr">ср,
                                    25 сент. 2024 г., 18:25 Terje J.
                                    Hanssen <<a href="mailto:terjejhanssen@gmail.com" rel="noreferrer noreferrer noreferrer" target="_blank">terjejhanssen@gmail.com</a>>:<br>
                                  </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>
                                      <br>
                                      <div>Den 25.09.2024 00:27, skrev
                                        Andrew Randrianasulu:<br>
                                      </div>
                                      <blockquote type="cite">
                                        <div dir="auto">try this git
                                          patch, do not forgot to make
                                          install again, or put profiles
                                          in bin/ffmpeg/video folder
                                          manually.</div>
                                      </blockquote>
                                      <br>
                                      # cd /home/cinelerra/cinelerra-5.1<br>
                                      # mv
                                      /home/terje/0001-Qsv-encoders-for-testing.patch
                                      .<br>
                                      <br>
                                      # git am
                                      0001-Qsv-encoders-for-testing.patch<br>
                                      Applying: Qsv encoders for testing<br>
                                      <br>
                                      <br>
                                      make install > make_install.log
                                      2&1<br>
                                    </div>
                                  </blockquote>
                                </div>
                              </div>
                              <div dir="auto"><br>
                              </div>
                              <div dir="auto"><br>
                              </div>
                              <div dir="auto">make install >
                                make_install.log 2>&1 ?</div>
                              <br>
                            </div>
                          </blockquote>
                          Sorry. I should cleanup all ">" with Find
                          & Replace in my note, and oversaw here
                          should be two of them in this  command ;(<br>
                          <br>
                          Now make install went through without faults
                          as I could see, but attach it by email again.<br>
                          <br>
                          But unhappily, no success with testing Cingg
                          Qsv Rendering.<br>
                          All attempts so far breaks with the output
                          below:<br>
                          <blockquote>FFMPEG::open_encoder  err:
                            Internal bug, should not have happened<br>
                            int FFMPEG::open_encoder(const char*, const
                            char*):<br>
                          </blockquote>
                          ----------<br>
                          localhost:/home/cinelerra/cinelerra-5.1 #
                          bin/cin<br>
                          Cinelerra Infinity - built: Sep 23 2024
                          10:31:07<br>
                          ----------<br>
                          1)<br>
                          Loaded hdv09_04.m2t<br>
                          Render: <br>
                          Output to file:
                          /Videoklipp/QSV/hdv09_04_h264_qsv.mp4<br>
                          File format: FFMPEG-mp4<br>
                          Compression: h264_qsv.mp4<br>
                          Pixels: qsv<br>
                          <br>
                          libva info: VA-API version 1.22.0<br>
                          libva info: Trying to open
                          /usr/lib64/dri/iHD_drv_video.so<br>
                          libva info: Found init function
                          __vaDriverInit_1_21<br>
                          libva info: va_openDriver() returns 0<br>
                          libva info: VA-API version 1.22.0<br>
                          libva info: Trying to open
                          /usr/lib64/dri/iHD_drv_video.so<br>
                          libva info: Found init function
                          __vaDriverInit_1_21<br>
                          libva info: va_openDriver() returns 0<br>
                          <br>
                          FFMPEG::open_encoder  err: Internal bug,
                          should not have happened<br>
                          int FFMPEG::open_encoder(const char*, const
                          char*):<br>
                          open failed
                          h264_qsv:/Videoklipp/QSV/hdv09_04_h264_qsv.mp4<br>
                          Render::render_single: Session finished.<br>
                          --------------<br>
                          2a)<br>
                          Loaded hdv09_04.m2t<br>
                          Render: <br>
                          Output to file:
                          /Videoklipp/QSV/hdv09_04_h265_qsv.mp4<br>
                          File format: FFMPEG-mp4<br>
                          <br>
                          Compression: h265_qsv.mp4<br>
                          Pixels: qsv<br>
                          <br>
                          [hevc_qsv encoder @ 0x7f44e0d0bd80] [Eval @
                          0x7f44e57eb6f0] Undefined constant or missing
                          '(' in 'high'<br>
                          [hevc_qsv encoder @ 0x7f44e0d0bd80] Unable to
                          parse option value "high"<br>
                          [hevc_qsv encoder @ 0x7f44e0d0bd80] Error
                          setting option profile to value high.<br>
                          FFMPEG::open_encoder  err: Invalid argument<br>
                          int FFMPEG::open_encoder(const char*, const
                          char*):<br>
                          open failed
                          hevc_qsv:/Videoklipp/QSV/hdv09_04_h265_qsv.mp4<br>
                          Render::render_single: Session finished.<br>
                        </div>
                      </blockquote>
                    </div>
                  </div>
                </div>
              </blockquote>
              <br>
              # profile=high<br>
              Pixels: qsv (yuv420 isn't available)<br>
              <br>
              Didn't render:<br>
              FFMPEG::open_encoder  err: Internal bug, should not have
              happened<br>
              int FFMPEG::open_encoder(const char*, const char*):<br>
              open failed hevc_qsv:/Videoklipp/QSV/hdv09_04_h265_qsv.mp4<br>
              Render::render_single: Session finished.<br>
              <br>
              <br>
              <br>
              <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> ----------------<br>
                          2b)<br>
                          Compression: h265_qsv.mp4<br>
                          Pixels: p010le<br>
                          <br>
                          [hevc_qsv encoder @ 0x7f93dcdb3c00] [Eval @
                          0x7f93cbff06f0] Undefined constant or missing
                          '(' in 'high'<br>
                          [hevc_qsv encoder @ 0x7f93dcdb3c00] Unable to
                          parse option value "high"<br>
                          [hevc_qsv encoder @ 0x7f93dcdb3c00] Error
                          setting option profile to value high.<br>
                          FFMPEG::open_encoder  err: Invalid argument<br>
                          int FFMPEG::open_encoder(const char*, const
                          char*):<br>
                          open failed
                          hevc_qsv:/Videoklipp/QSV/hdv09_04_h265_qsv.mp4<br>
                          Render::render_single: Session finished.<br>
                        </div>
                      </blockquote>
                    </div>
                  </div>
                </div>
              </blockquote>
              <br>
              Some progress:<br>
              <br>
              # profile=high<br>
              Pixels: yuvy422 (yuv420 isn't available)<br>
              Settings>Appearance: BT.709/MPEG2<br>
              <br>
              Rendered:<br>
              Render::render_single: Session finished.<br>
              ** rendered 5972 frames in 33.999 secs, 175.652 fps<br>
              audio0 pad 64 0 (64)<br>
              <br>
              VLC playback OK<br>
              <br>
              ffprobe -hide_banner hdv09_04_h265_qsv.mp4<br>
              Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
              'hdv09_04_h265_qsv.mp4':<br>
                Metadata:<br>
                  major_brand     : isom<br>
                  minor_version   : 512<br>
                  compatible_brands: isomiso2mp41<br>
                  encoder         : Lavf61.1.100<br>
                Duration: 00:03:58.88, start: 0.000000, bitrate: 3359
              kb/s<br>
                Stream #0:0[0x1](und): Video: hevc (Rext) (hev1 /
              0x31766568), yuv422p(tv, bt709/unknown/unknown, top coded
              first (swapped)), 1440x1080 [SAR 4:3 DAR 16:9], 3223 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>
            </div>
          </blockquote>
          <div><br>
          </div>
          <div><br>
          </div>
          <div>ah, so it need tv range .. try also with Pixels nv12
            (worked for me on mediacodec)<br>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    Not really.,<br>
    Also the default at first startup, appearance BT.601-PAL/MJPEG,
    worked, and then ffprobe output<br>
    Stream #0:0[0x1](und): Video: hevc (Rext) (hev1 / 0x31766568),
    yuv422p(pc, bt470bg/unknown/unknown, top coded first (swapped)),
    1440x1080 [SAR 4:3 DAR 16:9], 3248 kb/s, 25 fps, 25 tbr, 12800 tbn
    (default)<br>
    <br>
    I just changed it to BT.701/MPEG which is for HD video, and I also
    remembed you also suggested this in a previous thread.<br>
    <br>
    Both yuv422 and nv12 work.<br>
    <br>
    But why isn't also the usual yuv420p available for h264 and h265?<br></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">not sure, may be qsv library does not support this?</div><div dir="auto"><br></div><div dir="auto">at least I can't see it in source</div><div dir="auto"><br></div><div dir="auto"><a href="https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/libavcodec/qsvenc_hevc.c#l399">https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/libavcodec/qsvenc_hevc.c#l399</a><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:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>
    <br>
    Possibly also rename h265 to hevc as ffmpeg use?<br></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">ok, I'll rename it and add nv12 as default pix format.</div><div dir="auto"><br></div><div dir="auto">can you also see if h264 works with nv12?</div><div dir="auto"><br></div><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>
    <br>
    <br>
     
    <blockquote type="cite">
      <div dir="ltr">
        <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> <br>
              <br>
              <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> ----------------<br>
                          3a)<br>
                          Loaded hdv09_04.m2t<br>
                          Render: <br>
                          Output to file:
                          /Videoklipp/QSV/hdv09_04_av1_qsv.mp4<br>
                          File format: FFMPEG-mp4<br>
                          <br>
                          Compression: av1_qsv.mp4<br>
                          Pixels: qsv<br>
                          <br>
                          FFMPEG::open_encoder  err: Internal bug,
                          should not have happened<br>
                          int FFMPEG::open_encoder(const char*, const
                          char*):<br>
                          open failed
                          av1_qsv:/Videoklipp/QSV/hdv09_04_av1_qsv.mp4<br>
                          Render::render_single: Session finished.<br>
                          --------------<br>
                          3b)<br>
                          Compression: av1_qsv.mp4<br>
                          Pixels: p010le<br>
                          <br>
                          [av1_qsv @ 0x7f1c302e7080] Current picture
                          structure is unsupported<br>
                          [av1_qsv @ 0x7f1c302e7080] some encoding
                          parameters are not supported by the QSV
                          runtime. Please double check the input
                          parameters.<br>
                          FFMPEG::open_encoder  err: Function not
                          implemented<br>
                          int FFMPEG::open_encoder(const char*, const
                          char*):<br>
                          open failed
                          av1_qsv:/Videoklipp/QSV/hdv09_04_av1_qsv.mp4<br>
                          Render::render_single: Session finished.<br>
                          -----------------<br>
                          4a)<br>
                          Loaded hd01.mov<br>
                          Render: <br>
                          Output to file:
                          /Videoklipp/QSV/hdv09_04_h265_qsv.mp4<br>
                          File format: FFMPEG-mp4<br>
                          <br>
                          Compression: h265_qsv.mp4<br>
                          Pixels: qsv<br>
                          <br>
                          [hevc_qsv encoder @ 0x7f4b8d6f9ac0] [Eval @
                          0x7f4b62ff66f0] Undefined constant or missing
                          '(' in 'high'<br>
                          [hevc_qsv encoder @ 0x7f4b8d6f9ac0] Unable to
                          parse option value "high"<br>
                          [hevc_qsv encoder @ 0x7f4b8d6f9ac0] Error
                          setting option profile to value high.<br>
                          FFMPEG::open_encoder  err: Invalid argument<br>
                          int FFMPEG::open_encoder(const char*, const
                          char*):<br>
                          open failed
                          hevc_qsv:/Videoklipp/MOV/hd01_qsv.mp4<br>
                          Render::render_single: Session finished.<br>
                        </div>
                      </blockquote>
                    </div>
                  </div>
                  <div dir="auto"><br>
                  </div>
                  <div dir="auto">I think you can try to comment out
                    (with #) line with</div>
                  <div dir="auto">profile=high. in h265_qsv.mp4</div>
                </div>
              </blockquote>
              <br>
              # profile=high<br>
              Pixels: qsv (yuv420 isn't available)<br>
              <br>
              Didn't render:<br>
              FFMPEG::open_encoder  err: Internal bug, should not have
              happened<br>
              int FFMPEG::open_encoder(const char*, const char*):<br>
              open failed hevc_qsv:/Videoklipp/MOV/hd01_qsv.mp4<br>
              Render::render_single: Session finished.<br>
              <br>
              <br>
              <blockquote type="cite">
                <div dir="auto">
                  <div dir="auto"><br>
                  </div>
                  <div dir="auto">You also probably can stick to yuv420p
                    (if available) because qsv implies image already in
                    hw-specifuc format and ffmpeg does not do this
                    conversion for us</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> --------------------<br>
                          4b)<br>
                          Compression: h265_qsv.mp4<br>
                          Pixels: yuyv422<br>
                          <br>
                          [hevc_qsv encoder @ 0x7f4ba4070f00] [Eval @
                          0x7f4b5bff86f0] Undefined constant or missing
                          '(' in 'high'<br>
                          [hevc_qsv encoder @ 0x7f4ba4070f00] Unable to
                          parse option value "high"<br>
                          [hevc_qsv encoder @ 0x7f4ba4070f00] Error
                          setting option profile to value high.<br>
                          FFMPEG::open_encoder  err: Invalid argument<br>
                          int FFMPEG::open_encoder(const char*, const
                          char*):<br>
                          open failed
                          hevc_qsv:/Videoklipp/MOV/hd01_qsv.mp4<br>
                          Render::render_single: Session finished.<br>
                        </div>
                      </blockquote>
                    </div>
                  </div>
                </div>
              </blockquote>
              <br>
              Some progress:<br>
              <br>
              # profile=high<br>
              Pixels: yuyv422 (yuv420 isn't available)<br>
              Settings>Appearance: BT.709/MPEG2<br>
              <br>
              Rendered:<br>
              FFStream::encode_frame: encode failed.<br>
              file: /Videoklipp/MOV/hd01_qsv.mp4<br>
                err: Resource temporarily unavailable<br>
              FFStream::flush failed<br>
              :<a rel="noreferrer noreferrer">file:/Videoklipp/MOV/hd01_qsv.mp4</a><br>
                err: Operation not permitted<br>
              Render::render_single: Session finished.<br>
              ** rendered 1781 frames in 14.617 secs, 121.844 fps<br>
              audio0 pad 128 0 (128)<br>
              <br>
              VLC playback OK<br>
              <br>
              ffprobe -hide_banner hd01_qsv.mp4<br>
              Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'hd01_qsv.mp4':<br>
                Metadata:<br>
                  major_brand     : isom<br>
                  minor_version   : 512<br>
                  compatible_brands: isomiso2mp41<br>
                  encoder         : Lavf61.1.100<br>
                Duration: 00:01:11.28, start: 0.000000, bitrate: 2744
              kb/s<br>
                Stream #0:0[0x1](und): Video: hevc (Rext) (hev1 /
              0x31766568), yuv422p(tv, bt709/unknown/unknown, top coded
              first (swapped)), 1920x1080 [SAR 1:1 DAR 16:9], 2377 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, 16 channels, fltp, 378 kb/s
              (default)<br>
                    Metadata:<br>
                      handler_name    : SoundHandler<br>
                      vendor_id       : [0][0][0][0]<br>
              <br>
              <br>
              <br>
              <br>
              <br>
              <blockquote type="cite">
                <div dir="auto">
                  <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> <br>
                          <br>
                          <blockquote><br>
                          </blockquote>
                        </div>
                      </blockquote>
                    </div>
                  </div>
                </div>
              </blockquote>
              <br>
            </div>
          </blockquote>
        </div>
      </div>
    </blockquote>
    <br>
  </div>

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