[Cin] test patch for 7.0 ffmpeg
Andrew Randrianasulu
randrianasulu at gmail.com
Wed Nov 20 20:54:00 CET 2024
ср, 20 нояб. 2024 г., 22:46 Terje J. Hanssen <terjejhanssen at gmail.com>:
>
>
>
> Den 20.11.2024 16:53, skrev Andrew Randrianasulu:
>
>
>
> ср, 20 нояб. 2024 г., 18:26 Terje J. Hanssen <terjejhanssen at gmail.com>:
>
>> Den 20.11.2024 06:23, skrev Andrew Randrianasulu:
>>
>> On Tue, Nov 19, 2024 at 6:59 PM Terje J. Hanssen<terjejhanssen at gmail.com> <terjejhanssen at gmail.com> wrote:
>>
>> Den 19.11.2024 15:08, skrev Andrew Randrianasulu:
>>
>>
>>
>> On Tue, Nov 19, 2024 at 1:56 PM Terje J. Hanssen <terjejhanssen at gmail.com> <terjejhanssen at gmail.com> wrote:
>>
>> Den 19.11.2024 14:53, skrev Andrew Randrianasulu:
>>
>>
>>
>> On Tue, Nov 19, 2024 at 1:28 PM Terje J. Hanssen <terjejhanssen at gmail.com> <terjejhanssen at gmail.com> wrote:
>>
>> Den 19.11.2024 06:58, skrev Andrew Randrianasulu:
>>
>>
>>
>> вт, 19 нояб. 2024 г., 03:47 Terje J. Hanssen <terjejhanssen at gmail.com> <terjejhanssen at gmail.com>:
>>
>> Den 18.11.2024 10:52, skrev Andrew Randrianasulu:
>>
>> It may work or break it completely ...
>>
>> apply by normal patch command from inside thirdparty/ffmpeg (may be "cat pathname | patch -p1", may be "cat patchname | patch -p0") or edit libavcodec/qsvenc.c by hand.
>>
>> rebuild ffmpeg, do not do make clean,
>> cd ../../
>> so you again in main directory with ./autogen.sh and bin directory with cinelerra.
>>
>> touch cinelerra/ffmpeg.C
>> make
>>
>> Hopefully this rebuild cin so on next start from bin/cin you will have something to test with tff sources.
>>
>> Unfortunately, netBSD does not support hardware virtualization on AMD cpus, so for now I do not have my virtual machines. I also forgot type of cable from PSU to disks, so now I can only power up one of two sata drives.
>>
>> It will be fixed eventually, but for now I hope to live up this netBSD install a bit ...
>>
>>
>>
>> To prepare for tomorrow, because else I am stuck:
>>
>> apply by normal patch command from inside thirdparty/ffmpeg (may be "cat pathname | patch -p1", may be "cat patchname | patch -p0") or edit libavcodec/qsvenc.c by hand.
>>
>>
>> Should here be a patch attached to be able to use "git am patch"?
>>
>> I installed Fedora 40 in qemu on NetBSD (thankfully only booting from iso as cdrom was not working on hw virtualization - 4*3.9 {amd fx4300 } Ghz was barely enough for gnome-based (?) installer to just show up) so hopefully there will be!
>>
>>
>>
>> cd /Cin/thirdparty/ffmpeg-7.0 ?
>>
>> may be "cat pathname | patch -p1", may be "cat patchname | patch -p0" ?
>>
>> or edit libavcodec/qsvenc.c by hand. - possibly what to edit there?
>>
>> cd ../../
>> localhost:/Cin #
>>
>> When possible, I need more explanation to my questions above ..,
>>
>> ? If you are not comfortable applying it by hand to internal ffmpeg I'll prepare normal git am patch, just wait a bit, ok?
>>
>>
>> Yes, fine and ok. But I didn't even understand what and how to edit libavcodec/qsvenc.c by hand above ;)
>>
>> Normally you just delete lines marked with "-" at very beginning, and replace them with lines marked with "+" sign in patch. Line numbers and line endings extremely important for patch, so sometimes 'innocent' patch editing resulted in no-working patch :(
>>
>> for simple patches you can just edit file they normally modify by doing patch's work.
>>
>>
>> Yet, I prefer to wait for the normal git am patch ;)
>>
>> try attached ?
>>
>>
>> Thanks for the patch, but unhappily no success so far. Still the same
>> errors.
>>
>> In case I did something wrong, I have preserved my steps as follow for
>> verification:
>>
>> # cd /Cin/thirdparty/ffmpeg-7.0
>>
>> # git am 0001-experimental-add-qsv-field-info-to-qsv-encoder-in-ff.patch
>> Applying: experimental: add qsv field info to qsv encoder in ffmpeg
>>
>> # cd ../..
>>
>> # /Cin
>>
>> # touch cinelerra/ffmpeg.C
>>
>> # make
>>
>> (no additonal "make install" step mentioned!?)
>>
>
> well, just remaking cinelerra put resulting binary in bin, and plugins and
> stuff should already be there from previous build.
>
> BUT in this case we need to rebuild ffmpeg itself, not just our interface
> to it.
>
> rm -rf thirdparty/ffmpeg-7.0
>
> rm thirdparty/build/ffmpeg.*
>
> make
>
>
> /Cin/bin/cin
> with a new render test here, got the same qsv errors.
>
>
> or you can do full rebuild just in case, but do not forgot to save
> profiles you worked on for so many days ...
>
>
> Additional "make install" step and another render test had the same qsv
> errors.
> I checked that my presets in /Cin/bin/ffmpeg/video were not overwritten.
> Should they?
>
> Or did you mean something else with a "full rebuild" ?
>
by full rebuild i mean running
make clean
./autogen.sh
./configure with switches for single user and libvpl
make
make install.
by partial rebuild i mean
rm thirdparty/build/ffmpeg.* - files indicating that was already built
rm -rf thirdparty/ffmpeg-7.0
so on next top level make it will unpack and patch ffmpeg sources anew,
build .a static libraries, and only then you do
touch cinelerra/ffmpeg.C
make
so cinelerra herself rebuilt with updated ffmpeg libraries.
depend on how cpu power you have. I often do partial rebuild because I use
qemu-based virtual machines with limited number of vCPUs assigned to them,
or build on my android tablet.
>
>
>
>
>> # bin/cin
>> Loaded a tff hdv.m2t file
>>
>> Attempt to render with preset av1_qsv_8b420.mp4
>>
>> # av1_qsv_8b420
>> # usable with Pixels: nv12
>> profile=main
>> # global_quality=25
>>
>> failed with the previous output error:
>>
>> [av1_qsv @ 0x7fc850e4f280] Current picture structure is unsupported
>> [av1_qsv @ 0x7fc850e4f280] some encoding parameters are not supported by
>> the QSV runtime. Please double check the input parameters.
>> FFMPEG::open_encoder err: Function not implemented
>> int FFMPEG::open_encoder(const char*, const char*):
>> open failed av1_qsv:/Videoklipp/QSV/hdv09_04_av1_qsv.mp4
>> Render::render_single: Session finished.
>>
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20241120/de79688b/attachment.htm>
More information about the Cin
mailing list