Den 20.11.2024 16:53, skrev Andrew
Randrianasulu:
Den 20.11.2024 06:23, skrev Andrew Randrianasulu:
On Tue, Nov 19, 2024 at 6:59 PM Terje J. Hanssen
<terjejhanssen@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@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@gmail.com> wrote:
Den 19.11.2024 06:58, skrev Andrew Randrianasulu:
вт, 19 нояб. 2024 г., 03:47 Terje J. Hanssen <terjejhanssen@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.