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.0.2 has been released! | Please read ffmpeg.org/developer.html#Code-of-conduct
Warcop has joined #ffmpeg-devel
thilo_ has quit [Ping timeout: 245 seconds]
thilo_ has joined #ffmpeg-devel
\\Mr_C\\ has quit [Remote host closed the connection]
haihao has quit [Ping timeout: 246 seconds]
haihao has joined #ffmpeg-devel
<Marth64>
I see this at the end of every m1 mac build. just wondering if it's unique to me or a wontfix/no-big-deal known issue
<courmisch>
when I take over the world, .c files will not be allowed to exceed 2,000 lines
haihao has quit [Ping timeout: 252 seconds]
haihao has joined #ffmpeg-devel
derpydoo has joined #ffmpeg-devel
<Lynne>
you'll love libaom's core RDO loop file
<Lynne>
20kloc
<Lynne>
worked on by dozens of different developers with a history going back to on2
rvalue has quit [Ping timeout: 260 seconds]
darkapex has quit [Ping timeout: 260 seconds]
rvalue has joined #ffmpeg-devel
darkapex has joined #ffmpeg-devel
ngaullier has joined #ffmpeg-devel
haihao has quit [Ping timeout: 265 seconds]
haihao has joined #ffmpeg-devel
derpydoo has quit [Quit: derpydoo]
tufei_ has joined #ffmpeg-devel
tufei has quit [Ping timeout: 260 seconds]
microlappy has joined #ffmpeg-devel
microlappy has quit [Remote host closed the connection]
IndecisiveTurtle has joined #ffmpeg-devel
<haasn>
michaelni: maybe you (or somebody else) has an idea how to solve this problem
<haasn>
so, I want to try and reuse the same AVClass and AVOptions for SwsContext2 and SwsContext, for the sake of avoiding an unfortunate scenario like sws_get_class2()
<haasn>
on the one direction this is easy, just requires putting SwsContext2 at the start of the (private) SwsContext
<haasn>
but in the other direction it would require having options map to fields that don't exist in the struct
<ramiro>
I have a patch that's 140Kb with the changes to fate results. do I send the full patch, or can I send the code changes, and just add a diffstat of the fate result changes?
<haasn>
either that or adding all of the other deprecated sws options to the SwsContext2, which sort of defeats the point
<michaelni>
haasn, 2 different structs with different fields are not the same class and thus not the same AVClass. for AVOption #define can be used to avoid duplication. There is also the possibility of using child classes/structs
<ramiro>
courmisch: iirc mplayer had 4k lines just for the main function.
<haasn>
right, the idea was to at least cheat by having the AVClass just define the common fields and then using it for structs that start with a common prefix
<haasn>
but diverge after that
<haasn>
hmm
<haasn>
not sure I like this over just having sws_get_class2
<haasn>
as much as I hate the idea of that
<michaelni>
naively id think one can just add newly needed fields to the existing struct and deprecate old fields, also the struct is private so i dont know why we need a new one
<haasn>
I was also toying with the idea of making reusing the same struct for the new implementation like you just suggested yeah
<JEEB>
:)
<michaelni>
haasn, we also use AVCodecContext and AVFormatContext still by just adding and deprecating fields
<haasn>
the main reason I am not happy with this approach is that conflates the old and new code paths which IMO makes it more confusing to write the new implementation on top
<haasn>
but I'll give it a try
<haasn>
it is also more confusing to the API user, I think, about which operations are supported when
<haasn>
because the whole point of the new API is to drop support for the existing stateful APIs, and some other functions that I explicitly wanted to move away from
<haasn>
so we could either disallow their use when initializing the swscontext with whatever flag/function gives it the v2 semantics
<haasn>
or make the new context a separate struct to avoid any such confusion
<haasn>
that's why I was so keen on having a new name for the new swscale so that it can live in its own namespace without conflicting with the current functions
<haasn>
well, I will submit the series with the sws_2() family of functions for now and see what other people think
jamrial has joined #ffmpeg-devel
cone-210 has joined #ffmpeg-devel
<cone-210>
ffmpeg Lynne master:b5184c5d45af: hwcontext_vulkan: add the PROFILE_INDEPENDENT only when needed
<cone-210>
ffmpeg Lynne master:2942ca802ae4: hwcontext_vulkan: forward debug_mode to check_extensions() for devices
<cone-210>
ffmpeg Lynne master:3d75ba749589: vulkan: separate out descriptor layouts from sets
<cone-210>
ffmpeg Lynne master:8a7af4aa497f: vulkan: add support for regular descriptor pools
<cone-210>
ffmpeg Víctor Manuel Jáquez Leal master:2bcc124e1a49: vulkan_encode: set the quality level in session parameters
<cone-210>
ffmpeg Lynne master:39c640e1d631: nlmeans_vulkan: split up descriptor sets, rename buffer offset vars
<cone-210>
ffmpeg Lynne master:bc36fe6f1fc5: vulkan: use push descriptors where possible
<Lynne>
BtbN: the last commit fixes your issue
<Lynne>
and you can now run the vulkan filtering code on mobile phones
<BtbN>
I'm sure the drivers there will be nothing but trouble-free
<Lynne>
no no, its fine
<Lynne>
you see, most junk devices with bad drivers are stuck on 1.1
<Lynne>
we require 1.3
<JEEB>
is android still only mandating 1.1?
<BtbN>
Junk-Devices just don't run modern android
<Lynne>
no, according to the database, google's pixel phones come with 1.3
<BtbN>
Amazon is still shipping their latest devices with Android 11, and some of their still in support Tables come with Android 5.1
<JEEB>
so they require 1.1 since android 9 and 1.3 since android 13
microlappy has joined #ffmpeg-devel
microlappy has quit [Remote host closed the connection]
haihao has quit [Remote host closed the connection]
haihao has joined #ffmpeg-devel
<thardin>
j-b: poke
<haasn>
Lynne: I had a quick look at the dirac patch but it was very noisy on account of all the random formatting changes intermixed with new logic
<haasn>
I'll need much more time to review this properly
<haasn>
is there a clean version of the patch on the ML?
pross has quit [Remote host closed the connection]
microlappy has joined #ffmpeg-devel
microlappy has quit [Remote host closed the connection]
<cone-210>
ffmpeg James Almer master:aeb64d6fa5b6: configure: add missing filter dependencies to ffmpeg
<cone-210>
ffmpeg James Almer master:a48eba0021a9: fftools/ffmpeg_filter: ensure that the inserted filters exist
<cone-210>
ffmpeg James Almer master:dbbf9a5ff771: avcodec/decode: split ProgressFrame allocator into two functions
<cone-210>
ffmpeg James Almer master:d250cc02e250: avcodec/hevc/refs: ensure LCEVC SEI payloads are exported as frame side data before get_buffer() calls
<cone-210>
ffmpeg James Almer master:6147385393a5: avcodec: add an export_side_data flag to export picture enhancement layers
<cone-210>
ffmpeg James Almer master:660e7e6a0ef0: avcodec: add LCEVC decoding support via LCEVCdec
Sean_McG has joined #ffmpeg-devel
Krowl has joined #ffmpeg-devel
arbitercoin has quit [Ping timeout: 252 seconds]
<kurosu>
haasn: discovering aspects of the FGS. "needs_fg" and functionality being a bit duplicated sounds a bit weird, but who am I to judge. I imagine a member in AVFrame and applying FGS to it instead would bring headaches (exporting it, sync'ing it) etc? But it feels like AFGS1 and/or the H.274 thingie could be applied to at least 3 different codecs
<haasn>
kurosu: we could probably move fgs to the common avcodec code to reduce the deplication
<haasn>
but iirc the current design is done to make fgs multithreaded
Krowl has quit [Read error: Connection reset by peer]
<elenril>
jamrial: do you prefer for global side data propagation to be in place before MV set is pushed?
<jamrial>
no need
<elenril>
so should I go ahead and push the whole thing
<jamrial>
yeah, it can go after
<elenril>
cool
<elenril>
everyone take cover
shmocking has joined #ffmpeg-devel
* Sean_McG
shakes
<cone-210>
ffmpeg Jonathan Baudanza master:6b3f9c2e92ba: avformat/rtpdec: fix integer overflow in start_time_realtime calculation
<cone-210>
ffmpeg Anton Khirnov master:8c185ef4e7a2: compat: drop gcc, suncc, and pthreads stdatomic emulation
<cone-210>
ffmpeg Rémi Denis-Courmont master:a7505ec5620a: compat: add a fallback implementation of C23 stdbit.h
<cone-210>
ffmpeg Anton Khirnov master:6940a6de2f04: lavu/frame: add side data storing view ID for multi-view video
<cone-210>
ffmpeg Anton Khirnov master:299d9115d4c7: lavfi/f_select: allow selection based on view ID
<cone-210>
ffmpeg James Almer master:efa9d3deca30: avcodec/hevc/sei: add support for 3D Reference Displays Information SEI
<cone-210>
ffmpeg Anton Khirnov master:b15af98f6e4d: tests/fate/hevc: add a test for nontrivial values of nuh_layer_id
<cone-210>
ffmpeg Anton Khirnov master:eca95dc38f08: tests/fate/hevc: add a test for switching between single and multi-view
<cone-210>
ffmpeg Anton Khirnov master:ce5f571e961d: tests/fate/hevc: add a test for selecting view by position
<elenril>
and there was wailing and gnashing of teeth
DauntlessOne has quit [Remote host closed the connection]
DauntlessOne has joined #ffmpeg-devel
Krowl has joined #ffmpeg-devel
<BtbN>
If someone tries to convince me with a statements that starts with "Think about the AI world we live in:" and then follows multiple paragraphs of whatever, I somehow don't feel like even reading those paragraphs.
<elenril>
your spamfilter sounds reasonably configured
<jamrial>
ubitux's fate machines seem to be down
<Sean_McG>
aye, noticed that. also mine will be down tonight through Thursday as I will be away
ccawley2011 has joined #ffmpeg-devel
BtbN has quit [Remote host closed the connection]
BtbN has joined #ffmpeg-devel
Krowl has quit [Read error: Connection reset by peer]
paulk has quit [Ping timeout: 248 seconds]
<cone-210>
ffmpeg James Almer master:cc73bf02ba99: doc/general_contents: add missing reference to LCEVC
Krowl has joined #ffmpeg-devel
mkver has quit [Ping timeout: 276 seconds]
IndecisiveTurtle has quit [Ping timeout: 272 seconds]
<Marth64>
BtbN: I wouldnt't read anything beyond the words "AI world"
<BtbN>
Well, it's on the ML in a patch for nvdec...
<BtbN>
Apparently the hwaccel being able to scale is important because AI
<Marth64>
ahh...didn't mean to offend anyone
<Marth64>
but not a good justification agreed
<BtbN>
I legit did not read anything beyond that. It was multiple paragraphs of why it's important
<BtbN>
Wouldn't surprise me if they just fell out of some LLM
ngaullier has quit [Ping timeout: 245 seconds]
<elenril>
Marth64: where's the fun in not offending anyone
<Marth64>
its not in my nature unles someone really push my buttons :)
<Marth64>
do any of you all want an Intel arc a310 sff card for research as a donation to the project. It's sitting in a box and I have no time to play with it unfortunately