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 6.1 has been released! | Please read ffmpeg.org/developer.html#Code-of-conduct
iive has quit [Quit: They came for me...]
dellas has quit [Remote host closed the connection]
<durandal_1707>
haasn: what is status of YUVJ removal?
averne has quit [Quit: quit]
averne has joined #ffmpeg-devel
mkver has joined #ffmpeg-devel
averne has quit [Quit: quit]
averne has joined #ffmpeg-devel
averne has quit [Quit: quit]
averne has joined #ffmpeg-devel
thilo has quit [Ping timeout: 255 seconds]
thilo has joined #ffmpeg-devel
thilo has quit [Changing host]
thilo has joined #ffmpeg-devel
MrZeus__ has quit [Ping timeout: 264 seconds]
cone-887 has joined #ffmpeg-devel
<cone-887>
ffmpeg Paul B Mahol master:aad322397852: avfilter/vf_corr: add slice threading support
<cone-887>
ffmpeg Paul B Mahol master:f84412d6f4e9: avfilter/vf_corr: for all zero returns zero score instead of 1
<Traneptora>
left shifting a negative integer is UB, right?
<Lynne>
yup
AbleBacon has joined #ffmpeg-devel
navi has quit [Quit: WeeChat 4.0.4]
rom1v has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
rom1v has joined #ffmpeg-devel
lemourin has quit [Read error: Connection reset by peer]
lemourin has joined #ffmpeg-devel
jamrial has quit []
catfella__ has quit [Quit: Leaving]
kurosu has quit [Quit: Connection closed for inactivity]
qeed has quit [Quit: Leaving]
durandal_1707 has quit [Ping timeout: 268 seconds]
durandal_1707 has joined #ffmpeg-devel
cone-887 has quit [Quit: transmission timeout]
HarshK23 has joined #ffmpeg-devel
fengdaolong has joined #ffmpeg-devel
kurosu has joined #ffmpeg-devel
<Traneptora>
why is END_NOT_FOUND equal to -100 when -100 is otherwise a perfectly valid output for a parser's next?
mkver has quit [Ping timeout: 255 seconds]
TheSashmo has joined #ffmpeg-devel
fengdaolong has quit [Quit: WeeChat 4.1.1]
TheSashm_ has quit [Ping timeout: 256 seconds]
s55 has quit [Ping timeout: 245 seconds]
sr55 has joined #ffmpeg-devel
Teukka has quit [Read error: Connection reset by peer]
Teukka` has joined #ffmpeg-devel
<Lynne>
is it halal for a library to request that _FILE_OFFSET_BITS is always defined to 64?
<elenril>
heresy
<psykose>
very halal
<Lynne>
even if defined >= 64 (for hypothetical 128bit systems)?
<Lynne>
msvc supports it, I'd rather use off_t because it allows for compatibility with that without defining NIH types or hardcoding 64-bit types
<psykose>
every platform supports it iirc
<psykose>
maybe not rhel5 or something similarly ancient because i forget what glibc was doing back then
<psykose>
imo the hypothetical 128 also doesn't exist (why would you need a 128bit file offset, when even on a 128bit system 64bit is all the range that is realistically usable for such a thing)
<haasn>
durandal_1707: waiting for review
<Lynne>
psykose: 128bit systems are available, as in risc-v on an emulator
lexano has quit [Ping timeout: 252 seconds]
<psykose>
register width yes, but i don't see why that would raise file offset too
lexano has joined #ffmpeg-devel
philipl has quit [Ping timeout: 260 seconds]
philipl has joined #ffmpeg-devel
<Lynne>
meh, better not, int64 is enough then
kurosu has quit [Quit: Connection closed for inactivity]
<courmisch>
what if I want my file offsets expressed in nanobits?
<Lynne>
flip a bit once every 1000000000 bytes
kurosu has joined #ffmpeg-devel
dellas has joined #ffmpeg-devel
AbleBacon has quit [Read error: Connection reset by peer]
kepstin has quit [Remote host closed the connection]
<Traneptora>
Lynne: no results on google. in 2024 they're removing access for password auth but oauth will still work with imap
<JEEB>
yea I would have been surprised if they removed the oauth stuff since they went through all the effort to add oauth there :D
<Lynne>
it's what I heard, I'll ask for more info
<Traneptora>
though not sure how app-passwords are affected
<Traneptora>
or how it affects git-send-email
<Lynne>
but between forcing everyone to pay/run their own mail, having to admin a gittea/gitlab instance, or piggybacking off of someone else's instance, not too many options
<JEEB>
paying for email is not too bad, it's just that it's really hard to get people back to that like in the ISP days. ("5 megs of email storage included in your monthly payment!") now that everyone's been conditioned to seemingly getting it for free
<JEEB>
I was actually surprised that my father was able to keep his ISP-provided email by paying for it, even after changing ISPs
<JEEB>
I would have expected the response to be "no, we do not have such a service level" or something
<Lynne>
the issue with that is that pretty much every email service nowadays bundles a whole office suite
<Lynne>
there are only a few no-nonsense services, and out of those, most are privacy-focused, so you get no/awful mailing list support
<Lynne>
since mailing lists are an awful hack
qeed has joined #ffmpeg-devel
<llyyr>
self hosting mail seems like a pain to get set up
<Lynne>
I couldn't figure it out, between cryptic and conflicting options on what to allow/reject, spam, dovecot being dovecot, and I host 4 'modern' services on a variety of backends
<Lynne>
the fact that email is bound to actual system accounts on linux was by far the biggest pain to work around
<Lynne>
because it involved learning a bunch of mainframe-era knowledge
cone-229 has quit [Quit: transmission timeout]
mkver has joined #ffmpeg-devel
Krowl has quit [Read error: Connection reset by peer]
_whitelogger has joined #ffmpeg-devel
Krowl has joined #ffmpeg-devel
ccawley2011_ has quit [Ping timeout: 245 seconds]
<kierank>
14:58:35 <llyyr> self hosting mail seems like a pain to get set up
<kierank>
Yes the problem is getting antispam approved
<kierank>
We need to move to gitlab, MLs are dead
<durandal_1707>
never
Krowl has quit [Read error: Connection reset by peer]
<llyyr>
moving to literally anything but trac will increase the amount of bug reports you get
catfella has joined #ffmpeg-devel
<elenril>
>implying that's a good thing
<jamrial>
no reports, no bugs!
<jamrial>
tag and ship
<llyyr>
so true
ccawley2011_ has joined #ffmpeg-devel
<BtbN>
The main issue with trac is that the IRC bot is dead
<BtbN>
takes forever to notice a relevant issue being opened
qeed has quit [Quit: Leaving]
<elenril>
why is it dead?
<durandal_1707>
because you are not maintaining it
Krowl has joined #ffmpeg-devel
Hobbyboy has quit [Quit: The BNC has broken!]
HarshK23 has quit [Quit: Connection closed for inactivity]
<frankplow>
The technical aspect of self-hosting email is fine, but getting past the spam filters of megacorps (Microsoft was the worst iirc) is near impossible. Far as I can gather these days it's pretty much an IP whitelist.
<frankplow>
I've found self-hosting inbound email then using a smarthost (set up using an SMTP relay so I don't have to reconfigure a load of clients if I change the config) for outbound to work without being too much of a headache.
<frankplow>
Is there a good way to adjust probe scores for formats? Issue #10703 is occurring because the sample MP3 file happens to have valid VVC data within it. The MP3 probe *feels* like it should be stronger to me, so can I just change mp3dec.c:120 to return `AVPROBE_SCORE_EXTENSION + 2` or is there some better way of doing this?
<durandal_1707>
simple hacks are unacceptable
<durandal_1707>
probe for mp3 can sure be more detailed
<Lynne>
wire up a decoder while probing, then do an RDFT and see if the audio spectrum looks laplacian
<Lynne>
only way to be sure it's an MP3
<Lynne>
actually there's a crc, I forgot I wrote that
<courmisch>
somebody needs to rewrite Gitlab in C
<kierank>
Daemon404: can't you have a file that's a valid mp3 and a valid srt file or somehing like that?
<Lynne>
you can have an mp3 that's a valid exe or a valid png
<durandal_1707>
examples?
<JEEB>
courmisch: so you can get moar security themed papers written about it? 8)
<kierank>
courmisch: pretty sure any of the c sdp parsers are exploit central
cone-589 has joined #ffmpeg-devel
<cone-589>
ffmpeg Paul B Mahol master:8888574d1076: avfilter/vsrc_gradients: add commands support
<cone-589>
ffmpeg Paul B Mahol master:e3e3531d1ed8: avfilter/vsrc_gradients: make rotation always continuous if speed changes
<JEEB>
sdp sounds like the best mix of complexity and random implementations and strings/binary in strings
<courmisch>
Gitlab is sloooooooow
<courmisch>
rewrite it in Rust
<JEEB>
now that sounds much more like it
<JEEB>
although it will still not help if the API queries are slow due to DB
<another|>
SIMD in chocolate gateau
<JEEB>
or if it is the stuff trying to prettify what it is trying to show
<JEEB>
client side
<Lynne>
my forced meme caught on!
<another|>
barely
<durandal_1707>
GUI is SLOOOW
<kierank>
JEEB: memcached
<JEEB>
dat cache
<another|>
courmisch: speed is not the be-all-end-all metric
<another|>
s/mem/meme/
<durandal_1707>
Lynne: is using RDFT for audio metric useful? something that just calculates squared diffs between two bins of same index?
<elenril>
courmisch: you mean haskell
<JEEB>
haskell <3
elastic_dog has quit [Ping timeout: 276 seconds]
<Son_Goku>
hey Lynne, have you tested your vulkan video code in 6.1 with a build with a subset of codecs? I get this error during my build where I only have AV1 vulkan decode enabled: https://paste.centos.org/view/511c155e
<durandal_1707>
speaker locations are induced by their name of channel
<rix>
Their resulting channel assignment looks like this: C LFE M1 M2 M3 M4 M5 M6 M7 U1 U2 U3 Obj1 Obj2
<durandal_1707>
rix: and this dolby thing does not store pcm of certain channel at all
<another|>
courmisch: sure. that's quite subjective though
<JEEB>
&41
<JEEB>
whoops
<another|>
JEEB: weechat. go.py
<rix>
durandal_1707: what do you mean does not store pcm?
<courmisch>
another|: it's not subjective if it's slow enough to time itself out
<durandal_1707>
rix: pcm that belongs to fixed channel speaker
<JEEB>
another|: it's a case of switching between keyboard layouts :)
<JEEB>
/41 would have gone to window 41
<another|>
courmisch: yeah, okay. that's definitely too slow. Shitty peering of your ISP can also be a problem
<JEEB>
I have .fi, .ru and .jp layouts on this boxen
<courmisch>
another|: I'm pretty sure it's not a bandwidth problem
<JEEB>
so I might misremember on which exact key / is
<rix>
durandal_1707: any reference?
<JEEB>
or well, at that point it's muscle memory :P
<courmisch>
I blame RoR
<another|>
JEEB: Alt+G - ffm - Enter
<Lynne>
Son_Goku: I'm not seeing vulkan_av1 in the configure line
<JEEB>
rix: nice that they have documented some of that stuff
<rix>
JEEB: yeah nice that they made it publicly available
<Son_Goku>
Lynne: should it be explicitly added as a decoder?
<Son_Goku>
it seemed to have auto-enabled with av1 being enabled as a decoder and vulkan being enabled
<Son_Goku>
but I can try adding it
<rix>
I think the most common TrueHD ATMOS 16 channel presentations today is: LFE Obj1 ... ObjN, where N<=15
BetweenUs has joined #ffmpeg-devel
<rix>
should we dedicate 16 bits in the AV_CHAN_ bitmap for the 16 possible dynamic objects? And another 17 bits for the 17 possible ISF layers?
<Son_Goku>
Lynne: trying it now
<JEEB>
rix: thankfully the new AVChannelLayout means you can just have N object based channels in there
<JEEB>
although not sure if object channels are yet defined
<JEEB>
see how the other fancy channel layout thing is done
<JEEB>
ambisonics
<rix>
in mlp code we still use uint64_t bit mask to represent channel layout
<JEEB>
yea but you can't just have OBJECT_1...16 just for that, since they're all equally objects, just N of them
<JEEB>
it needs to be an AVChannelLayout or so at the end of the day
<JEEB>
yea I see it uses av_channel_layout_from_mask right now
<JEEB>
and if the objects are after that, it's still usable
<JEEB>
as in, after all the normal channels
<rix>
it's a bit more complicated than that
<rix>
if 16 channel decoding is enabled, it would ignore all the 2/6/8 channel layout, and override it with the specific layout for 16 channels
<rix>
and usually that's just LFE Obj1 ... ObjN
MrZeus has quit [Ping timeout: 245 seconds]
<JEEB>
so LFE + those
<JEEB>
and yea, technically it's always more complicated due to existing code.
<rix>
any code I can look at how ambisonic is doing this?
<elenril>
rix: maybe what you want is a new channel order type
<JEEB>
it'll be one of those mixed ones, channels (in this case LFE) and objects
<JEEB>
this is also possibility in the MP4 PCM mappings
BetweenUs has quit [Quit: Leaving]
<JEEB>
(which the guy conveniently ignored in my review comments)
<JEEB>
rix: libavcodec/opus_parse.c I guess is one thing where I notice a reference?
<JEEB>
`git grep "AMBISONIC"`
<rix>
opus_parse.c uses AV_CHANNEL_ORDER_AMBISONIC which implicitly giving the channel orders by their position in the stream
<Son_Goku>
Lynne: so that didn't work
<rix>
I think for THD ATMOS we need AV_CHANNEL_ORDER_CUSTOM
<Lynne>
Son_Goku: make clean + git clean -f?
<JEEB>
rix: that or mixed, yes.
<JEEB>
the mixed one you would have to add
<JEEB>
but custom initially could be utilized for development
<rix>
ok. but at least I would need to get rid of all the bit mask based layout and use AVChannelLayout consistently
<JEEB>
in theory since there seemed to be a for loop, you could add an "object channel" kind of mask, and then add that to the specific channel in the array.
<JEEB>
not that I've looked at the rest of the code :)
Krowl has quit [Read error: Connection reset by peer]
<rix>
how can I create a decoder option to enable 16 channel decoding? Since it won't be useful without an OAR, I don't want to enable it by default
<durandal_1707>
CUSTON mode and 16 nb_channels
<durandal_1707>
in ch_layout
<JEEB>
rix: you have AVOptions defined there in the decoder I presume :)
<JEEB>
then when you first get something built, you can test that it gets exposed with `ffmpeg -h decoder=truehd`
qeed has joined #ffmpeg-devel
<durandal_1707>
Lynne: there is also goertzel way to obtain bins
<Son_Goku>
Lynne: each build is clean
<Son_Goku>
I'm generating a clean chroot build each time
<rix>
is ffmpeg the right project to work on if we want to achieve HDMI passthrough support for TureHD and EC3 through Dolby MAT? or is it more of the responsibility of players integration?
<BtbN>
That's very much the domain of the player
<JEEB>
rix: there is a spdif encoder in FFmpeg which is then utilized by players etc
<JEEB>
so that you get the required kind of data
beastd has quit [Ping timeout: 276 seconds]
<JEEB>
but the actual configuration of the audio device etc is up to the player
<rix>
i see but not the transport layer e.g. driver integration etc
<JEEB>
yea
<Lynne>
Son_Goku: does make libavcodeco/vulkan.o + vulkan_video + vulkan_decode before a build fix it?
<Son_Goku>
as in "make libavcodec/vulkan.o libavcodec/vulkan_video.o libavcodec/vulkan_decode.o"?
<Lynne>
I honestly have zero idea what's going on, there's no difference between vaapi which you enable and vulkan in terms of building
<Lynne>
yes
<Son_Goku>
there is no vulkan_decode.o in the normal build
<Son_Goku>
so I suspect if I explicitly do this, it will work
<Son_Goku>
running a build now
beastd has joined #ffmpeg-devel
<BtbN>
So, apparently because we have DECLARE_ALIGNED(32, ...) on a bunch of fields in SingleChannelElement in aac.h, gcc can now assume the whole struct is at least 32 byte aligned. Which makes it emit avx instructions for it, which then explodes.
<BtbN>
In short, building ffmpeg with "--cpu=anything_with_avx --disable-avx" can result in crashes
<durandal_1707>
that is silly combo
<BtbN>
Well, but a valid one.
<BtbN>
And even --cpu=x86_64 --disable-avx is technically invalid, since we then have a struct that promises the compiler at least 32 byte alignment, but only gets 16 byte alignment from us.
<BtbN>
So it might still crash, just happens not to