hightower2 has quit [Remote host closed the connection]
JanC has quit [Ping timeout: 245 seconds]
navi has quit [Ping timeout: 256 seconds]
navi has joined #ffmpeg
Xaldafax has joined #ffmpeg
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #ffmpeg
FH_thecat has joined #ffmpeg
hightower2 has joined #ffmpeg
kurosu has joined #ffmpeg
sqz has quit [Remote host closed the connection]
CruxOfTheB has joined #ffmpeg
Dotz0cat has quit [Ping timeout: 264 seconds]
Dotz0cat has joined #ffmpeg
SpeakerToMeat has joined #ffmpeg
<SpeakerToMeat>
Ah I made a mistake.... hello all.
alexherbo2 has quit [Ping timeout: 250 seconds]
waleee has joined #ffmpeg
<SpeakerToMeat>
I need a little help please. I'm trying to merge 8 audio files with a video without transcoding. I'm merging two stereo tracks, and 6 tracks for 5.1. For the way we're being requested to submit, all 8 tracks in their right order must be in separate tracks... My issue is just doing -map on al 8 inputs is doing mono channel layouts (it's logical), and setting all 8 chanels labeled as FL which is also
<SpeakerToMeat>
My questions are: Is it possible to label individual tracks anything other than FC? 2) if so, or if not possible, how do you change the label applied? do I need to use a -filter_complex? can I do so without reencoding the audio? and how do I set the labels? i'm trying to go off the samples on audio channels on the wiki but they all involve splits, mergers or similar.
alexherbo2 has joined #ffmpeg
mosasaur has quit [Quit: Leaving]
waleee has quit [Ping timeout: 264 seconds]
<JEEB>
SpeakerToMeat: yea the wiki audio things should do that. if you're dealing with raw PCM then there's no real "re-encoding" to speak of
<JEEB>
and each thing can be specified manually by either within the filter chain (which I think by default gets set if you use the extract or whatever filter), or with -channel_layout:a:NUMBER
<JEEB>
with of course the channel_layout definition of a single channel being in the following argument as the value for that option
<SpeakerToMeat>
The only wiki element I see might work for me is channelmap...
<SpeakerToMeat>
Hmmm I'm searching for -channel_layout on the docs as an option, can't find it, or do you mean the option in filters that take it?
<SpeakerToMeat>
And, can I only label mono channel layout tracks as FC ? do I do so by naming the out FC in the filter chain?
LionEagle has joined #ffmpeg
<JEEB>
channel_layout is the generic option which is there but I'd only utilize if you can't set the information on your AVFrames via filter chain
<JEEB>
as for filters the other way was the join filter, and then whatever was the reverse of that
<JEEB>
right, channesplit
<SpeakerToMeat>
hmm I jsut discovered aformat and wondered if that would help
<SpeakerToMeat>
just aformat with channel_layouts nothing else
<SpeakerToMeat>
And naming the idenfiers, either FC if forced or DL DR FL FR, etc etc
<JEEB>
for example this takes in a source with multiple channels in a single stream (wav file), and splits out specific channel(s) > ffmpeg -i in.wav -filter_complex 'channelsplit=channel_layout=5.1:channels=LFE[LFE]'
<SpeakerToMeat>
Yes, those are in the samples in the wiki.
<JEEB>
yup
<JEEB>
you have single multi-channel input and you want to split it, no?
<SpeakerToMeat>
No
<JEEB>
oh, the other way thne?
<SpeakerToMeat>
No
<JEEB>
multiple streams with one channel each
<SpeakerToMeat>
yes I have multiple files with one channel each
<JEEB>
yea, so reverse :P
<SpeakerToMeat>
and I want each one on a track
<SpeakerToMeat>
Not into combined tracks
<JEEB>
or you already have them split and you still want them split?
<SpeakerToMeat>
Yes
<JEEB>
OK
<JEEB>
then copy and -channel_layout on output side if the output format supports your input PCM format
<JEEB>
since you can have a channel layout based on a single channel
<JEEB>
`-channel_layout:a:0` LFE for example sets the first audio stream in the output as LFE
<JEEB>
asdf
<JEEB>
of course put the ending ` in the wrong spot
<JEEB>
`-channel_layout:a:0 LFE`
<JEEB>
pretty sure the channel layout stuff is documented somewhere
<SpeakerToMeat>
this use of channel_layout associated to the output and not the input, right?
<JEEB>
can also be set on the input side, which would then hopefully feed that into filtering etc (which you would not in this case utilize, but still useful I'd say)
<SpeakerToMeat>
Ah you said so, sorry
<JEEB>
channel_layout in this case is just a flag set. a dumb override
<JEEB>
that is why I prefer to either override in input, or in filter chain
<JEEB>
since that may then be utilized by other things along the way
alexherbo2 has quit [Remote host closed the connection]
<JEEB>
just like when you set color space information for video tracks in the output, that would just get utilized for the encoder and the output container writer
<JEEB>
it doesn't actually affect any conversions along the way
<SpeakerToMeat>
Rigth that makes sense
<JEEB>
meanwhile if you f.ex. set the values in the zscale filter, that will tag the output AVFrames accordingly, and after my work in late 2020 it will actually get propagated into the encoder initialization :P
<JEEB>
and yes, I literally plugged pipes together after I got annoyed that things weren't propagated
shibboleth has joined #ffmpeg
alexherbo2 has joined #ffmpeg
<SpeakerToMeat>
I had half writen the aformat chain method, and it works for setting all the layouts to mono, but no identifiers seem to be written. So i guess they're all FC or not marked
<SpeakerToMeat>
But that's good enough I guess, I'll try your method next
<SpeakerToMeat>
I'll go the unlabeled (possibly) mono tracks route
<JEEB>
post full command and log with `-v verbose` added onto a pastebin of your choice
<JEEB>
and link here
<JEEB>
it seems like either the encoder or writer is saying nope for DL
<SpeakerToMeat>
Ah but using the filter it's transcoding them..
<SpeakerToMeat>
Yeah
<JEEB>
that message comes literally from the AAC encoder, which is not surprising
<JEEB>
although technically I *think* you are supposed to be able to code mono like that
<JEEB>
but I thought you were wanting to do copy codec?
<JEEB>
which is why command & logs is what mostly people want when they want to help someone
<JEEB>
the verbose log level is the last non-spammy log level which also adds some info
<SpeakerToMeat>
Ok it was my mistak
<SpeakerToMeat>
Somewhere along the route I dropped the -c copy (when switching to filter graph) and hadn't added it back on the -channel_layout version
<SpeakerToMeat>
Adding it, it works
<JEEB>
yea the mp4|mov container logic just looks at the channel layout and attempts to write it accordingly
alexherbo2 has quit [Remote host closed the connection]
<JEEB>
as an example, I just guesstimated since those have AAC as the default audio format :P
<SpeakerToMeat>
Only one odd thing, give me one second....
<SpeakerToMeat>
JEEB, you guesstimated well, it's mov container as video content is prores
alexherbo2 has joined #ffmpeg
<SpeakerToMeat>
JEEB, https://pastebin.com/GNn796Nf should I be worried that FC didn't seem to take on the dessignation? or is this mostly moot?
<JEEB>
1 channel, FC just happens to be "mono" :D
<JEEB>
so it has a "pretty name"
<SpeakerToMeat>
Ah of course...
<SpeakerToMeat>
And of course, the default AAC output also solves why it was slower than expected, as it was actually transcoding
<SpeakerToMeat>
I guess something like pcm -> pcm is almost as fast as -c copy
<JEEB>
yea, esp. if you disable not requested format conversions
<JEEB>
it will be slower of course since the contents of each audio frame will be poked
<JEEB>
while with codec copy there is a packet taken from input and stuck into output
<JEEB>
`-noauto_conversion_filters`
bitoff has joined #ffmpeg
chiselfuse has quit [Ping timeout: 240 seconds]
chiselfuse has joined #ffmpeg
MoC has joined #ffmpeg
shibboleth has quit [Quit: shibboleth]
<SpeakerToMeat>
Ok it works well with -channel_layout, thanks, but I'll also drop DL DR to use FL FR instead, I was worried about repeating those but it can be done, and that way the channels get labeled acoordingly on the outpul, DL/DR are not labeled (as L/R) on the out
Fischmiep has joined #ffmpeg
TrillionEuroNote has quit [Ping timeout: 264 seconds]
bitoff has quit [Ping timeout: 256 seconds]
TrillionEuroNote has joined #ffmpeg
avaatk has joined #ffmpeg
MoC has quit [Quit: Konversation terminated!]
<avaatk>
hi! looking for some help with ffmpeg and frei0r on windows 10. The closest to my problem is this github issue https://github.com/dyne/frei0r/issues/21 but it was closed without reasonable solution. I tried frei0r enabled ffmpeg binaries from Gyan builds (release and master) but the same happens with BtbN builds.
<avaatk>
The frei0r 64bits dlls from https://github.com/dyne/frei0r/releases were copied in all possible locations including a custom directory specified with "set FREI0R_PATH=D:/effects"
<avaatk>
Tried with different effects, always same error, like it is not able to find said dll, even though the file exists.
jagannatharjun has quit [Quit: Connection closed for inactivity]
<Marth64>
As JSON output, it is printing the additional side_data_list field without me explicitly declaring it, and with that there is a newline within the field itself which also looks odd, but is valid for json
<Marth64>
(same command adapted for JSON*)
kurosu has joined #ffmpeg
MoC has quit [Quit: Konversation terminated!]
stolen has joined #ffmpeg
elastic_dog has quit [Ping timeout: 255 seconds]
Keshl has quit [Ping timeout: 260 seconds]
ttys000_ has quit [Quit: My iMac has gone to sleep. ZZZzzz…]
elastic_dog has joined #ffmpeg
Reventlov has quit [Quit: WeeChat 3.0]
JanC has joined #ffmpeg
jagannatharjun has joined #ffmpeg
Ogobaga has quit [Quit: Konversation terminated!]
Ogobaga has joined #ffmpeg
minimal has joined #ffmpeg
Keshl has joined #ffmpeg
alexherbo2 has quit [Remote host closed the connection]
Ingvix has quit [Ping timeout: 245 seconds]
Ingvix has joined #ffmpeg
ivanich has joined #ffmpeg
AbleBacon has joined #ffmpeg
alexherbo2 has joined #ffmpeg
Hackerpcs has quit [Quit: Hackerpcs]
alexherbo2 has quit [Remote host closed the connection]
Hackerpcs has joined #ffmpeg
alexherbo2 has joined #ffmpeg
Hackerpcs has quit [Max SendQ exceeded]
Hackerpcs has joined #ffmpeg
ivanich has quit [Remote host closed the connection]
ivanich has joined #ffmpeg
bitoff has joined #ffmpeg
ivanich has quit [Remote host closed the connection]
ivanich has joined #ffmpeg
ivanich has quit [Remote host closed the connection]
<ajshell1>
So, I have a question about ffmpeg and analyzing video quality with ssim
<ajshell1>
So I found a post online that said to use something like "ffmpeg -i vid1.mp4 -i vid2.mp4 -filter_complex "ssim" -f null /dev/null" to compare them
<ajshell1>
In my case, I'm comparing a VP9 and a AVC version of a video I got from youtube using yt-dlp
<kepstin>
that doesn't really make sense, since neither of those are the original. You'll be able to tell that they're different, but not in any meaningful way.
<ajshell1>
Ah. Thanks for letting me know
<ajshell1>
What would you recommend I look into instead?
<ajshell1>
Because I have around 400 videos to save before they get deleted in three weeks
<ajshell1>
Unfortunately, I don't have the space to save both
<kepstin>
i'm not sure what you're trying to do. Video quality measurement tools are designed to see in general "how much quality was lost compared to the original when encoding with method X", and to measure that, you need the original.
<ajshell1>
Basically, I'm trying to decide if I should download those videos in VP9 or AVC format
<ajshell1>
Before they get deleted
<ajshell1>
Because I don't have the hard drive space to save both
<ajshell1>
So I'm trying to find some objective tool to determine which one looks better
<JEEB>
I don't think you have much better alternative than checking the visual quality for a few things, since you have no idea of figuring out which is closer to the sauce
<CounterPillow>
just download the vp9 lol
shibboleth has joined #ffmpeg
<JEEB>
live streams *might* contain the sauce, so in that case you should grab it. but the VOD stuff most definitely does not let you get any access to the sauce
<ajshell1>
Yeah, yt-dlp was defaulting to vp9 anyway
<ajshell1>
Free format, and smaller anwyway
<kepstin>
note that for youtube h264 (avc) vs vp9, you probably do always want the vp9, yeah. The h264 is there only for compatibility, and the vp9 settings they use seem to usually be better quality by my eye.
<JEEB>
anyways, with youtube it should be pretty simple to compare visual quality
<JEEB>
since all is bit rate starved
<kepstin>
(especially if you have access to the "1080p premium" option as a youtube subscriber; iirc that's only available as vp9)
<ajshell1>
Since a lot of this stuff is stuff that was livestreamed, do you think that the AVC stuff would be more likely to be closer to the original? I don't know if OBS supports VP9, or if Youtube re-encodes live streams for the VOD.
<kepstin>
youtube always re-encodes everything for the vod
<ajshell1>
Thanks. Good to know
<kepstin>
(live streaming encoding settings are designed for low latency and consistent bitrate, which makes them really inefficient for vod type use cases - they get re-encoder a _lot_ smaller)
<JEEB>
at least I recall livestreams on youtube often didn't have VP9/AV1?
<JEEB>
so I wouldn't be surprised if even after airing it might still be the thing they served during the live stream?
<kepstin>
livestreams can be really long videos - multiple hours - so youtube's encoding tradeoff waits for a lot more view count on the vod before encoding the more expensive video formats.
<kepstin>
they definitely re-encode the h264 version, although it's possible you might still get the live version if you start watching fairly soon after the vod ends.
Haxxa has quit [Quit: Haxxa flies away.]
Estrella has quit [Remote host closed the connection]
<kepstin>
most of the livestream vods i just checked did have vp9, but they're from fairly popular vtubers so they get fairly high view counts.
Haxxa has joined #ffmpeg
<kepstin>
i think when you get the live version, there's an indicator for that in the "stats for nerds" display; i recall it mentioning a "post-live manifestless" mode or something like that.
<JEEB>
IIRC yea
iive has joined #ffmpeg
ivanich has joined #ffmpeg
SpeakerToMeat has quit [Quit: WeeChat 4.1.1]
MisterMinister has joined #ffmpeg
jagannatharjun has quit [Quit: Connection closed for inactivity]
bitoff has quit [Ping timeout: 255 seconds]
<MisterMinister>
Greetings! Unable to run lavfi smpte bars at "-re"speed, its going too fast at x30. https://pastebin.com/suEpvQL8 Any advice please?
<furq>
that works here but you can try "smptehdbars=rate=30:size=960x540,realtime"
lavaball has quit [Remote host closed the connection]
Muimi has joined #ffmpeg
Marth64[m] has joined #ffmpeg
Marth64 has quit [Ping timeout: 264 seconds]
Starz0r has quit [Ping timeout: 260 seconds]
<MisterMinister>
JEEB: Found it, didn't knwo it existed. Thank you.
<MisterMinister>
-readdate 1
<MisterMinister>
fyu: "-readrate 1" seems a lot more accurate, at least via speed representation, it starts with "speed=1x" and stays there. While ",realtime" gets to 1.0 speed, but it takes it about a minute to climb from 0.7 or so.
<JEEB>
wouldn't be surprised if that depends on the initial burst (since readrate does that), as well as possibly calculation of that speed metric within the ffmpeg command line tool
Starz0r has joined #ffmpeg
CruxOfTheB has quit [Remote host closed the connection]
Ogobaga has quit [Quit: Konversation terminated!]
Ogobaga has joined #ffmpeg
LionEagle has quit [Ping timeout: 256 seconds]
Muimi has quit [Quit: Going offline, see ya! (www.adiirc.com)]
thilo has quit [Ping timeout: 268 seconds]
thilo has joined #ffmpeg
ivanich has quit [Remote host closed the connection]
LionEagle has joined #ffmpeg
<minimal>
MisterMinister: is there some specific reason you're not using the Alpine ffmpeg package? some problem with it?
SpeakerToMeat has joined #ffmpeg
dioput12 has joined #ffmpeg
lusciouslover has joined #ffmpeg
ZedHedTed has quit [Quit: leaving]
<MisterMinister>
minimal: no problems with prebuilt, using non-free codecs in my version.
lusciouslover has quit [Ping timeout: 276 seconds]
<MisterMinister>
Another question please: 1. generate RTP feed output to multicast. 2. receive RTP and using codec copy repackage it to HLS. If ffmpeg1 restarts, then ffmpeg2 stops tranmuxing to HLS with "[rtp @ 0x7fdfa9e02700] RTP: dropping old packet received too late Last message repeated 863 times"
<MisterMinister>
Anyway to have ffmpeg2 ignore packet order if encoder restarts?
emmanuelux has joined #ffmpeg
emmanuelux has quit [Client Quit]
kurosu has quit [Quit: Connection closed for inactivity]
ZedHedTed has joined #ffmpeg
dioput12_ has joined #ffmpeg
dioput12 has quit [Read error: Connection reset by peer]
hussein1 has quit [Remote host closed the connection]