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
mkver has quit [Ping timeout: 260 seconds]
System_Error has quit [Remote host closed the connection]
<haasn> courmisch: https://0x0.st/XWUk.txt please don't execute me
thilo has quit [Ping timeout: 252 seconds]
<haasn> push ra, s0, s1, s2
System_Error has joined #ffmpeg-devel
thilo has joined #ffmpeg-devel
thilo has quit [Changing host]
thilo has joined #ffmpeg-devel
<haasn> foreach_stack could be generalized to load/store arbitrary elements from memory, really
<haasn> though I imagine it's not useful outside of push/pop
lexano has quit [Ping timeout: 260 seconds]
arch1t3cht9 has joined #ffmpeg-devel
arch1t3cht has quit [Ping timeout: 258 seconds]
arch1t3cht9 is now known as arch1t3cht
System_Error has quit [Remote host closed the connection]
System_Error has joined #ffmpeg-devel
blb has quit [Remote host closed the connection]
blb has joined #ffmpeg-devel
compnn has joined #ffmpeg-devel
compnnn has quit [Read error: Connection reset by peer]
Daemon404 has quit [Ping timeout: 248 seconds]
Daemon404 has joined #ffmpeg-devel
cone-361 has joined #ffmpeg-devel
<cone-361> ffmpeg James Almer master:8d700eab8540: tests/iamf: match stream group by id in some tests
<cone-361> ffmpeg James Almer master:41307ff3e938: avfilter/video: don't zero allocated buffers if memory poisoning is used
<cone-361> ffmpeg James Almer master:472fbee8124d: avformat/movenc: don't look at previous track_id as it may not be set
<cone-361> ffmpeg James Almer master:82085a3e0a5a: avcodec/avcodec_internal: fix type definition for the new functions
vipyne has joined #ffmpeg-devel
Daemon404 has quit [Changing host]
Daemon404 has joined #ffmpeg-devel
vipyne has quit [Quit: Leaving.]
jamrial has quit []
Martchus has joined #ffmpeg-devel
MisterMinister has joined #ffmpeg-devel
Martchus_ has quit [Ping timeout: 252 seconds]
HarshK23 has joined #ffmpeg-devel
System_Error has quit [Remote host closed the connection]
System_Error has joined #ffmpeg-devel
cone-361 has quit [Quit: transmission timeout]
MisterMinister has quit [Ping timeout: 272 seconds]
<thardin> mp4 support vp9 now?
<JEEB> has for quite a while
Krowl has joined #ffmpeg-devel
<courmisch> haasn: you won't escape XLEN problems. You can't implement this on RV128 because the ABI doesn't exist yet, and on RV32, we have quite a few functions that don't work because we need 64-bit scalars.
tufei__ has joined #ffmpeg-devel
<courmisch> FWIW, pushing RA is rare in assembler. it's only needed if you have doubly (or furtherly) nested calls within asm, or call a C function
tufei_ has quit [Ping timeout: 260 seconds]
<courmisch> only occurence so far is H264 multiple DCTs funcs
ccawley2011 has joined #ffmpeg-devel
feiw has joined #ffmpeg-devel
Krowl has quit [Read error: Connection reset by peer]
Livio has joined #ffmpeg-devel
cone-770 has joined #ffmpeg-devel
<cone-770> ffmpeg Anton Khirnov master:e1b38680b704: fftools/cmdutils: put stream specifier handling back into cmdutils
<cone-770> ffmpeg Anton Khirnov master:e218bde9f9e3: fftools/ffmpeg: replace MATCH_PER_STREAM_OPT(.., str, ..) with a function
<cone-770> ffmpeg Anton Khirnov master:46cbe4ab5c4f: fftools/cmdutils: split stream specifier parsing and matching
<cone-770> ffmpeg Anton Khirnov master:93227a68f12f: fftools/ffmpeg: replace remaining uses of MATCH_PER_STREAM_OPT()
<cone-770> ffmpeg Anton Khirnov master:d1bdd89c2f11: fftools/ffmpeg: use new stream specifier API in opt_match_per_stream*()
<cone-770> ffmpeg Anton Khirnov master:9e3b5b8a261f: fftools/ffmpeg: switch -map parsing to new stream specifier API
mkver has joined #ffmpeg-devel
SuperFashi has quit [Quit: No Ping reply in 180 seconds.]
AbleBacon has quit [Read error: Connection reset by peer]
SuperFashi has joined #ffmpeg-devel
cubicibo has joined #ffmpeg-devel
Krowl has joined #ffmpeg-devel
<elenril> how many feelings would we hurt if we started using anonymous structs/unions in public headers?
<Lynne> thardin: also youtube started to only offer vp9 in mp4 dash recently
<Lynne> some videos get no webm dash
<Lynne> elenril: less than dropping the old channel layout api
ccawley2011 has quit [Read error: Connection reset by peer]
<JEEB> elenril: I mean I think all it means that it might affect some compilers which are currently supported, and for those it would have to be decided whether it's OK to drop support for those for projects utilizing FFmpeg API-wise
jarthur has quit [Quit: jarthur]
lexano has joined #ffmpeg-devel
Gramner has quit [Ping timeout: 252 seconds]
Krowl has quit [Read error: Connection reset by peer]
ccawley2011 has joined #ffmpeg-devel
cubicibo has quit [Ping timeout: 256 seconds]
jamrial has joined #ffmpeg-devel
cone-770 has quit [Quit: transmission timeout]
Livio has quit [Ping timeout: 260 seconds]
Krowl has joined #ffmpeg-devel
<rajivharlalka> Hi folks, I am calculating psnr of 2 pair of images, first pair generated on ffmpeg by a filter I made, and another from matlab. and I am getting a result at matlab_psnr(ffmpeg(test), ffmpeg(ref)) = matlab_psnr(matlab(test), matlab(ref)) != ffmpeg_psnr(ffmpeg(test), ffmpeg(ref)) = ffmpeg_psnr(matlab(test), matlab(ref))
<sdc> rajivharlalka: how are you testing equality between matlab and ffmpeg? could it be a floating point issue?
<rajivharlalka> even if it were the floating point issue, I tried checking the MSE both systems computed, matlab calculated the MSE to be 1.0304 with max value set to be 256 whereas for ffmpeg, the MSE was calculated 24712674.12 with max value as 65635. if I missed the images are in EXR format.
<sdc> hm this is baseless speculation but since those are the max values for 8bit vs 16bit, I would start checking around that maybe
<rajivharlalka> I tried thinking around it, but could not find a way to force ffmpeg to either use 8 bit value, or matlab to use a 16 bit one.
<sdc> hmm yeah that's all I got then :|
<Lynne> rajivharlalka: don't expect the two implementations to match
<rajivharlalka> but isnt the psnr a standard equation? where might the difference be arising is what I am trying to understand.
Gramner has joined #ffmpeg-devel
ramiro has quit [Ping timeout: 252 seconds]
rellla has joined #ffmpeg-devel
vipyne has joined #ffmpeg-devel
Krowl has quit [Read error: Connection reset by peer]
ramiro has joined #ffmpeg-devel
<courmisch> elenril: no feelings worth caring about
<Lynne> rajivharlalka: the score given at the end still has to pass through normalization
<Lynne> the way that's done is via get_psnr() in the filter
<Lynne> there's some disagreement in the way that's done
<Lynne> for example, xiph's awcy psnr is different to ffmpeg's
ramiro has quit [Ping timeout: 252 seconds]
ramiro has joined #ffmpeg-devel
<jamrial> wbs: just sent a fix for one of the tests
Krowl has joined #ffmpeg-devel
<jamrial> wbs: the others are vuyx and xv36, both pixel formats where the alpha channel is left undefined, so the poisoning is passed as is by swscale
<jamrial> it's not a problem for other formats because they have less than 8 bits of undefined bits, so they are always zeroed
rellla has quit [Quit: ZNC 1.6.5+deb1+deb9u2 - http://znc.in]
kasper93_ has quit [Ping timeout: 248 seconds]
kasper93 has joined #ffmpeg-devel
Livio has joined #ffmpeg-devel
Traneptora has quit [Quit: Quit]
Krowl has quit [Read error: Connection reset by peer]
feiw1 has joined #ffmpeg-devel
feiw has quit [Ping timeout: 272 seconds]
vipyne has quit [Quit: Leaving.]
Krowl has joined #ffmpeg-devel
cone-654 has joined #ffmpeg-devel
<cone-654> ffmpeg Lynne master:d138d7a595b7: vulkan: make sure descriptor buffers are always DEVICE_LOCAL
sepro has quit [Read error: Connection reset by peer]
sepro3 has joined #ffmpeg-devel
IndecisiveTurtle has joined #ffmpeg-devel
jarthur has joined #ffmpeg-devel
ccawley2011 has quit [Read error: Connection reset by peer]
<IndecisiveTurtle> Lynne: Heya, wanted to ask. I fixed some issues with slice size alignment and now I'm implementing the additional wavelets such as legall and wondering, should I make them separate pipelines or can I use a uniform for the wavelet type and add them in existing upload/hor/ver shaders?
<IndecisiveTurtle> Also appologies for not speaking much, went a few days vacation so had limited laptop access for past few days. Now getting back on track
<Lynne> its alright
<Lynne> I'd prefer a separate pipeline tbh
<IndecisiveTurtle> I did horizontal legall already as uniform but wanted to ask before further
<IndecisiveTurtle> The main concern is the amount of shader files, each wavelet will need 3 files
<IndecisiveTurtle> Hm or could we use single file with different entry points, can I specify that in ffmpeg?
<Lynne> ffmpeg fully supports multiple entrypoints
<Lynne> but guess what doesn't...
<Lynne> glslang, world's second worst written project ever
<IndecisiveTurtle> Oof lol
<IndecisiveTurtle> I've heard people say it generates quite horrible coed
<Lynne> you have no idea
<Lynne> before me and haasn did some fixes for it, its startup was all global state that could easily be corrupted
<Lynne> they even messed up the version checking macro by inversing its condition
<IndecisiveTurtle> Heh, does the fact that it is written in c++ make it a bit more painful to interop with c programs?
<cone-654> ffmpeg James Almer master:2b349f2d73f5: avcodec/adpcm: adpcm_dtk is stereo only
<cone-654> ffmpeg James Almer master:ed618b288f4b: avcodec/rpzaenc: don't use buffer data beyond the end of a row
<cone-654> ffmpeg James Almer master:66592e8b100f: swscale/output: don't leave the alpha channel undefined in vuyx and xv36le
<Lynne> IndecisiveTurtle: its got a C API
<Lynne> but its a bit outdated and inflexible
<Lynne> we used to use the C++ API
<Lynne> but just as you said, yes, there was a difficulty
<Lynne> since you cannot use named struct initializers in C++, it meant that every time they added a new entry to their GLSL entry limits struct, everything would break
<Lynne> these days there's an API that gets you a limits struct so you don't have to have one anymore, but still
<Lynne> oh, and fucking cflags
<Lynne> *ldflags
<Lynne> it got split up into different libraries upon each release
<Lynne> ...AS A CONFIGURATION OPTION
<Lynne> so on one distribution, you'd have one set of ldflags, and on others, you'd have another set of ldflags
<Lynne> of course, its a big projects by big companies being involved, so natually any means of automating it, like with pkg-config, was laughed upon
<Lynne> that didn't stop distributions from making a pkg-config on their own, which was a very nice gesture
<Lynne> ...until they stopped updating it/didn't realize it needed updating, so if you'd use it, you'd have incorrect ldflags
<IndecisiveTurtle> Oh my lol
<Lynne> shaderc is nothing more than a wrapper around it, so you weren't safe from any of this
<Lynne> also shaderc was broken in debian for about a year
<Lynne> no one cared
<Lynne> "it builds fine, it should run fine too, right?"
<IndecisiveTurtle> shaderc had a major perf regression I heard so I stopped using it in a project in favour of glslang directly
<Lynne> nah, they both run the same code
AbleBacon has joined #ffmpeg-devel
<Lynne> and they're not really compilers, there's hardly any optimizations going on
<Lynne> its just a massively overcomplicated project
<IndecisiveTurtle> Doesn't glslang use spirv-opt internally?
<IndecisiveTurtle> I checked spirv-opt once has a huge amount of opt-passes
<Lynne> its got support for size minimization
<Lynne> and only that, it doesn't do any perf optimizations
<Lynne> but you shouldn't need it
<Lynne> the GPU driver knows better
<IndecisiveTurtle> Sadge. It would have been nice if it could re-structurize code for more optimal performance
<IndecisiveTurtle> I have a specific app in mind that gives bad glsl that would benefit from this on android phones with bad recompilers
<Lynne> I believe mesa has a SPIRV to NIR to SPIRV routines, you could hack something up and LD_PRELOAD MITM the shaders
IndecisiveTurtle has quit [Ping timeout: 252 seconds]
feiw1 has quit [Remote host closed the connection]
Livio has quit [Quit: leaving]
Krowl has quit [Read error: Connection reset by peer]
<cone-654> ffmpeg Stephen Hutchinson master:c0fddbae7917: avformat/avisynth: remove atexit() handler
<cone-654> ffmpeg Stephen Hutchinson master:8f01ce28981b: avformat/avisynth: remove mutex lock from avisynth_read_close
<cone-654> ffmpeg Stephen Hutchinson master:48d6cd35a2c6: avformat/avisynth: remove library allocation from global state
<cone-654> ffmpeg Stephen Hutchinson master:ea7375c9e94e: avformat/avisynth: move avs_planes* consts into relevant function
MisterMinister has joined #ffmpeg-devel
Mister_D has joined #ffmpeg-devel
MisterMinister has quit [Ping timeout: 258 seconds]
<wbs> jamrial: thanks!
mkver has quit [Ping timeout: 272 seconds]
System_Error has quit [Remote host closed the connection]
<cone-654> ffmpeg Ross Burton master:654bd47716c4: libavcodec/arm/mlpdsp_armv5te: fix label format to work with binutils 2.43
<courmisch> >> armv5te
av500 has joined #ffmpeg-devel
_av500_ has quit [Ping timeout: 258 seconds]
mkver has joined #ffmpeg-devel
System_Error has joined #ffmpeg-devel
IndecisiveTurtle has joined #ffmpeg-devel
LaserEyess has quit [Remote host closed the connection]
uau has quit [Quit: ZNC 1.9.1+deb1 - https://znc.in]
LaserEyess has joined #ffmpeg-devel
LaserEyess has quit [Changing host]
LaserEyess has joined #ffmpeg-devel
uau has joined #ffmpeg-devel
iive has joined #ffmpeg-devel
<llyyr> Lynne: after 6757cdb5350fdad381adfe42b305457897f86c8e, I get a bunch of [ffmpeg] av_log callback called with bad parameters (NULL AVClass). when using hwdec vulkan in mpv
<llyyr> seems to come from the av_log call in ff_vk_get_pooled_buffer
<Lynne> ah...
<Lynne> so that's where they've been coming from
<llyyr> I tried to patch it myself but not familiar enough with how this stuff works :shrug
<Lynne> elenril: fyi imgutils has a static const AVClass, in case those bother you
jdek has quit [Ping timeout: 245 seconds]
Curid has quit [Ping timeout: 245 seconds]
fennewald has quit [Ping timeout: 248 seconds]
Son_Goku has quit [Ping timeout: 244 seconds]
fennewald has joined #ffmpeg-devel
bpmedley has quit [Ping timeout: 245 seconds]
Manouchehri has quit [Ping timeout: 244 seconds]
ringo has quit [Ping timeout: 252 seconds]
Curid has joined #ffmpeg-devel
jdek has joined #ffmpeg-devel
Manouchehri has joined #ffmpeg-devel
Son_Goku has joined #ffmpeg-devel
bpmedley has joined #ffmpeg-devel
ringo has joined #ffmpeg-devel
ringo is now known as Guest1414
cone-654 has quit [Quit: transmission timeout]
jarthur_ has joined #ffmpeg-devel
jarthur has quit [Ping timeout: 260 seconds]
jarthur_ is now known as jarthur
Traneptora has joined #ffmpeg-devel