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
<compnn> Richardcavell_, sure send it again if you dont see it on the list
<compnn> Richardcavell_, and check your spam dir in your mail, sometimes our mail system sends a 'hey reply to this email to prove you are human' email
iive has quit [Quit: They came for me...]
System_Error has quit [Remote host closed the connection]
minimal has quit [Quit: Leaving]
System_Error has joined #ffmpeg-devel
Guest55 has joined #ffmpeg-devel
Guest55 has quit [Quit: Client closed]
azhn has joined #ffmpeg-devel
Martchus_ has joined #ffmpeg-devel
Martchus has quit [Ping timeout: 260 seconds]
jamrial has quit []
azhn has quit [Ping timeout: 272 seconds]
Traneptora has quit [Quit: Quit]
x4tch has quit [Quit: Client closed]
System_Error has quit [Remote host closed the connection]
Guest9 has joined #ffmpeg-devel
Guest9 has quit [Quit: Client closed]
<Richardcavell_> compnn, I sent it just now
<Richardcavell_> again, I mean
Anthony_ZO has quit [Remote host closed the connection]
System_Error has joined #ffmpeg-devel
TheVibeCoder has joined #ffmpeg-devel
mkver has joined #ffmpeg-devel
ngaullier has joined #ffmpeg-devel
Anthony_ZO has joined #ffmpeg-devel
mkver has quit [Ping timeout: 244 seconds]
mkver has joined #ffmpeg-devel
<TheVibeCoder> AAC crash & burn
IndecisiveTurtle has joined #ffmpeg-devel
bsFFFFFF has joined #ffmpeg-devel
<kasper93> it's your time to fix
<Richardcavell_> I've posted this to the user list twice and it hasn't gone out
<Richardcavell_> Hello. I'm working on a project for the TRS-80 Color Computer, which has 6-bit audio output.
<Richardcavell_>
<Richardcavell_> I want the output to be monaural unsigned 8-bit PCM, but with the lower 2 bits forced to zero.
<Richardcavell_>
<Richardcavell_> As though every byte has gone through an AND with 0xfc
<Richardcavell_> So far I have this:
<Richardcavell_>
<Richardcavell_> ffmpeg -i inputfile -v warning -af "acrusher=bits=6,lowpass=f=3750,aresample=ochl=mono:osf=u8:osr=8192:dither_method=triangular" -f u8 -c:a pcm_u8 outputfile
<Richardcavell_>
<Richardcavell_> I got the acrusher=bits=6 idea from someone on #ffmpeg on Libera.chat, but it doesn't seem to work. hexdump outputfile shows that the bytes are not clipped the way I want.
<Richardcavell_>
<Richardcavell_> Richard
bsFFFFFF has quit [Ping timeout: 276 seconds]
bsFFFFFF has joined #ffmpeg-devel
<TheVibeCoder> lowspass will change bits again
<TheVibeCoder> and acrusher is effect, not quantization filter
<TheVibeCoder> and again resampling filter will change with dither samples even more
<TheVibeCoder> so your mission to have lower 2 bits 0 is failed
<TheVibeCoder> kasper93: sure will fix in librempeg soonTM
<TheVibeCoder> also aeval filter operates in floats or doubles
<TheVibeCoder> so you might try with it
microchip_ has quit [Quit: There is no spoon!]
<Richardcavell_> TheVibeCoder, so should I just delete the acrusher part?
<TheVibeCoder> ffmpeg -i input_file -af "aeval=round(64*val(ch))/64:c=same" -f u8 output_file
<TheVibeCoder> try this
microchip_ has joined #ffmpeg-devel
<Richardcavell_> I don't know how to incorporate that into the other elements. Can you give me the full command?
<TheVibeCoder> that is full command
<TheVibeCoder> if you want 8192 sample rate?
<TheVibeCoder> ffmpeg -i input_file -af "aresample=8192,aeval=round(64*val(ch))/64:c=same" -f u8 output_file
<Richardcavell_> Well it produced output but the output is now something like 3 times the size and I don't know why
<TheVibeCoder> if you need 8192 rate with mono?
<Richardcavell_> Yes!
<TheVibeCoder> what is your input?
<Richardcavell_> A .wav file with something like 24 khz
<TheVibeCoder> ffmpeg -i input_file -af "aresample=osr=8192:ochl=mono,aeval=round(64*val(ch))/64:c=same" -f u8 output_file
<Richardcavell_> Now that produces a raw file that's 3 times the size of what it was before, and when I play it it's a really deep voice
<Richardcavell_> (The sound that I'm using is speech)
<TheVibeCoder> what you use to listen output?
<TheVibeCoder> probably you do not know correct sample rate of player
<Richardcavell_> The player is code that I wrote
<Richardcavell_> It can't handle more than 8000 hertz
<TheVibeCoder> so sample rate is 8192 or 16000 or 8000 ?
<TheVibeCoder> pick the correct value
<Richardcavell_> 8000
<TheVibeCoder> then replace 8192 in above ffmpeg cmd with the correct value
<Richardcavell_> I did. It's still not right.
<TheVibeCoder> then your player if faulty
<Richardcavell_> Is there any way I can get rid of a message that appears when ffmpeg runs? It's this:
<Richardcavell_> Guessed Channel Layout: mono
<Richardcavell_> I want to tell it that it's mono input, or else silence the warning
<TheVibeCoder> only that message? no
<TheVibeCoder> the u8 input store no channel layout
<TheVibeCoder> thus guessing is valid option
<Richardcavell_> It doesn't need to guess. I know what it is.
<Richardcavell_> How do I tell it?
<TheVibeCoder> ffmpeg -sample_rate 1337 -ch_layout 9.1.4 -f u8 -i input_file
<TheVibeCoder> ffmpeg -h demuxer=u8
<TheVibeCoder> Demuxer u8 [PCM unsigned 8-bit]:
<TheVibeCoder> Common extensions: ub.
<TheVibeCoder> pcm demuxer AVOptions:
<TheVibeCoder> -sample_rate <int> .D......... (from 0 to INT_MAX) (default 44100)
<TheVibeCoder> -ch_layout <channel_layout> .D......... (default "mono")
<TheVibeCoder> but if your ffmpeg version is older, that that may not be available at all
<TheVibeCoder> and 'mono' is there already the default
<TheVibeCoder> what ffmpeg version you have?
<Richardcavell_> 6.1.1
<TheVibeCoder> too old
bsFFFFFF has quit [Ping timeout: 252 seconds]
System_Error has quit [Remote host closed the connection]
Anthony_ZO has quit [Ping timeout: 252 seconds]
av500 has quit [Remote host closed the connection]
Chagall has quit [Quit: ZNC 1.9.0 - https://znc.in]
jamrial has joined #ffmpeg-devel
Chagall has joined #ffmpeg-devel
<haasn> Lynne: could you please take a quick look at https://ffmpeg.org//pipermail/ffmpeg-devel/2025-June/345535.html ?
<Lynne> why would it be insufficient? its just mapping in 1 image at a time, copying, and unmapping?
<Lynne> we don't really need to worry about images bigger than a few tens of megabytes
<haasn> that's not how memory allocation in vulkan works
<haasn> you are now allocating _all_ images from a very size limited address range
<haasn> the driver doesn't magically copy around images internally to move it in and out of that 256 MiB window like it does on opengl
<haasn> you'd have to do that with an extra copy yourself, thus defeating the purpose of the extension
<haasn> the allocation still counts against the budget of the exact memory heap it was allocated from
<haasn> even if you don't map it to RAM
<haasn> in practice, enabling host image transfers caused OOM errors on any machine without rebar
System_Error has joined #ffmpeg-devel
cone-712 has joined #ffmpeg-devel
<cone-712> ffmpeg Zhao Zhili master:fe45f5537b28: wasm/hevc: Add sao_band_filter
<cone-712> ffmpeg Zhao Zhili master:9c7b01928450: fftools/ffplay_renderer: Use new vulkan queue API
<cone-712> ffmpeg Zhao Zhili master:88ac69631e04: wasm/hevc: Add sao_edge_filter
<cone-712> ffmpeg Niklas Haas master:f883b7cf93ed: avfilter/vf_libplacebo: list AV_PIX_FMT_VULKAN first
<cone-712> ffmpeg Niklas Haas master:c0698840c41c: avfilter/vf_libplacebo: correctly update SAR to reflect scaled result
<cone-712> ffmpeg Niklas Haas master:7039a37e358e: avfilter/vf_libplacebo: add `reset_sar` option
Everything has joined #ffmpeg-devel
ngaullie has joined #ffmpeg-devel
ngaullier has quit [Ping timeout: 248 seconds]
ngaullie has quit [Remote host closed the connection]
ngaullie has joined #ffmpeg-devel
ngaullie has quit [Remote host closed the connection]
ngaullie has joined #ffmpeg-devel
ngaullie has quit [Remote host closed the connection]
ngaullie has joined #ffmpeg-devel
<mkver> haasn: Have you tested using the new sws implementation for regular fate?
witchymary has quit [Remote host closed the connection]
witchymary has joined #ffmpeg-devel
x4tch has joined #ffmpeg-devel
cone-712 has quit [Quit: transmission timeout]
cone-673 has joined #ffmpeg-devel
<cone-673> ffmpeg James Almer master:64e6f5d5fa2d: avformat/mov: set array entry count after the array is allocated in heif_add_stream()
DVedaa3 has joined #ffmpeg-devel
DVedaa3 has quit [Client Quit]
DVedaa3 has joined #ffmpeg-devel
x4tch has quit [Quit: Client closed]
<TheVibeCoder> /window 3
bsFFFFFF has joined #ffmpeg-devel
<haasn> mkver: yes
<haasn> it fails about 300 tests due to not being bit exact with the old swscale
<haasn> because of different rounding and dithering patterns
<haasn> none of the tests that care about PSNR regress, only CRC checks
<mkver> haasn: That is not the whole story.
<mkver> 1. There are unitialized reads (some stack allocation) in the fate-gifenc-pal8 test.
ngaullie has quit [Remote host closed the connection]
<mkver> 2. I get different fate results for several tests when compiling with Clang and -O3 than with GCC or Clang -O2 (Clang is v19).
<mkver> Calling something a "killer-feature" sounds infantile.
<haasn> it's a reference
<haasn> where do you see 1. in the FATE output?
<mkver> You don't, you run the test (either manually or with TARGET_EXEC="valgrind --error-exitcode=1").
<mkver> I found it because the fate checksum was flaky
<mkver> I have not tested arches besides x64.
<kierank> like 10l of cola, it's ffmpeg folkelore
bsFFFFFF has quit [Ping timeout: 248 seconds]
<Lynne> though its been like 9 years since it was last explained, and its actually from mplayer
<mkver> "killer-feature" is from mplayer?
<Lynne> no, 10l cola / 5l soda bottle
bsFFFFFF has joined #ffmpeg-devel
michael74 has joined #ffmpeg-devel
rvalue- has joined #ffmpeg-devel
michael74 has quit [Quit: Client closed]
rvalue has quit [Ping timeout: 276 seconds]
iive has joined #ffmpeg-devel
rvalue- is now known as rvalue
___nick___ has joined #ffmpeg-devel
mkver has quit [Ping timeout: 265 seconds]
<BtbN> Some recent commit broke my fate runner for msvc
<BtbN> configure never returns
<BtbN> but also no busy loop or anything
snoriman has quit [Quit: WeeChat 4.6.3]
bsFFFFFF has quit [Quit: bsFFFFFF]
<BtbN> The last three lines in config.log are: zscale_filter_deps='libzimg const_nan' \n mktemp -u XXXXXX \n kLCmDD
<TheVibeCoder> ffmpeg <<<< librempeg
bsFFFFFF has joined #ffmpeg-devel
bsFFFFFF has quit [Ping timeout: 248 seconds]
bsFFFFFF has joined #ffmpeg-devel
<Marth64[m]> I'm gonna run libre tonight for the first time
___nick___ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
___nick___ has joined #ffmpeg-devel
<TheVibeCoder> libre office ?
<Marth64[m]> I use that one everyday!
<Marth64[m]> librempeg tonight!
<Marth64[m]> I love LibreOffice. I do feel it runs best on Windows, strangely
putacho has joined #ffmpeg-devel
<BtbN> LibreOffice still fails to have any kind of working auto update
<BtbN> so I can't reasonably deploy it anywhere, cause people will let it rot and open any document someone mails to them...
<TheVibeCoder> bribe 365 office
<TheVibeCoder> kierank is proud user of all MS products line
<TheVibeCoder> Marth64[m]: why you will use librempeg?
microchip_ has quit [Ping timeout: 272 seconds]
<Marth64[m]> To me they are all tools in a box. FFmpeg, mkvtoolnix, eac3to, ..... I like having more tools in the box especially if they are differentiating
<Marth64[m]> So just curious to try it!
<nevcairiel> BtbN: now that you mention it, my msvc fate also hasnt submitted a result in 3 days
<TheVibeCoder> Marth64[m]: "killer features" : better audio resampling with ardftsrc filter, better audio filters, more decoders and frame threaded filters, and many more
<BtbN> nevcairiel: curiously, I run both msys+clang and msvc from the same script
<BtbN> the clang build works fine, but then the msvc one just gets permanently stuck configuring
<nevcairiel> the last success was N-119918-gee1f79b0fa
<BtbN> But how would that just get stuck?
<nevcairiel> it must be that change, how? ¯\_(ツ)_/¯
cone-673 has quit [Quit: transmission timeout]
<Marth64[m]> Thanks TheVibeCoder. I've got some noisy audio cassette captures that need work so that'll be a fun place to try
<TheVibeCoder> try aawiener filter
<Marth64[m]> will do
Marth64[m] is now known as Marth64
<TheVibeCoder> there also awiener - notice the difference
<nevcairiel> BtbN: tr is running and seemingly stuck, no clue why
<nevcairiel> hm its not just that, i killed tr and its not resuming
<nevcairiel> wbs: dont suppose you have an idea why your change would make configure get stuck?
<nevcairiel> (i reverted it, and it works, fwiw)
<nevcairiel> oddly it happens when i plain run configure on the command line, but when i try to make it happen with just the same commands, it just works
<nevcairiel> removing neither head or tr changes anything, just the cl invocation gets stuck, or rather, cl terminates, the subshell gets stuck
<beastd> which shell is used?
<nevcairiel> bash
<beastd> you have alternatives available? maybe it's somehow related to the implementation of redirections etc in the shell
<nevcairiel> the only alternative I have is dash which behaved the same
<nevcairiel> its probably some msys nonsense
<beastd> right, then it's probably not the shell
<beastd> interesting though it only happens in configure
<beastd> Does it only get stuck in the sub shell? or also plain `$_cc 2>&1 >/dev/null` in configure is enough?
<nevcairiel> it also happens with that
<nevcairiel> but i just figured something out
<nevcairiel> it works fine when _cc is cl.exe
<nevcairiel> it breaks when _cc=./compat/windows/mslink
<nevcairiel> oh i imagine i know why
<nevcairiel> link.exe has a paginated help page
<beastd> oh
<beastd> maybe try with </dev/null
<nevcairiel> piping stdout suppresses the pagination
<nevcairiel> redirecting it to devnull does not
<beastd> but maybe it will not paginate if stdin is empty+
<nevcairiel> that does work, but the entire change doesnt work for link.exe anyway, because its ident is on stdout
<nevcairiel> not stderr like the compiler
<beastd> oh ok
bsFFFFFF has quit [Ping timeout: 272 seconds]
<beastd> i don't know what it looks like and what has been tried before. does the ident text look similar in cl.exe and link.exe?
___nick___ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
___nick___ has joined #ffmpeg-devel
<nevcairiel> yes
___nick___ has quit [Client Quit]
<nevcairiel> just that the linker has it on stdout
<beastd> from the history i see the strat was `head -1` from the beginning. so could make sense to replace it with a grep and revert the wbs change
<BtbN> well, it's our wrapper. We could make it also put it to stderr, to be consistent
<BtbN> Or is there any situation where real mslink would be called?
___nick___ has joined #ffmpeg-devel
<nevcairiel> it could be if someone doesnt use toolchain=msvc
<nevcairiel> the wrapper is super basic and not really needed in many cases, it just tries to avoid some confusion between the MS linker and some other link.exe in path
<BtbN> Why does mslink end up in $cc to begin with?
<nevcairiel> the name is misleading
<nevcairiel> it probes all parts of the toolchain through that function
<nevcairiel> probe_cc ld "$ld"
<nevcairiel> should be from that call
<BtbN> ah, guess the patch also confused that then, hm
<nevcairiel> LD_IDENT is never used anywhere, but of course it still tries to get it :D
<nevcairiel> so not having it wouldnt be a huge break
<nevcairiel> we could close stdin and workaround liket hat
<BtbN> until one day someone does want to use it, and then we have random breakage again
<beastd> sounds a bit backwards :D
<BtbN> I could absolutely see someone make use of that variable with no concern for MSVC whatsoever, and then all the builds fail again
<nevcairiel> even CC_IDENT isnt used anywhere other then for logging it for fate
<nevcairiel> well and cmdtools print it
<nevcairiel> well i need to afk for a bit, maybe wbs has some other idea
<nevcairiel> summary TLDR: the probe_cc change makes link.exe get stuck on its interactive help output, also, link.exe outputs the ident on stdout, not stderr
<BtbN> Can you reply that on the ML?
<BtbN> I already brought the patch back up
<nevcairiel> sure
<beastd> What about using this `_ident=$($_cc 2>&1 | grep ^Microsoft | head -n1 | tr -d '\r')` ? (Sorry I'm guessing here as I don't have MS toolchain around.)
<BtbN> still needs null piped into stdin
<BtbN> but otherwise, that should work
<BtbN> I wonder why it doesn't get stuck already honestly
<nevcairiel> it detects the pipe and turns off the pagination
<nevcairiel> so that should in theory work
<beastd> doesn't need it because of the output redirection (as i understand it the stdout redirection >/dev/null changed the behavior)
<BtbN> the annoying part about this is the bunch of stuck fate runners this has caused now
<nevcairiel> mine get terminated on a timer for just such nonsense, but of course no builds eitherway
<beastd> yeah, getting "stuck" on prompt/read stdin is an annoying durable thing.
<BtbN> Mine aren't automatic, so I have noticed right away that the PC running them wasn't turning off as usual after a while
bsFFFFFF has joined #ffmpeg-devel
bsFFFFFF has quit [Client Quit]
aaabbb has quit [Ping timeout: 252 seconds]
<kasper93> funny, because I also added some msvc jobs and seems to not have problems
^Neo has quit [Read error: Connection reset by peer]
^Neo has joined #ffmpeg-devel
^Neo has quit [Changing host]
^Neo has joined #ffmpeg-devel
System_Error has quit [Ping timeout: 244 seconds]
Richardcavell_ has quit [Ping timeout: 244 seconds]
aaabbb has joined #ffmpeg-devel
<kasper93> what was the problem?
<kasper93> the race condition between stdout and stderr?
<kasper93> and now we even know that link.exe is stdout kind of guy
<kasper93> would this work?
<kasper93> $_cc > >(grep "^Microsoft") 2> >(grep "^Microsoft") | tr -d '\r'
IndecisiveTurtle has quit [Remote host closed the connection]
<kasper93> also `elif $_cc -nologo- 2>&1 | grep -q ^Microsoft` is likely affected too
<nevcairiel> the last one is fine, it just unified stdout and stderr
<nevcairiel> the problem seems to only come when you redirect stdout
<nevcairiel> while piping it is fine
<kasper93> affected by flush race condition
BradleyS has quit [Read error: Connection reset by peer]
<nevcairiel> is it? it just greps for it at beginning of line, not requires it to be first line
<kasper93> right
BradleyS has joined #ffmpeg-devel
<kasper93> so we can just use the same expression as in if
<kasper93> we already know we have this Microsoft line as ident
<kasper93> doesn't have to be first as you pointed out
HarshK23 has quit [Quit: Connection closed for inactivity]
michael32 has joined #ffmpeg-devel
michael32 has quit [Client Quit]
BradleyS has quit [Read error: Connection reset by peer]
BradleyS has joined #ffmpeg-devel
<fflogger> [newticket] atayeem: Ticket #11640 ([avfilter] Specific combination of timeclamp, fps, and count on showcqt causing crash) created https://trac.ffmpeg.org/ticket/11640
BradleyS has quit [Read error: Connection reset by peer]
BradleyS has joined #ffmpeg-devel
BradleyS has quit [Read error: Connection reset by peer]
BradleyS has joined #ffmpeg-devel
BradleyS has quit [Read error: Connection reset by peer]
BradleyS has joined #ffmpeg-devel
BradleyS has quit [Read error: Connection reset by peer]
BradleyS has joined #ffmpeg-devel
BradleyS has quit [Client Quit]
BradleyS has joined #ffmpeg-devel
TheVibeCoder has quit [Ping timeout: 260 seconds]