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 has been released! | Please read ffmpeg.org/developer.html#Code-of-conduct
TheSashmo has quit [Ping timeout: 240 seconds]
lexano has quit [Ping timeout: 260 seconds]
thilo has quit [Ping timeout: 268 seconds]
thilo has joined #ffmpeg-devel
IndecisiveTurtle has quit [Ping timeout: 260 seconds]
cone-949 has quit [Quit: transmission timeout]
q66 has quit [Quit: WeeChat 4.0.2]
iive has quit [Quit: They came for me...]
qeed has quit [Quit: qeed]
arch1t3cht1 has joined #ffmpeg-devel
arch1t3cht has quit [Ping timeout: 268 seconds]
arch1t3cht1 is now known as arch1t3cht
lemourin has quit [Quit: The Lounge - https://thelounge.chat]
lemourin has joined #ffmpeg-devel
jamrial_ has joined #ffmpeg-devel
jamrial has quit [Read error: Connection reset by peer]
System_Error has quit [Remote host closed the connection]
System_Error has joined #ffmpeg-devel
q66 has joined #ffmpeg-devel
qeed has joined #ffmpeg-devel
feiwan1 has quit [Remote host closed the connection]
jamrial_ has quit []
Martchus_ has joined #ffmpeg-devel
Martchus has quit [Ping timeout: 268 seconds]
HarshK23 has joined #ffmpeg-devel
Livio has joined #ffmpeg-devel
mkver has joined #ffmpeg-devel
Livio has quit [Ping timeout: 256 seconds]
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #ffmpeg-devel
uartie has quit [Quit: ZNC 1.7.5+deb4 - https://znc.in]
uartie has joined #ffmpeg-devel
Krowl has joined #ffmpeg-devel
Krowl has quit [Read error: Connection reset by peer]
ngaullier has joined #ffmpeg-devel
Krowl has joined #ffmpeg-devel
System_Error has quit [Remote host closed the connection]
System_Error has joined #ffmpeg-devel
MisterMinister has quit [Ping timeout: 252 seconds]
Krowl has quit [Quit: Krowl]
Krowl has joined #ffmpeg-devel
mkver has quit [Ping timeout: 268 seconds]
mkver has joined #ffmpeg-devel
Krowl has quit [Quit: Krowl]
Krowl has joined #ffmpeg-devel
kurosu has joined #ffmpeg-devel
Krowl has quit [Read error: Connection reset by peer]
System_Error has quit [Remote host closed the connection]
arch1t3cht has quit [Quit: The Lounge - https://thelounge.chat]
ccawley2011 has joined #ffmpeg-devel
j45_ has joined #ffmpeg-devel
j45 has quit [Ping timeout: 260 seconds]
j45_ is now known as j45
j45 has quit [Changing host]
j45 has joined #ffmpeg-devel
System_Error has joined #ffmpeg-devel
c1480 has quit [Ping timeout: 268 seconds]
<kurosu> "av_assert0(size > 0);" <- Not sure when something is meant to be a true assert, or something that is actually to tell the compiler/linter that something cannot happen
<kurosu> I don't think that code resolves to __assume or __builtin_unreachable ?
<kurosu> (one of the av_asserts)
arch1t3cht has joined #ffmpeg-devel
lexano has joined #ffmpeg-devel
<mkver> kurosu: We currently don't use __builtin_unreachable at all; an av_assert is either an actual check or nothing (depending upon ASSERT_LEVEL).
jamrial has joined #ffmpeg-devel
<mkver> kurosu: I intend to add some wrapper around builtin_unreachable.
arch1t3cht has quit [Quit: The Lounge - https://thelounge.chat]
arch1t3cht has joined #ffmpeg-devel
System_Error has quit [Remote host closed the connection]
System_Error has joined #ffmpeg-devel
rvalue- has joined #ffmpeg-devel
<kurosu> ok, __assume is the MSVC equivalent, in case that matters
rvalue has quit [Ping timeout: 264 seconds]
Krowl has joined #ffmpeg-devel
<Lynne> dav1d has some nice macros I've copied
<Lynne> funnily enough it seems assert() is a macro that you can undef
rvalue- is now known as rvalue
rvalue has quit [Remote host closed the connection]
rvalue has joined #ffmpeg-devel
<mkver> Lynne: This is not funny; this is actually the way it is supposed to be.
Livio has joined #ffmpeg-devel
System_Error has quit [Remote host closed the connection]
<courmisch> jamrial: is there a hold up on LPC33?
<jamrial> courmisch: if you have a riscv version for it, i'll push my patches
<Gramner> using __builtin_unreachable to indicate constraints to the compiler does improve code generation a fair amount in some cases
System_Error has joined #ffmpeg-devel
<mkver> BBB: This also happens without frame-threading (which only adds a constant amount of delay). Most decoders just don't check AV_CODEC_FLAG_LOW_DELAY at all.
<BBB> I agree on the point that some decoders could check the lowdelay flag
<kurosu> hmmm dav1d/include/common/attributes.h:137:#define assert __assume
<BBB> however, my point was that his statement that "there is no reason to ever delay [bla bla]" is untrue in the case of frame threading
<kurosu> Didn't know dav1d used it
<kurosu> but makes sense, somehow :D
<BBB> mkver: in other words, your point is correct by so is mine :)
<BBB> s/by/but/
<BBB> sorry, early morning here
<mkver> BBB: Actually, setting the low_delay flag disables frame threading.
<BBB> cool, that actually makes sense I guess
<Gramner> yeah, dav1d turns asserts into __builtin_unreachable/__assume in release builds. -fgotta-go-fast
<BBB> mkver: so I guess what you're saying (and what michael henrik is looking for) is for broader implementation of the lowdelay flag across decoders?
<mkver> BBB: Yes. But notice that it is not set in his code snippet.
<BBB> I also noticed andrey turkin did not mention the lowdelay flag specifically in his comment
<mkver> In the first version of my mail, I added that he should set the low delay flag, but then removed it from the mail given that it would not help with his case at all.
<BBB> :) right
<BBB> his use case is a bit special anyway
<mkver> BBB: Andrey Turkin wrote "when the decoder is set up to ignore B frames" which could mean setting the low delay flag (or the skip_frame flag).
Livio has quit [Ping timeout: 255 seconds]
<BBB> to me that sounded like the skip-frame flag. which is also not implemented in some decoders
<mkver> And the skip_frame flag is allowed to be changed at any time, so it is unclear whether it can be used to skip reordering.
<BBB> this is where "implementation-defined" becomes a curse word
Livio has joined #ffmpeg-devel
<elenril> BBB: it's untrue in general
<elenril> you can have reordering without b-frames, they are completely independent in h264 and newer
<BBB> also true :)
Krowl has quit [Read error: Connection reset by peer]
<mkver> elenril: Really? I thought H.264 P-frames can't be reordered.
<elenril> I don't know about any such restriction
<elenril> could be wrong though
<elenril> I only recall PoC constraints for IDR frames
<elenril> err POC
<JEEB> &34
<JEEB> whoops
<BBB> mkver: I agree it's not practically useful, but I believe in theory you could have a frame ordering of I:0,P:2,P:1 where P:1 uses 0 and 2 for unidirectional prediction (I believe bidir is disabled on P frames)
<BBB> it's sort of a legalistic argument since it's quite pointless
<elenril> I'm sure somebody could come up with a reason to do it
<elenril> I think there's also no requirement for b-slices to actually be bidirectional
<elenril> so you could have bframes without reordering
Krowl has joined #ffmpeg-devel
c1480 has joined #ffmpeg-devel
<Lynne> JEEB: ping
Livio has quit [Ping timeout: 240 seconds]
<courmisch> 0 days without getting trolled on the mailing list.
cone-589 has joined #ffmpeg-devel
<cone-589> ffmpeg James Almer master:0380a03f1f9d: avcodec/flacdsp: split off lpc33 into a dsp function
<cone-589> ffmpeg James Almer master:0920f506a782: checkasm/flacdsp: add a test for lpc33
<JEEB> Lynne: pong.
<cone-589> ffmpeg Rémi Denis-Courmont master:d03cdfa2b6d7: checkasm/riscv: test misaligned before V
<cone-589> ffmpeg Rémi Denis-Courmont master:ba38d0e32825: lavc/pixblockdsp: add scalar get_pixels_unaligned
<Lynne> JEEB: top left/right surround, and double-checking?
canjar has quit [Remote host closed the connection]
canjar has joined #ffmpeg-devel
<JEEB> Lynne: for top left/right surround we don't have those so new channels would be required.
Krowl has quit [Read error: Connection reset by peer]
<sdc> hi jamrial -- just fyi I might have made a mistake reading the vvc spec re: dmvr sad calculation -- it seems like it might only apply to 8x16, 16x8 and 16x16 blocks
<JEEB> I'll try to do some checks, but at the end of the day this will also be a thing where we need to start marking what the av channels actually mean. so that people don't need to go through the mess that I went through... probably will have to write some emails on the ML
<JEEB> https://mediaarea.net/AudioChannelLayout is a godsend since it's someone actually trying to match 23091-3 (utilized in USAC) , ITU BS 2051 + IEC 62574 against WAVE
<JEEB> and apple actually defining a funky mapping that got me really broken
<jamrial> sdc: you need to bring this to your mentor
<BBB> courmisch: how did you make that line red? that's pretty cool
<sdc> yeah we were discussing, I just noticed your patches and didn't want you to do any unnecessary work
<JEEB> BBB: IRC notice
<BBB> ah
<BBB> so was that just visible for me then?
<JEEB> no, he noticed the channel methinks
<BBB> ah
<BBB> test
<BBB> ah yes
<courmisch> hmm, ==14491== Conditional jump or move depends on uninitialised value(s)
<courmisch> ==14491== at 0x143E23: checkasm_check_func (checkasm.c:932)
<courmisch> ==14491== by 0x18EEA5: check_mc (vp8dsp.c:286)
<mkver> courmisch: Does it still happen with --expensive-definedness-checks=yes?
<courmisch> mkver: yes, it does
<BBB> checkasm calls asm, right?
<BBB> in my experience, valgrind (or msan) don't play well with asm :(
<courmisch> I'm pretty sure it's the function pointer that's messed up
Krowl has joined #ffmpeg-devel
<courmisch> yes, it is the function pointer
<BtbN> Can someone who is familiar with opus/ogg packaging interpret this, and tell me if the naive way of putting opus into flv in an avformat is correct? https://github.com/veovera/enhanced-rtmp/issues/30#issuecomment-2125573047
<Lynne> yo dawg, so I heard you like containers, so we put containers in your containers, so you can mux while you mux
<BBB> ogg-in-wav
* BBB runs
MisterMinister has joined #ffmpeg-devel
<courmisch> yeah well, I think I found the problem
<courmisch> checkasm does not call vp78_dsp_init
<courmisch> so the MC function pointers are just garbage
<JEEB> \o/
<courmisch> it's barely believiable that it didn't crash before
<courmisch> so I don't believe it.
<courmisch> and assume that I messed something locally
<courmisch> yep
<Lynne> holy shit, enhanced rtmp uses amf (flash-era actionscript) to signal metadata
<JEEB> ye, I think original RTMP also did that?
<JEEB> since it has this whole command sending and receiving model
<BtbN> yeah, eRTMP did not come up with that
<Lynne> 2004, anno domini, macrovision engineers researched a way to induce disgust over plain TCP/IP, and they made RTMP
<mkver> Lynne: s/2004/MMIV/
canjar has quit [Quit: Leaving]
<Lynne> for 2 millenia, scientists have been trying to uncover the true meaning of the rotas square, little did they know, it was encoded actionscript all along
<courmisch> you know a codec must be extremely popular when it has no x86 optimisations
Krowl has quit [Read error: Connection reset by peer]
ngaullier has quit [Read error: Connection reset by peer]
<kurosu> "I think there's also no requirement for b-slices to actually be bidirectional" <- or with at least 2 frames in the "DPB" :D
MrZeus has joined #ffmpeg-devel
<cone-589> ffmpeg Andreas Rheinhardt master:aff24c165827: avcodec/flacdec: Remove unused variable
AbleBacon has joined #ffmpeg-devel
MrZeus has quit [Read error: Connection reset by peer]
MrZeus has joined #ffmpeg-devel
mkver has quit [Ping timeout: 268 seconds]
rvalue- has joined #ffmpeg-devel
rvalue has quit [Ping timeout: 268 seconds]
rvalue- is now known as rvalue
microchip_ has quit [Remote host closed the connection]
microchip_ has joined #ffmpeg-devel
System_Error has quit [Remote host closed the connection]
System_Error has joined #ffmpeg-devel
kurosu has quit [Quit: Connection closed for inactivity]
mkver has joined #ffmpeg-devel
System_Error has quit [Ping timeout: 260 seconds]
IndecisiveTurtle has joined #ffmpeg-devel
___nick___ has joined #ffmpeg-devel
___nick___ has quit [Client Quit]
kurosu has joined #ffmpeg-devel
___nick___ has joined #ffmpeg-devel
cone-589 has quit [Quit: transmission timeout]
System_Error has joined #ffmpeg-devel
System_Error has quit [Client Quit]
System_Error has joined #ffmpeg-devel
cubicibo has joined #ffmpeg-devel
iive has joined #ffmpeg-devel
ccawley2011 has quit [Read error: Connection reset by peer]
cubicibo has quit [Quit: Client closed]
MisterMinister has quit [Ping timeout: 256 seconds]
kurosu has quit [Quit: Connection closed for inactivity]
___nick___ has quit [Ping timeout: 240 seconds]
cone-870 has joined #ffmpeg-devel
<cone-870> ffmpeg Michael Niedermayer release/6.1:572985605f04: avfilter/signature_lookup: Fix 2 differences to the refernce SW
<cone-870> ffmpeg Michael Niedermayer release/6.1:057b8d65e3c5: avfilter/signature_lookup: Dont copy uninitialized stuff around
<cone-870> ffmpeg Michael Niedermayer release/6.1:3d742d20ab82: avcodec/cbs_h2645: Check NAL space
<cone-870> ffmpeg Michael Niedermayer release/6.1:d92ef4f846fd: avfilter/vf_thumbnail_cuda: Set ret before checking it
<cone-870> ffmpeg Michael Niedermayer release/6.1:66bcc6463e53: doc/examples/qsv_transcode: Simplify loop
<cone-870> ffmpeg Michael Niedermayer release/6.1:f72b41c42100: doc/examples/vaapi_transcode: Simplify loop
<cone-870> ffmpeg Michael Niedermayer release/6.1:9493a2d06619: doc/examples/qsv_transcode: Simplify str_to_dict() loop
<cone-870> ffmpeg Michael Niedermayer release/6.1:69e12a3f431e: doc/examples/qsv_transcode: Initialize pointer before free
<cone-870> ffmpeg Michael Niedermayer release/6.1:1f090edd02af: avcodec/hevcdec: Check ref frame
<cone-870> ffmpeg Michael Niedermayer release/6.1:554787a53e95: avcodec/pngdec: Check last AVFrame before deref
<cone-870> ffmpeg Michael Niedermayer release/6.1:b8d75b8ebc8f: avcodec/ac3_parser: Check init_get_bits8() for failure
<cone-870> ffmpeg Michael Niedermayer release/6.1:e67741feea1f: avcodec/atrac9dec: Check init_get_bits8() for failure
<cone-870> ffmpeg Michael Niedermayer release/6.1:115853a821b6: avformat/kvag: Check sample_rate
<cone-870> ffmpeg Michael Niedermayer release/6.1:19e6b871b6c1: avformat/mxfdec: Check body_offset
<cone-870> ffmpeg Michael Niedermayer release/6.1:e886fe5542cd: avcodec/avs2_parser: Assert init_get_bits8() success with const size 15
<cone-870> ffmpeg Michael Niedermayer release/6.1:77d5f217f3cc: avcodec/avs3_parser: assert the return value of init_get_bits()
<cone-870> ffmpeg Michael Niedermayer release/6.1:270ad2fd2f6a: avcodec/av1dec: bit_depth cannot be another values than 8,10,12
<cone-870> ffmpeg Michael Niedermayer release/6.1:c42b520ba580: avcodec/av1dec: Change bit_depth to int
<cone-870> ffmpeg Michael Niedermayer release/6.1:e434c789af78: swscale/output: Fix integer overflow in yuv2rgba64_1_c_template
<cone-870> ffmpeg Michael Niedermayer release/6.1:6ed54900f73a: swscale/output: Fix integer overflow in yuv2rgba64_full_1_c_template()
<cone-870> ffmpeg Michael Niedermayer release/6.1:5017839ca0be: avcodec/wavarc: fix integer overflow in decode_5elp() block type 2
<cone-870> ffmpeg Michael Niedermayer release/6.1:e2afcd74ce77: avcodec/amrwbdec: assert mode to be valid in decode_fixed_vector()
<cone-870> ffmpeg Michael Niedermayer release/6.1:1cb422a0ad42: avcodec/mpegvideo_enc: Fix 1 line and one column images
<cone-870> ffmpeg Michael Niedermayer release/6.1:ff547f5fd498: avformat/concatdec: Check file
<cone-870> ffmpeg Michael Niedermayer release/6.1:36713f42ab54: doc/examples/demux_decode: Simplify loop
<cone-870> ffmpeg Michael Niedermayer release/6.1:b91b594dbd5d: tools/opt_common: Check for malloc failure
<cone-870> ffmpeg Michael Niedermayer release/6.1:cc773eba6bc8: fftools/ffplay: Check return of swr_alloc_set_opts2()
<cone-870> ffmpeg Michael Niedermayer release/6.1:bc08dfdf5d9f: avcodec/cbs_av1: Avoid shift overflow
<cone-870> ffmpeg Michael Niedermayer release/6.1:f3931154bb43: libavutil/base64: Try not to write over the array end
<cone-870> ffmpeg Michael Niedermayer release/6.1:21efa2af5329: avutil/tests/base64: Check with too short output array
<cone-870> ffmpeg Michael Niedermayer release/6.1:2de1f26366c9: avcodec/lpc: copy levenson coeffs only when they have been computed
<cone-870> ffmpeg Michael Niedermayer release/6.1:61f5019a51db: avcodec/h264_slice: Remove dead sps check
<cone-870> ffmpeg Michael Niedermayer release/6.1:b586ff27683a: avcodec/h2645_sei: Remove dead checks
<cone-870> ffmpeg Michael Niedermayer release/6.1:41550b0ebb01: avcodec/fmvc: remove dead assignment
<cone-870> ffmpeg Michael Niedermayer release/6.1:3ee5567c5459: avcodec/decode: decode_simple_internal() only implements audio and video
<cone-870> ffmpeg Michael Niedermayer release/6.1:c10b41608771: avcodec/exr: Fix preview overflow
<cone-870> ffmpeg Michael Niedermayer release/6.1:28eb4663d6bd: avcodec/qsvdec: Check av_image_get_buffer_size() for failure
<cone-870> ffmpeg Michael Niedermayer release/6.1:236001ce0b62: avcodec/jpeg2000dec: remove ST=3 case
<cone-870> ffmpeg Michael Niedermayer release/6.1:6db10d3be05d: avcodec/vp8: Forward return of ff_vpx_init_range_decoder()
<cone-870> ffmpeg Michael Niedermayer release/6.1:1b9de6ff2839: avcodec/vp3: Replace check by assert
<cone-870> ffmpeg Michael Niedermayer release/6.1:cc78679c840e: avcodec/vble: Check av_image_get_buffer_size() for failure
<cone-870> ffmpeg Michael Niedermayer release/6.1:d54198256e73: avcodec/vqcdec: Check init_get_bits8() for failure
<cone-870> ffmpeg Michael Niedermayer release/6.1:94849755fb50: avcodec/mpeg12dec: Use 64bit in bit computation
<cone-870> ffmpeg Michael Niedermayer release/6.1:8174b4206d6b: avcodec/mpeg4videodec: assert impossible wrap points
<cone-870> ffmpeg Michael Niedermayer release/6.1:7cc79bfda97c: avcodec/mpegvideo_enc: Fix potential overflow in RD
<cone-870> ffmpeg Michael Niedermayer release/6.1:4e53ea496cad: avcodec/mscc & mwsc: Check loop counts before use
MrZeus has quit [Read error: Connection reset by peer]
<cone-870> ffmpeg James Almer release/7.0:17674b150f69: avformat/mov: store sample_sizes as unsigned ints
MisterMinister has joined #ffmpeg-devel