[Cin] adding onevpl support for buildsystem

Terje J. Hanssen terjejhanssen at gmail.com
Thu Oct 24 18:29:12 CEST 2024




Den 24.10.2024 15:37, skrev Andrew Randrianasulu:
>
>
> чт, 24 окт. 2024 г., 12:40 Terje J. Hanssen <terjejhanssen at gmail.com>:
>
>
>
>
>     Den 23.10.2024 22:59, skrev Andrew Randrianasulu:
>>
>>
>>     ср, 23 окт. 2024 г., 23:44 Terje J. Hanssen
>>     <terjejhanssen at gmail.com>:
>>
>>
>>
>>
>>         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
>>>>         <terjejhanssen at gmail.com>:
>>>>
>>>>
>>>>
>>>>
>>>>             Den 18.10.2024 18:37, skrev Andrew Randrianasulu:
>>>>>
>>>>>
>>>>>             пт, 18 окт. 2024 г., 19:30 Terje J. Hanssen
>>>>>             <terjejhanssen at gmail.com>:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>                 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


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

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?

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


>
>
>>>>>
>>>>>             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
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20241024/dab2ef65/attachment-0001.htm>


More information about the Cin mailing list