[Ffmpeg-devel-irc] ffmpeg.log.20200124

burek burek at teamnet.rs
Sat Jan 25 03:05:03 EET 2020


[01:01:08 CET] <kingsley> furq: My benchmarks suggest libvpx renders fastest with about 8 threads. Does 8 seem plausible?
[01:01:27 CET] <kingsley> I used...
[01:01:36 CET] <kingsley> $ ffmpeg -y -f lavfi -i mandelbrot=s=1920x1080 -threads $CPU_threads -row-mt 1 -frames 50 -c:v libvpx /tmp/bench.webm
[01:20:48 CET] <cehoyos> It should not get slower with more threads...
[01:20:54 CET] <cehoyos> (If you have more cores)
[01:21:17 CET] <cehoyos> But it does get less efficient with every thread, there is no free lunch;-(
[01:21:40 CET] <furq> you should probably use a real sample clip rather than mandelbrot
[04:34:21 CET] <mys_721tx> Hello all, I was trying to build ffmpeg on Arch Linux. yay could not find the pubkey for the source code signature. Which key server can I use to import it?
[05:35:37 CET] <void09> mys_721tx: which version from aur ? i do not see signature checks in ffmpeg-git
[05:35:52 CET] <void09> or you mean install ffmpeg, from the main repos ?
[06:09:53 CET] <void09> JEEB:
[06:18:27 CET] <void09> did anyone get rounding errors when working with fractional frame rates like 23.976... ?
[08:07:43 CET] <JEEB> void09: i have no idea wtf ypu're talking about but containers like matroska are not exact with such rates, see "ffprobe -show_packets -of json -select_streams v -i INPUT" for example (pipe it to less or something)
[08:08:23 CET] <void09> JEEB: about my issue with ffmpeg selection ending up on a different frame for the same -to time but different -ss time
[08:08:32 CET] <void09> with a 23.976.. fps video
[08:08:49 CET] <JEEB> also the exact value is 24000/1001
[08:08:54 CET] <void09> I know
[08:09:36 CET] <void09> what does it have to do with matroska, if I use -ss -to after -i ?
[08:09:42 CET] <void09> and no copy
[08:10:27 CET] <JEEB> anyways still on a train and still have no idea what your issue is. i gave you debug_ts to getinfo on which packets get passed withypur commands, and now gave you a way to dump the timestamps of packets wothout anything extra bw done to them
[08:10:54 CET] <void09> yes you gave me the debug_ts command but I have no idea to do with that data :P
[08:11:05 CET] <JEEB> void09: i have no.fucking idea but you mentioned rounding errors and matroska is not effing exavt
[08:11:28 CET] <JEEB> it technically cannot hold exact 24000/1001 tomestamps
[08:12:12 CET] <void09> it would need to store that data as an numerator/denominator to be exact, right ?
[08:12:43 CET] <furq> it already does
[08:12:54 CET] <furq> but the timebase is always 10^n
[08:13:23 CET] <furq> other containers support it being some multiple of 1001
[08:13:49 CET] <JEEB> so if you see that the packet timestamps are indeed off compared to your math, which you can check with f.ex. that ffprobe command or debug_ts then you can start making notes about whether or not it is rounding errors
[08:14:43 CET] <JEEB> also i don't think you ever actually noted your assumptions and wherethings don't match them
[08:15:01 CET] <JEEB> yes you posted two -ss values sure
[08:15:34 CET] <JEEB> but without context i don't think anyone can say jack shit wither about your asssumptions or otherwise
[08:16:13 CET] <JEEB> i just gave you the tools to dump the packet timestamps from.whatever ypu are reading
[08:16:37 CET] <JEEB> so now you can actually check what timestamps there are in your input
[08:16:54 CET] <JEEB> and how theycompare to what you thought you were doing
[08:17:00 CET] <JEEB> hopefully that helps
[08:18:36 CET] <void09> I have no assumptions, don't think I am doing anything :P
[08:18:49 CET] <void09> the timecodes I get are from pyscenedetect
[08:20:04 CET] <JEEB> and then you match the demuxer/demuxer+ffmpeg things with your command line against the packets in ffprobe
[08:20:29 CET] <JEEB> pretty sure that will give you some answers on wtf your command is foing
[08:21:41 CET] <JEEB> and prettt sure you have assumptions because you thinl something is being done wrong
[08:21:50 CET] <JEEB> that is what i mean with assu'ptions
[08:22:01 CET] <JEEB> you can validate or break them with actual data
[08:22:37 CET] <JEEB> also thta's enough from me. i have $dayjob to care about and cannot hand-hold
[08:24:35 CET] <void09> well obviously something is wrong. a timestamp should hold the exact same frame/data each time you use it
[08:58:34 CET] <kode54> I'm trying to split a single 14 channel WAV file into two 7 channel WAV files
[08:58:53 CET] <kode54> the input file has a specific layout that needs to be reordered to correspond to the 7.0 output I desire
[08:59:07 CET] <kode54> the command line I'm using is
[08:59:08 CET] <kode54> ffmpeg -i gsx.wav -filter_complex "channelsplit=channel_layout=14[FLl][FLr][SLl][SLr][BLl][BLr][FCl][FRr][FRl][SRr][SRl][BRr][BRl][FCr],[FLl][FRl][FCl][BLl][BRl][SLl][SRl]join=inputs=7:channel_layout=7.0[a],[FLr][FRr][FCr][BLr][BRr][SLr][SRr]join=inputs=7:channel_layout=7.0[b]" -map "[a]" gsx_L.wav -map "[b]" gsx_R.wav
[08:59:22 CET] <kode54> this results in:
[08:59:23 CET] <kode54> [AVFilterGraph @ 0x563f474f5500] No output pad can be associated to link label 'SLr'.
[09:06:30 CET] <kode54> ah, I can use map_channel
[09:06:39 CET] <kode54> but how do I force it to map 7.0 instead of 6.1?
[09:08:28 CET] <kode54> ah, it's ignoring my mapping directives
[10:18:28 CET] <hendry> when I update ffmpeg, I have to run `sudo setcap cap_sys_admin+ep /usr/bin/ffmpeg` otherwise my subsequent "kmsgrab" invocations will fail. Is there anyway to ease my pain on a distro like Archlinux?
[10:37:42 CET] <c_14> hendry: you can use a pacman hook on install/upgrades of the ffmpeg package to run that command for you https://jlk.fjfi.cvut.cz/arch/manpages/man/alpm-hooks.5
[10:46:41 CET] <hendry> c_14: whoa, I didn't know this!
[12:18:50 CET] <aleek> hi! is it possible to use map before filter-complex, to select audio streams with particular language? sth like: ffmpeg -i <input> -map 0:a:m:language:eng -map 0:a:m:language:ger -filter_complex "[a:0]filters_for_english[eng_out];[a:1]filters_for_german[ger_out]" -map [eng_out] -map [ger_out] -c:a:0 codec_for_eng -c:a:1 codec_for_ger ...
[14:46:36 CET] <ponyrider> aleek: from what i can tell, you are meant to map within the complex filter, as in: -complex-filter "[0:a:0]something[label]" -map '[label
[14:49:25 CET] <ponyrider> no need to map
[14:50:14 CET] <ponyrider> i guess you are trying to automate it's selection huh
[14:55:33 CET] <aleek> i've managed to do it
[14:56:08 CET] <aleek> -filter_complex "[0:a:m:language:eng]aresample...[a0out]" and so on
[15:00:07 CET] <ponyrider> gggg
[15:00:29 CET] <aleek> ?
[15:00:41 CET] <aleek> :D
[15:01:08 CET] <ponyrider> it g good job lol
[15:01:35 CET] <aleek> actually, when using this pattern to resample two input audio streams, it seems to be not possible to switch between them, when outputting to DASH
[15:01:51 CET] <aleek> but that might be just my mistake in other place of cmd line
[15:04:01 CET] <ponyrider> what do mean ?
[15:06:03 CET] <ponyrider> can you post?
[15:33:20 CET] <danilo82> hello, its possible to use vaapi in ffplay?
[15:59:06 CET] <yepla> hello
[15:59:55 CET] <yepla> does it possible to get a h265 from a h264 without losing quality ?
[16:02:35 CET] <BtbN> no
[16:07:42 CET] <danilo82> -crf 0 ?
[16:09:57 CET] <furq> that won't reduce quality but it will also be about 50x bigger than the source
[16:15:01 CET] <yepla> in fact i just want reencode my h264 in h265 with same quality
[16:16:06 CET] <yepla> danilo82: i think i will try -crf 0 thanks
[16:17:17 CET] <danilo82> mah man, just keep it h264
[16:17:42 CET] <danilo82> its a waste of time to re-encode it
[16:18:29 CET] <yepla> want a little size
[16:18:59 CET] <BtbN> -crf 0 will do the exact opposite of that
[16:19:09 CET] <danilo82> ye
[16:19:19 CET] <BtbN> And every non-lossless reencode will lose you quality. So best to just keep it as it is.
[16:20:00 CET] <yepla> i want reduce size
[16:20:10 CET] <yepla> use h265 to reduce size
[16:20:18 CET] <danilo82> so you will lose quality
[16:21:01 CET] <yepla> i dont get it h265 not reduce size for same quality ?
[16:21:42 CET] <danilo82> you can mess with the -bv option
[16:23:05 CET] <furq> it would be smaller for the same quality if you were encoding from the same source the h264 copy was encoded from
[16:23:22 CET] <furq> you can't reencode something lossy and not lose quality
[16:23:55 CET] <danilo82> Original > h265
[16:24:09 CET] <danilo82> not Original > h264 > h265
[16:24:55 CET] <yepla> what you call Original which format is it ?
[16:25:14 CET] <danilo82> hmm
[16:25:19 CET] <danilo82> the raw file?
[16:25:21 CET] <danilo82> idk
[16:25:30 CET] <danilo82> you can encode in AV1
[16:25:39 CET] <danilo82> so you will not lose quality
[16:25:51 CET] <danilo82> ;D
[16:26:05 CET] <BtbN> Even AV1 is a loss encoder, so same rules apply.
[16:26:07 CET] <BtbN> +y
[16:26:16 CET] <danilo82> shush
[16:26:17 CET] <danilo82> XD
[16:26:34 CET] <BtbN> Every time you encode with a loss encoder, you lose quality. No way around that.
[16:28:57 CET] <danilo82> aey man, i want to use svt but it needs yuv files, how to convert mp4 to yuv?
[16:32:03 CET] <furq> ffmpeg -i foo.mp4 bar.yuv
[16:32:20 CET] <BtbN> Though there's A TON of stuff that can be in a .yuv file
[16:32:24 CET] <BtbN> there isn't really any standard
[16:33:10 CET] <yepla> ok guys thanks for your answer it s what i was thinking
[16:33:13 CET] <Hello71> the same applies for "a .mp4 file"
[16:33:50 CET] <yepla> directly in h265 not in h264 then h265
[16:49:35 CET] <danilo82> are you sure this is the correct way to convert to yuv?
[16:50:04 CET] <danilo82> i get "[IMGUTILS @ 0x7ffe226d29d0] Picture size 0x0 is invalid"
[16:51:04 CET] <cehoyos> danilo82: You have to specify the resolution, raw are "raw!
[16:51:06 CET] <cehoyos> danilo82: You have to specify the resolution, raw are "raw"
[16:52:11 CET] <danilo82> how i do that?
[16:55:10 CET] <furq> you don't need to do that for raw output
[16:55:51 CET] <danilo82> looks like i do need to do that
[16:55:53 CET] <furq> and if you're using the ffmpeg svt stuff then you don't need to convert to yuv
[17:04:41 CET] <aleek> ffmpeg [...] -af "somefiltering" -map "0:a:m:language:eng" -map "0:a:m:language:ger" -c:a:0 aac -c:a:1 aac [...] does this cmdline results in both audio stream to be filtered independently?
[17:05:55 CET] <aleek> afaik I cannot do -filter:a:0 or -filter:a:m:language:eng
[17:07:28 CET] <durandal_1707> that is design limitation of ffmpeg cli
[17:08:06 CET] <aleek> durandal_1707: what do you mean by that?
[17:08:11 CET] <durandal_1707> via API you can create unlimited number of filtergraphs
[17:08:46 CET] <aleek> so with this approach, I cannot filter multiple audio streams?
[17:08:50 CET] <durandal_1707> aleek: you need to filter all audio streams with single graph
[17:09:25 CET] <aleek> it is ok for me to use the same filtergraph configuration
[17:09:58 CET] <aleek> so this cmdline will create two filtergraphs with the same configuration, rigth?
[17:10:00 CET] <aleek> rigth?
[17:10:03 CET] <aleek> grrrr
[17:10:06 CET] <aleek> right!
[17:10:33 CET] <durandal_1707> no, only single of multiple -vf/af will ever be used
[17:10:56 CET] <aleek> so only one of two audio streams will be filtered?
[17:11:23 CET] <aleek> even when using map to map two audio streams
[17:11:23 CET] <durandal_1707> use -lavfi or -filter-complex to filter more than 1 -> 1 streams
[17:12:47 CET] <aleek> yah, I've got some issue with filter_complex. I'm using external packager and creating DASH stream, and player is crashing when switching between audio streams created with filter_complex
[17:12:58 CET] <aleek> most likely something with PTS
[17:13:24 CET] <aleek> my audio filtergraph: aresample=async=1:min_hard_comp=0.100000:first_pts=0
[17:13:56 CET] <aleek> maybe i should use apts=PTS-STARTPTS, since I use the same for video
[17:15:04 CET] <cehoyos> Maybe you want to tell us how we can reproduce the crash?
[17:15:21 CET] <cehoyos> Ah, the player not FFmpeg?
[17:15:23 CET] <aleek> the player is crashing, not the ffmpeg
[17:15:24 CET] <aleek> :)
[17:15:37 CET] <aleek> let me play with setpts and asetpts
[18:36:28 CET] <mys_721tx> void09: it's from ffmpeg-full. The maintainer said they have no issue importing the keys. I left them a message about which key server they were using.
[00:00:00 CET] --- Sat Jan 25 2020


More information about the Ffmpeg-devel-irc mailing list