<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">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>
    <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" 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" 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 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>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>