michaelni changed the topic of #ffmpeg-devel to: Welcome to the FFmpeg development channel | Questions about using FFmpeg or developing with libav* libs should be asked in #ffmpeg | This channel is publicly logged | FFmpeg 7.1.1 has been released! | Please read ffmpeg.org/developer.html#Code-of-conduct
IndecisiveTurtle has quit [Ping timeout: 252 seconds]
cone-954 has joined #ffmpeg-devel
<cone-954>
ffmpeg Andreas Rheinhardt master:b6602a17e149: avcodec/vp8: Fix wrong #endif comment
<cone-954>
ffmpeg Andreas Rheinhardt master:a41baa743d1c: avcodec/vp8: Move VPx specific functions inside #if CONFIG_VPx block
<cone-954>
ffmpeg Andreas Rheinhardt master:4040dc0782f2: avcodec/vp8: Move codec-specific init code out of common init
<cone-954>
ffmpeg Andreas Rheinhardt master:0349ae3ec4c2: avcodec/vp8: Remove always-false hwaccel checks for VP7
<cone-954>
ffmpeg Andreas Rheinhardt master:0971fcf0a082: avcodec/codec_internal, all: Use macros to set deprecated AVCodec fields
Everything has joined #ffmpeg-devel
<BtbN>
the patchwork issue is not mail delivery
<BtbN>
it gets the mails fine
<BtbN>
but then just does not parse them, exits with status 1, and logs nothing useful
MyNetAz has quit [Remote host closed the connection]
minimal has quit [Quit: Leaving]
MyNetAz has joined #ffmpeg-devel
thilo has quit [Ping timeout: 246 seconds]
thilo has joined #ffmpeg-devel
Mirarora has quit [Quit: Mirarora encountered a fatal error and needs to close]
Mirarora has joined #ffmpeg-devel
Mirarora has quit [Quit: Mirarora encountered a fatal error and needs to close]
^Neo has quit [Ping timeout: 244 seconds]
Everything has quit [Ping timeout: 272 seconds]
Everything has joined #ffmpeg-devel
Anthony_ZO has joined #ffmpeg-devel
Anthony_ZO has quit [Client Quit]
Mirarora has joined #ffmpeg-devel
jamrial has quit []
<Lynne>
final vulkan ffv1 patchset, and vulkan av1 patches up on the ML
Mirarora has quit [Quit: Mirarora encountered a fatal error and needs to close]
<cone-346>
ffmpeg Andreas Rheinhardt master:b98beb37044e: all: Use put_bytes_output() instead of put_bits_ptr - pb->buf
<cone-346>
ffmpeg Andreas Rheinhardt master:87e5da90674b: avcodec/wmaenc: Don't unnecessarily reset AVPacket.size
<cone-346>
ffmpeg Andreas Rheinhardt master:196ee9fc862d: avcodec/wma: Mark ff_wma_end() as av_cold
bstbul has joined #ffmpeg-devel
ashish has quit [Ping timeout: 252 seconds]
Martchus_ has joined #ffmpeg-devel
Martchus has quit [Ping timeout: 260 seconds]
System_Error has quit [Remote host closed the connection]
System_Error has joined #ffmpeg-devel
bstbul has quit [Quit: Client closed]
twelve has joined #ffmpeg-devel
twelve has quit [Ping timeout: 272 seconds]
cone-346 has quit [Quit: transmission timeout]
MisterMinister has quit [Ping timeout: 252 seconds]
Guest36 has joined #ffmpeg-devel
Guest36 has quit [Client Quit]
ngaullier has joined #ffmpeg-devel
ngaullier has quit [Remote host closed the connection]
mkver has quit [Quit: Leaving]
ngaullier has joined #ffmpeg-devel
ngaullier has quit [Remote host closed the connection]
ngaullier has joined #ffmpeg-devel
Everything has quit [Ping timeout: 276 seconds]
^Neo has joined #ffmpeg-devel
^Neo has quit [Changing host]
^Neo has joined #ffmpeg-devel
Anthony_ZO has joined #ffmpeg-devel
^Neo has quit [Ping timeout: 252 seconds]
<thardin>
anyone in here looking for a job? a client of mine is hiring
<JEEB>
I'm open for things
kasper93 has quit [Remote host closed the connection]
kasper93 has joined #ffmpeg-devel
<fflogger>
[newticket] Brainiarc7: Ticket #11501 ([avformat] The tee and fifo muxers do not respect the -program parameter(s) with mpegts) created https://trac.ffmpeg.org/ticket/11501
twelve has joined #ffmpeg-devel
twelve has quit [Remote host closed the connection]
<fflogger>
[editedticket] Gyan: Ticket #11501 ([avformat] The tee and fifo muxers do not respect the -program parameter(s) with mpegts) updated https://trac.ffmpeg.org/ticket/11501#comment:1
^Neo has joined #ffmpeg-devel
^Neo has quit [Changing host]
^Neo has joined #ffmpeg-devel
IndecisiveTurtle has joined #ffmpeg-devel
shrewd has quit [Ping timeout: 245 seconds]
cone-821 has joined #ffmpeg-devel
<cone-821>
ffmpeg Martin Storsjö master:73f4668ef816: swscale: aarch64: Simplify the assignment of lumToYV12
minimal has joined #ffmpeg-devel
jamrial has joined #ffmpeg-devel
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #ffmpeg-devel
rodidort has joined #ffmpeg-devel
rodidort25 has joined #ffmpeg-devel
<cone-821>
ffmpeg James Almer master:5f5ab2263911: avfilter/vsrc_testsrc: add support for semi planar formats to yuvtestsrc
<cone-821>
ffmpeg James Almer master:61fc9b6fee1a: avutil/pixfmt: add YAF16 and YAF32 pixel formats
<cone-821>
ffmpeg James Almer master:468577d1a529: swscale/input: add support for YAF16 and YAF32
<cone-821>
ffmpeg James Almer master:04d7a6d3db56: avcodec/exr: use luma+alpha float pixel formats
rodidort has quit [Quit: Client closed]
rvalue- has joined #ffmpeg-devel
rvalue has quit [Ping timeout: 252 seconds]
rodidort25 has quit [Quit: Client closed]
rvalue- is now known as rvalue
IndecisiveTurtle has quit [Remote host closed the connection]
<JEEB>
ugh
<JEEB>
ISO made getting free specs even worse than before; it integrated them into their web store
<JEEB>
so now you have to input information to get them
minimal has quit [Read error: Connection reset by peer]
ccawley2011 has joined #ffmpeg-devel
minimal has joined #ffmpeg-devel
ccawley2011_ has joined #ffmpeg-devel
ccawley2011 has quit [Ping timeout: 248 seconds]
twelve has joined #ffmpeg-devel
<kasper93>
Do we know why Vulkan decode is 2x slower than d3d11 on AMD? Is this known issue?
twelve has quit [Remote host closed the connection]
twelve has joined #ffmpeg-devel
mkver has joined #ffmpeg-devel
<Traneptora>
do we bump minor version for new av_ APIs?
<JEEB>
yes
<JEEB>
if it's a new public symbol, bump it goes
<Traneptora>
thanks
<Traneptora>
I'm trying to remove an avpriv_ in avcodec that's called by avformat. for now, should I remove it from the header file but leave it exported in avcodec until the next major bump?
<Traneptora>
or does it have to be in the header file as well, even if it's not used?
<JEEB>
man I don't recall the last avpriv case, but they are generally public symbols, so they probably need the deprecation dance
<Traneptora>
this is for my EXIF parse stuff that I'm still working on
Mirarora has joined #ffmpeg-devel
twelve has quit [Ping timeout: 265 seconds]
<Lynne>
kasper93: could you post the -loglevel debug log of the initialization?
<Lynne>
yo jkqxz, you said that the next decoder silicon would support using the decoded output as a ref
<JEEB>
ebin, 9070 XT
<Lynne>
have the drivers not been updated yet to use the new mode, like how mesa took its time switching to support DPB_DYNAMIC_TIER_2 on the RDNA3
<kasper93>
should have waited for UDNA, lmao
<Lynne>
also weird how on amd on windows all queues have a SPARSE capability, but underneath, the hardware has a single timeline concept for sparse memory, so mesa exposes it as a single queue, with fallbacks on other queues to remap submits
<Lynne>
anyway, this is the first benchmark I've seen of vulkan decode vs d3d11 decode on windows, my guess is that the drivers simply haven't been optimized yet
<Lynne>
*for amd
<Lynne>
on linux, we get slightly slower speed than VAAPI, due to vaapi having threaded submission queue, and the linux kernel exposing a single decode queue and the driver doing scheduling by itself, which due to one of vulkan's many foibles, causes us to lock each submit we do behind a mutex
<Lynne>
for intel and nvidia, we're faster than vaapi or cuda on linux, though
<kasper93>
yeah, for nvidia it is apparently similar speed on windows too
<kasper93>
d3d11: fps=757 vs Vulkan: fps=720 ,, bit slower, but at least in the same range
<JEEB>
yup
<kasper93>
I don't know why I never noticed it on RDNA1, maybe it was just to slow to see the difference, or I never looked
<kasper93>
RDNA2 has the same issue for a long time, from user reports
Anthony_ZO has quit [Ping timeout: 245 seconds]
minimal has quit [Remote host closed the connection]
minimal has joined #ffmpeg-devel
cone-821 has quit [Quit: transmission timeout]
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #ffmpeg-devel
ccawley2011_ has quit [Ping timeout: 248 seconds]
ccawley2011_ has joined #ffmpeg-devel
psilokos has joined #ffmpeg-devel
ccawley2011_ has quit [Ping timeout: 246 seconds]
ccawley2011 has joined #ffmpeg-devel
ngaullier has quit [Remote host closed the connection]
<jkqxz>
Lynne: It does. However, there will be little speed difference to using it or not unless memory is actually contended.
<jkqxz>
So I have no idea where that >2x difference would come from.
<jkqxz>
For that level of difference it kindof has to be something stupider like the driver not being woken up properly or something.
<Lynne>
does the overhead of doing a gpu memcpy for separate output and dbp not matter that much?
<jkqxz>
No memcpy, the hardware simultaneously writes to the two output buffers (in different formats).
<Lynne>
and different memory, I assume, since you used to not be able to reuse outputs as refs
ccawley2011 has quit [Read error: Connection reset by peer]
Mirarora has quit [Quit: Mirarora encountered a fatal error and needs to close]
IndecisiveTurtle has joined #ffmpeg-devel
IndecisiveTurtle has quit [Ping timeout: 244 seconds]
zsoltiv has quit [Remote host closed the connection]
zsoltiv has joined #ffmpeg-devel
compnnn has quit [Read error: Connection reset by peer]
compnnn has joined #ffmpeg-devel
compnnn has quit [Read error: Connection reset by peer]
compnnn has joined #ffmpeg-devel
IndecisiveTurtle has joined #ffmpeg-devel
<BtbN>
the patchwork situation was weird.
<BtbN>
mailman just set the patchwork E-Mail as nomail
<BtbN>
no idea why
<BtbN>
I just re-enabled the mails and it works again
<BtbN>
changed nothing else
<ePirat>
sounds like great software
<Lynne>
BtbN: when can we start using your forgejo instance as a test?
<Lynne>
I think you fixed the mail issue?
<BtbN>
Yeah, mails should work reliably now
<BtbN>
If it happens again, I also know how to instantly fix it
<BtbN>
Apparently if you restart the service at the exact right time, between the exact two wrong lines of code, the "next pointer" of the queue can become disloged from the data in the queue
<BtbN>
And it then permanently returns NULL for the next element, while also reporting to contain elements
<ePirat>
RIP Codeberg
<BtbN>
Yeah, they're getting crawlered to death :/
<BtbN>
same as g.v.o and our trac
<ePirat>
and also forum.videolan.org
<ePirat>
oh its even down again as we speak
<BtbN>
The OpenVPN Forums are also down for the same reason
<BtbN>
1% chance to get a page, 99% chance you get a "DB Out of connections" error
<BtbN>
LLM training idiocy craze...
<ePirat>
yeah
<BtbN>
"Oh, people put robots.txt in mass, to save their services? Seems we must ignore them then."
<BtbN>
For all I care, code.ffmpeg.org is ready for testing
<BtbN>
I'm a bit worried what happens to it when the crawlers start finding it
<Lynne>
who's crawling?
MisterMinister has joined #ffmpeg-devel
<BtbN>
literally everything and everyone it seems
<BtbN>
the ones that ignore robots.txt obviously don't say who they are
HarshK23 has quit [Quit: Connection closed for inactivity]
Teukka has quit [Read error: Connection reset by peer]
Teukka has joined #ffmpeg-devel
Teukka has quit [Changing host]
Teukka has joined #ffmpeg-devel
<Lynne>
michaelni: your floatmap changes broke files encoded with level 4 + pcm
<ramiro>
haasn: I'm trying out your swscale3 branch. for the conversions that end up being slower, I'm wondering if it would not be possible to create the simd functions in memory. if the graph builder figures out that all functions are available in simd, it could concatenate the chunks and make just one function call.
<ramiro>
the functions themselves could even be (kind of) assembled at runtime. the input/output/temp vector registers could be decided at runtime, and the bits in the opcodes be changed to the correct register numbers.
<ramiro>
masks could be loaded once for the entire function outside the main loop
<BtbN>
That'll fail on you only having write access to execute-disabled memory pages.
<ramiro>
BtbN: we already have runtime generated code in swscale (MmxextFilter)
<haasn>
ramiro: sure, if you’re happy to have runtime mutable code you can JIT the entire sequence of operations
<BtbN>
How does that even work? That should be impossible on modern CPUs
<BtbN>
If the OS does its job well
<haasn>
I think that what we should do actually at this point is create another layer of abstraction around ff_sws_op_list_compile()
<haasn>
The C templates with fixed size chunks are just one possible interpretation
<ramiro>
BtbN: mmap on linux/macos, VirtualAlloc(PAGE_EXECUTE_READWRITE) on windows
Traneptora has joined #ffmpeg-devel
<haasn>
But really you can go from SwsOpList to whatever you want; JIT asm, LLVM IR, SPIR-V
<haasn>
And for example on risc v you may want a dynamic chunk size
<ramiro>
haasn: how do you currently plan on overriding with hand-written asm functions? will it be a switch (src/dst) kind of like we currently have that overrides the entire SwsOpList? (I'm interested in the unscaled cases only)
<haasn>
ramiro: but my personal suspicion is that JIT/mutable code is overkill and we really just need an asm backend with custom cc that skips the load/stores
<haasn>
ramiro: the idea was to add those asm functions into the SwsOpEntry table
<ramiro>
haasn: you know that we *will* try to optimize and squeeze every possible cycle out of the functions, right? :)
<haasn>
Look at packed_swizzle in the existing template for an example
<haasn>
Define a version of that and hook it up to the existing MMX code for swizzling packed RgB
Traneptora has quit [Quit: Quit]
Traneptora has joined #ffmpeg-devel
System_Error has quit [Remote host closed the connection]
<haasn>
ramiro: this may sound a little crazy, but.. could we compile SPIR-V down to SIMD?
<haasn>
I mean llvmpipe does it internally
<haasn>
but that's a heavy dependency to incur, so we'd probably need to rewrite our own SPIR-V-to-SIMD compiler
<haasn>
because then we could do what you suggest on the SPIR-V layer (i.e. assigning registers and transforming the ops into SSA form)
<haasn>
and go from SPIR-V to either GPU or CPU code
<haasn>
and soon FFmpeg will be an entire operating system
System_Error has joined #ffmpeg-devel
<haasn>
.. yeah this really does not strke me as an elegant approach. A powerful and fast one, sure, but not, as the adage goes, as simple as possible (but no simpler)
<Lynne>
I think the other way around is better if you ask me