Den 25.10.2024 00:43, skrev Andrew Randrianasulu:


чт, 24 окт. 2024 г., 22:31 Terje J. Hanssen <[email protected]>:




    Den 24.10.2024 18:50, skrev Andrew Randrianasulu:


    чт, 24 окт. 2024 г., 19:29 Terje J. Hanssen
    <[email protected]>:




        Den 24.10.2024 15:37, skrev Andrew Randrianasulu:


        чт, 24 окт. 2024 г., 12:40 Terje J. Hanssen
        <[email protected]>:




            Den 23.10.2024 22:59, skrev Andrew Randrianasulu:


            ср, 23 окт. 2024 г., 23:44 Terje J. Hanssen
            <[email protected]>:




                Den 23.10.2024 21:25, skrev Terje J. Hanssen:



                Den 18.10.2024 20:56, skrev Andrew Randrianasulu:


                пт, 18 окт. 2024 г., 21:45 Terje J. Hanssen
                <[email protected]>:




                    Den 18.10.2024 18:37, skrev Andrew Randrianasulu:


                    пт, 18 окт. 2024 г., 19:30 Terje J. Hanssen
                    <[email protected]>:




                        Den 18.10.2024 09:08, skrev Andrew
                        Randrianasulu:
                        Can you try attached patch?

                        default to off, so should be safe?

                        Can you detail the basic steps to do it?


                    as always

                    backup what you think is important
                    (qsv/vaapi profiles, notably)

                    Will my custom built Cingg using my system
                    ffmpeg be overwritten?


                yes, so

                1) put this bin folder away somewhere

                2) may be try to use appimage tool for making
                your own appimage out of it.




                    make clean

                    git am patch


                Does this comprise just the onevpl.patch or also
                other patches on the current list?

                localhost:/Cin # ls -1 *.patch
                0001-Add-nv12-as-def.-pixformat-for-qsv-profiles-clarify-.patch
                0001-Fix-build-in-makeappimage-for-boost-1.85.patch
                0001-Qsv-encoders-for-testing.patch
                0001-Update-README-build-instructions.patch
                0002-Add-BUGS.patch
                0002-Modify-remaining-_qsv-orofiles-to-use-nv12-fix-typo-.patch
                0002-makeappimage-tool-add-algorithm-incl-into-core.cpp.patch
                0003-Add-DESCRIPTION.patch
                alt_shortcuts.patch
                onevpl.patch


                I applied

                git am  onevpl.patch

                first, before "make clean", and a second time after
                "make clean" in case this order was necessary.
                Then I got this output:

                localhost:/Cin # git am onevpl.patch
                Applying: Add onevpl support to build system
                error: patch failed: cinelerra-5.1/configure.ac:86
                <http://configure.ac:86>
                error: cinelerra-5.1/configure.ac
                <http://configure.ac>: patch does not apply
                error: patch failed:
                cinelerra-5.1/thirdparty/Makefile:136
                error: cinelerra-5.1/thirdparty/Makefile: patch
                does not apply
                Patch failed at 0001 Add onevpl support to build system
                hint: Use 'git am --show-current-patch=diff' to see
                the failed patch
                hint: When you have resolved this problem, run "git
                am --continue".
                hint: If you prefer to skip this patch, run "git am
                --skip" instead.
                hint: To restore the original branch and stop
                patching, run "git am --abort".
                hint: Disable this message with "git config
                advice.mergeConflict false"

                Is this message due to the second attempt, and is
                safe to continue from here with the next steps below?



            yeah, you only need to apply patch once.

            Should I apply more than than the onevpl.patch?


        I think no? At least I was testing it standalone




            if you have "gitk" installed you can run that and
            observe content of top patch or any patch in tree in
            tcl/tk gui.


                    ./autogen.sh

                    ./configure --with-single-user --with-onevpl


            What's broken here, lvpl no - onevpl error?

            localhost:/Cin # ./configure --with-single-user
            --with-onevpl
            configure: loading site script
            /usr/share/site/x86_64-pc-linux-gnu
            checking for a BSD-compatible install... /usr/bin/install -c
            checking whether sleep supports fractional seconds... yes
            checking filesystem timestamp resolution... 0.01
            checking whether build environment is sane... yes
            .........snip
            checking for vaGetDisplayDRM in -lva-drm... yes
            checking for MFXCreateSession in -lvpl... no
            configure: error: requires onevpl support.


        hm, do you have -devel package from onevpl installed?

        No, at least not currently

        # zypper se libvpl
        Loading repository data...
        Reading installed packages...

        S  | Name                | Summary | Type
        
---+---------------------+---------------------------------------------------------------------------+-----------
           | libvpl              | oneAPI Video Processing Library
        (oneVPL) dispatcher, tools, and examples  | package
           | libvpl-devel        | Development files for oneAPI Video
        Processing Library (oneVPL) dispatcher | package
           | libvpl-tools        | Intel Video Processing Library
        (Intel VPL) Tools                          | srcpackage
        i+ | libvpl-tools        | Intel Video Processing Library
        (Intel VPL) Tools                          | package
           | libvpl-tools-devel  | Development files for libvpl-tools
        | package
        i  | libvpl2             | oneAPI Video Processing Library
        (oneVPL) dispatcher                       | package
           | libvpl_wayland1_0_0 | Runtime library for libvpl-tools |
        package



        Not sure about libvpl vs libvpl2, but add-installed the rest
        of not available libvpl- packages

        # zypper in libvpl libvpl-devel libvpl-tools-devel
        libvpl_wayland1_0_0




        what "pkg-config --libs vpl" /"pkg-config --cflags vpl" say?

        Then

        # pkg-config --libs vpl
        -L/usr/lib64/pkgconfig/../ -lvpl -ldl -lstdc++

        # pkg-config --cflags vpl
        -I/usr/lib64/pkgconfig/../../include
        -I/usr/lib64/pkgconfig/../../include/vpl


        Reconfigure

        localhost:/Cin # ./configure --with-single-user --with-onevpl
        2>&1 | tee configure_onevpl_support.log

        No errors found in the log file


        localhost:/Cin # make 2>&1 | tee make_onevpl_support.log

        No errors found in the log file


        localhost:/Cin # make install 2>&1 | tee
        make_install_onevpl_support.log

        -----------------

        >     return qsv profiles you saved before to bin/ffmpeg/video

        localhost:/Cin/bin/ffmpeg/video # cp
        /Cin/bin_use_system_ffmpeg-71/ffmpeg/video/*qsv* .


        -----------------------

        localhost:/Cin # bin/cin
        Cinelerra Infinity - built: Oct 24 2024 16:26:16

        Tested with similar results as my previous ffmpeg_71 build:

        SD-DV to av1_qsv, hevc_qsv and h264_qsv nv12 works
        HDV to hevc_qsv works with nv12, p010le and yuv422 works
        HDV to av1_qsv and to h264_qsv don't work


    does av1_vaapi work for HDV case?


    Yes, I test-rendered HDV (hdv09_04) to hevc_vaapi, av1_vaapi,
    h264_vaapi, all i .mp4 below
    Also FHD (hd01) to av1_vaapi.mp4 worked, see ffprobe below

    Testing .webm type breaks with the following output:

        [av1_vaapi @ 0x7f5f74122a80] Driver does not support QVBR RC
        mode (supported modes: CQP, CBR, VBR, ICQ).
        FFMPEG::open_encoder err: Invalid argument
        int FFMPEG::open_encoder(const char*, const char*):
        open failed av1_vaapi:/Videoklipp/VAAPI/hdv09_04_av1_vaapi.webm


hm, you probably need to tweak this profile for your driver then ...

I got this tweak to work for hdv09_04.m2t rendering to av1_vaapi.webm

   cin_hw_dev=vaapi
   g=30
   profile=main
   rc_mode=CQP

Render::render_single: Session finished.
** rendered 5972 frames in 27.408 secs, 217.893 fps
FFMPEG::open_decoder: some stream times estimated: /Videoklipp/VAAPI/hdv09_04_av1_vaapi.webm FFMPEG::open_decoder: some stream times estimated: /Videoklipp/VAAPI/hdv09_04_av1_vaapi.webm
audio0 pad 64 -143 (207)
audio0 pad 0 -143 (143)
audio0 pad 0 -15 (15)


while

[av1_vaapi @ 0x7f8000317a40] Bitrate must be set for VBR RC mode.
FFMPEG::open_encoder  err: Invalid argument
int FFMPEG::open_encoder(const char*, const char*):
open failed av1_vaapi:/Videoklipp/VAAPI/hdv09_04_av1_vaapi.webm





so, vaapi works in more cases than qsv, it seems?




    terje@localhost:/Videoklipp/VAAPI> ls -lt hd*
    -rw-r--r-- 1 root  root  349812400 okt.  24 20:54
    hdv09_04_hevc_vaapi.mp4
    -rw-r--r-- 1 root  root  112467398 okt.  24 20:42 hd01_av1_vaapi.mp4
    -rw-r--r-- 1 root  root  606029742 okt.  24 20:35
    hdv09_04_h264_vaapi.mp4
    -rw-r--r-- 1 root  root  378664255 okt.  24 20:28
    hdv09_04_av1_vaapi.mp4


    ffprobe -hide_banner hdv09_04_hevc_vaapi.mp4
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'hdv09_04_hevc_vaapi.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2mp41
        encoder         : Lavf61.7.100
      Duration: 00:03:58.88, start: 0.000000, bitrate: 11715 kb/s
      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)
          Metadata:
            handler_name    : VideoHandler
            vendor_id       : [0][0][0][0]
      Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D),
    48000 Hz, stereo, fltp, 129 kb/s (default)
          Metadata:
            handler_name    : SoundHandler
            vendor_id       : [0][0][0][0]


    ffprobe -hide_banner hd01_av1_vaapi.mp4
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'hd01_av1_vaapi.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomav01iso2mp41
        encoder         : Lavf61.1.100
      Duration: 00:01:11.28, start: 0.000000, bitrate: 12622 kb/s
      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)
          Metadata:
            handler_name    : VideoHandler
            vendor_id       : [0][0][0][0]
      Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D),
    48000 Hz, 16 channels, fltp, 378 kb/s (default)
          Metadata:
            handler_name    : SoundHandler
            vendor_id       : [0][0][0][0]


    can you add auto-scale filter to HDV cases so it will be full HD
    and not 1440*1080 ? or another similar rescaling ....

    again, thanks for testing.

    But as with any experimentation we get some new questions instead
    of pure answers ....





        ===================================

        In separate posts:
        Can you possibly setup guideline detail procedure on how to
        build an appimage and a rpm package of this build,
        to possible install and test it on my legacy Skylake and
        Kabylake platforms?

        ===================================


    I think basic procedure at

    
https://cinelerra-gg.org/download/CinelerraGG_Manual/Build_CinGG_AppImage_from_s.html

    starting from

    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: https://github.com/AppImage/AppImageKit/releases


    for rpm build I think we need to wait for this patch to land in
    git and then become part of monthly src tarball.

    Then you can edit .spec file with soecifix date-based filename to
    fetch and run

    rpmbuild -bb ("build binary") our_spec_file.spec







                    make


            and here?

            # make
            make: *** No targets specified and no makefile found.  Stop.







                    make install

                    return qsv profiles you saved before to
                    bin/ffmpeg/video

                    bin/cin



                        My system is

                        /home/cinelerra/cinelerra-5.1 # ls bin
                        COPYING            applications 
                        doc           expanders.txt  info lv2
                        models pixmaps tips zmpeg3ifochk
                        Cinelerra_factory  bdwrite expanders.es
                        <http://expanders.es>  ffmpeg ladspa
                        lv2_blacklist.txt mplexlo plugins
                        zmpeg3cat zmpeg3show
                        README             cin expanders.fr
                        <http://expanders.fr>  hveg2enc locale
                        lv2ui msg shuttlerc zmpeg3cc2txt zmpeg3toc







-- 
Cin mailing list
[email protected]
https://lists.cinelerra-gg.org/mailman/listinfo/cin

Reply via email to