<minimal>
furq: AFAIK most if not all multi version/edition DVDs have different tracks for each edition
<minimal>
i.e. track 1 == normal file, track 2 == special edition
<minimal>
behind the screens the NAV stuff takes care of the differences between what the tracks play
ivanich has quit [Remote host closed the connection]
fossdd has joined #ffmpeg
lavaball has quit [Remote host closed the connection]
HarshK23 has quit [Quit: Connection closed for inactivity]
rvalue has quit [Ping timeout: 268 seconds]
<Marth64>
each disc does it differently
<Marth64>
some use angles, some use different playlists (PGCs) of segments within the title, others use vm instructions to bounce around to different segments
<Marth64>
some use combinations of this, and then there are the special few which mux movie content with the menu VOBs as a hack
<Marth64>
those have a special place in hell
<Marth64>
lol
samhza has joined #ffmpeg
stevenliu has quit [Remote host closed the connection]
stevenliu has joined #ffmpeg
<furq>
i mostly deal with tv shows and budget releases that never made it onto a better format so i've never really had to deal with any of that
<furq>
i guess most annoying dvds have been subsequently released on a better format by now
<Marth64>
yep
fossdd has quit [Ping timeout: 246 seconds]
<furq>
i have a bunch of discs that were so cheaply mastered that they don't even have chapters or bumpers
<furq>
just one title and it's the film
<furq>
ideal situation
<Marth64>
yes haha
rvalue has joined #ffmpeg
fossdd has joined #ffmpeg
<minimal>
its the 99 title ones that are "fun" (silly "copy protection")
<minimal>
or the tracks that grow big in size when you rip them
<minimal>
I still have a few DVDs that I never managed to rip correctly
LionEagle has quit [Remote host closed the connection]
LionEagle has joined #ffmpeg
fossdd has quit [Ping timeout: 256 seconds]
fossdd has joined #ffmpeg
Marth64 has quit [Remote host closed the connection]
iive has quit [Quit: They came for me...]
jarthur_ has joined #ffmpeg
jarthur has quit [Ping timeout: 272 seconds]
fossdd has quit [Ping timeout: 256 seconds]
fossdd has joined #ffmpeg
LionEagle has quit [Quit: Leaving]
Muimi has joined #ffmpeg
Ogobaga has quit [Read error: Connection reset by peer]
Vonter has quit [Ping timeout: 260 seconds]
Ogobaga has joined #ffmpeg
Vonter has joined #ffmpeg
fossdd has quit [Ping timeout: 255 seconds]
fossdd has joined #ffmpeg
Sciencentistguy has quit [Quit: o/]
Sciencentistguy has joined #ffmpeg
Marth64 has joined #ffmpeg
averne has quit [Ping timeout: 276 seconds]
fossdd has quit [Ping timeout: 256 seconds]
fossdd has joined #ffmpeg
rossome has joined #ffmpeg
fossdd has quit [Ping timeout: 256 seconds]
fossdd has joined #ffmpeg
rossome has quit [Read error: Connection reset by peer]
lexano has quit [Ping timeout: 276 seconds]
rossome has joined #ffmpeg
averne has joined #ffmpeg
Jhonny2x4 has joined #ffmpeg
fossdd has quit [Ping timeout: 255 seconds]
fossdd has joined #ffmpeg
dead1 has quit [Quit: dead1]
navi has quit [Quit: WeeChat 4.1.2]
navi has joined #ffmpeg
navi has quit [Client Quit]
Marth64 has quit [Remote host closed the connection]
fossdd has quit [Ping timeout: 256 seconds]
fossdd has joined #ffmpeg
Tano has quit [Quit: WeeChat 4.1.2]
fossdd has quit [Ping timeout: 255 seconds]
fossdd has joined #ffmpeg
lemourin has quit [Read error: Connection reset by peer]
lemourin has joined #ffmpeg
<aaabbb>
is -af channelmap=FL-FL|FR-FR|FC-FC|LFE-LFE|SL-BL|SR-BR:5.1 still needed when mapping 5.1 ac3/dts to 5.1 opus?
<aaabbb>
ac3/dts uses FL FR FC LFE SL SR and opus uses FL FR FC LFE BL BR but idk if it's mapped correctly by default yet
Jhonny2x4 has quit [Read error: Connection reset by peer]
Tinos has joined #ffmpeg
JanC_ has joined #ffmpeg
JanC is now known as Guest9448
JanC_ is now known as JanC
waleee has quit [Ping timeout: 276 seconds]
Guest9448 has quit [Ping timeout: 255 seconds]
fossdd has quit [Ping timeout: 255 seconds]
MetaNova has quit [Ping timeout: 240 seconds]
fossdd has joined #ffmpeg
Muimi has quit [Quit: Going offline, see ya! (www.adiirc.com)]
MetaNova has joined #ffmpeg
fossdd has quit [Ping timeout: 255 seconds]
fossdd has joined #ffmpeg
linext has joined #ffmpeg
<linext>
can ffplay play several streams inside the same window?
epony has quit [Ping timeout: 264 seconds]
fossdd has quit [Ping timeout: 256 seconds]
fossdd has joined #ffmpeg
<aaabbb>
linext: yes, you can have multiple inputs and use hstack or vstack to put them together
<linext>
can hstack and vstack be used together?
<linext>
like a 4x4
<aaabbb>
yes
<aaabbb>
hstack takes two (or more) inputs and stacks them horizontally as one output. so you do that twice to get two outputs, then use vstack to stack those 2 into 1
<yrc>
furq: `dvd_info -g` will not help because it’s just giving information related to the longest title, which I could check with `diff <(./dvd_info -g /dev/sr0) <(./dvd_info -g -t 1 /dev/sr0)` (no output); if I replace `-t 1` with `-t 2`, almost everything is different because t2 only has 45 chapters instead of 54.
<yrc>
I see Marth64 is now offline… if/when (s)he comes back, please thank him/her for me!
foul_owl has quit [Ping timeout: 264 seconds]
<yrc>
One of Marth64’s sentence made me realize that I could just rip in _copy_ mode (no reencoding) each chapter of each (big) title individually, thus getting t1chap1.mkv … t1chap54.mkv, t2chap1.mkv … t2chap45.mkv, and then use some dedup software to locate duplicates (e.g. t1chap12==t2chap14), and then mux & encode everything with the appropriate Ordered Chapters XML. This should work.
<yrc>
The only downside is that cells #1 for example (spanning sectors 0-12107 for t1, and 109-9442 for t2) wouldn’t be seen as duplicates even though t2 cell1 is a subset of t1 cell1. But that’s few bytes lost for a big win in simplicity :-)
cosimone has joined #ffmpeg
foul_owl has joined #ffmpeg
Ogobaga has quit [Quit: Konversation terminated!]
Ogobaga has joined #ffmpeg
lavaball has joined #ffmpeg
Tano has joined #ffmpeg
GenTooMan has quit [Ping timeout: 276 seconds]
navi has joined #ffmpeg
lemourin has quit [Ping timeout: 276 seconds]
junaid_ has quit [Quit: leaving]
junaid_ has joined #ffmpeg
epony has quit [Remote host closed the connection]
cosimone has quit [Ping timeout: 276 seconds]
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
alexherbo2 has joined #ffmpeg
Jhonny2x4 has joined #ffmpeg
junaid_ has quit [Remote host closed the connection]
billchenchina has joined #ffmpeg
cc0 has quit [Remote host closed the connection]
cc0 has joined #ffmpeg
waleee has joined #ffmpeg
omegatron has joined #ffmpeg
cosimone has joined #ffmpeg
lexano has joined #ffmpeg
hightower2 has quit [Ping timeout: 276 seconds]
junaid_ has joined #ffmpeg
epony has joined #ffmpeg
kus has joined #ffmpeg
deus0ww has quit [Ping timeout: 264 seconds]
deus0ww has joined #ffmpeg
kus has quit [Ping timeout: 276 seconds]
sdc has joined #ffmpeg
little_pudding has joined #ffmpeg
<little_pudding>
hello. what's the default AAC encoder used in ffmpeg 5 and 6 when built for windows?
ivanich has joined #ffmpeg
waleee has quit [Ping timeout: 260 seconds]
<little_pudding>
the one ffmpeg uses via libavcodec, i believe
sdc has quit [Ping timeout: 250 seconds]
cosimone has quit [Remote host closed the connection]
<another|>
native encoder
fossdd has quit [Ping timeout: 255 seconds]
waleee has joined #ffmpeg
fossdd has joined #ffmpeg
Ogobaga has quit [Quit: Konversation terminated!]
Ogobaga has joined #ffmpeg
alexherbo2 has quit [Remote host closed the connection]
kus has joined #ffmpeg
little_pudding has left #ffmpeg [#ffmpeg]
fossdd has quit [Ping timeout: 256 seconds]
mven97 has quit [Ping timeout: 260 seconds]
fossdd has joined #ffmpeg
Marth64 has joined #ffmpeg
zoriya has joined #ffmpeg
alexherbo2 has joined #ffmpeg
fossdd has quit [Ping timeout: 255 seconds]
AbleBacon has joined #ffmpeg
fossdd has joined #ffmpeg
GenTooMan has joined #ffmpeg
<zoriya>
Hello, I don't know if this is the right place to ask for help but I am trying to cut a video to a specific ms without re-encoding (like what -f segments can do).
<zoriya>
Running something like `ffmpeg -ss 00.000000 -to 13.381 -i input.mkv -map 0:V:0 -c:v copy out.ts` gives me a video of 13.501s (so 120ms more than expected).
fossdd has quit [Ping timeout: 256 seconds]
hightower2 has joined #ffmpeg
fossdd has joined #ffmpeg
Traneptora has quit [Ping timeout: 255 seconds]
minimal has joined #ffmpeg
rv1sr has joined #ffmpeg
<BtbN>
Unless your video is recorded with 1000fps per second, you can't cut with that amount of precision
<BtbN>
-per second
<BtbN>
60fps would be a maximum precison of 16~17ms though
<zoriya>
`ffmpeg -ss 00.000000 -i input.mkv -to 13.381000 -map 0:V:0 -c:v copy -f segment -segment_times 13.38100 out-%06d.ts` is able to cut exactily at 13.381 but it gives an extra unwanted segment
<zoriya>
13.381 is a keyframe
<BtbN>
What frame it is doesn't matter that much for the end point
<BtbN>
can get funky with re-ordering at times, but that's an edge case
<zoriya>
How is -f segments able to cut there but not the -to option?
fossdd has quit [Ping timeout: 256 seconds]
<BtbN>
That second command makes no sense, you are limiting twice?
<zoriya>
yes, it creates two segments at out-0.ts (of exactly 13.381s) and a 2nd at out-2.ts of a few ms that is unwanted
<BtbN>
Probably just a matter of the -to option rather being safe than sorry
<BtbN>
It's also possible that this is a matter of video vs. audio frame durations
<BtbN>
-to can't cut an audio frame in half, while the segment muxer can just move it to the next segment
<zoriya>
would that work too if -to is used as an output option?
<zoriya>
ffmpeg -ss 00.000000 -i input.mkv -to 13.381 -map 0:V:0 -c:v copy out.ts gives me the same duration of13.501s
<BtbN>
Do you even have audio?
<zoriya>
i do but i don't include it in the out stream
<BtbN>
You're missing -an then, if that's the goal
<BtbN>
right now it will transcode the audio along, not even copy it
<zoriya>
no there is no audio right now
<zoriya>
due to the -map I belive
<BtbN>
ah, true
<BtbN>
no idea why it doesn't cut earlier. Maybe it just can't, since it'd end in the middle of a reordered group
fossdd has joined #ffmpeg
fossdd has quit [Ping timeout: 255 seconds]
<zoriya>
i found an issue in lossless-cut that has exactly the same problem: https://github.com/mifi/lossless-cut/issues/1216 one of the potential solution attached is to give -to the timestamps of 2 frames prior the point you want to cut but that feels weird
<BtbN>
that seems to be exclusively talking about start times
<BtbN>
What I could see happening is that ffmpeg.c stops processing the moment it sees the desired timestamp, but then still goes ahead and flushes the decoder/filters, flushing out a few extra frames
Jhonny2x4 has quit [Read error: Connection reset by peer]
fossdd has joined #ffmpeg
Jhonny2x4 has joined #ffmpeg
junaid_ has quit [Remote host closed the connection]
Jhonny2x4 has quit [Quit: WeeChat 4.2.1]
fossdd has quit [Ping timeout: 276 seconds]
LionEagle has joined #ffmpeg
<zoriya>
do you think this is a bug i should report? and if yes where?
fossdd has joined #ffmpeg
<zoriya>
i'm trying to look where i could have gone wrong in ffmpeg's source code but i'm grasping at straws
fossdd has quit [Ping timeout: 256 seconds]
<BtbN>
It's somewhere in the fftools, but it's way to inverwoven to just understand without deeply studying
<BtbN>
I would consider it a bug, if that's actually what's going on (i.e. it doesn't discard the flushed content)
<BtbN>
It could also be a matter of pts vs. dts or something
<BtbN>
120ms offset, which is like 8~10 frames, is not completely impossible
<zoriya>
the last packet that gets decoded is `demuxer+ffmpeg -> ist_index:0:0 type:video pkt_pts:13421 pkt_pts_time:13.421 pkt_dts:13381 pkt_dts_time:13.381 duration:40 duration_time:0.04 off:0 off_time:0`
<zoriya>
if i understood correctly this is because it's dts is right where i want to cut (13.381)
Muimi has joined #ffmpeg
fossdd has joined #ffmpeg
<BtbN>
so it is actually cutting by dts, and not pts, hm
<zoriya>
mhm maybe not finnaly, i do have this one also demuxer+ffmpeg -> ist_index:0:0 type:video pkt_pts:13541 pkt_pts_time:13.541 pkt_dts:13461 pkt_dts_time:13.461 duration:40 duration_time:0.04 off:0 off_time:0
epony has quit [Remote host closed the connection]
<BtbN>
well, it getting one packet beyond it makes sense
<BtbN>
depending on it it checks for >= or > the provided timestamp
<zoriya>
it gets 2 packets after the dts, i also missed this one demuxer+ffmpeg -> ist_index:0:0 type:video pkt_pts:13581 pkt_pts_time:13.581 pkt_dts:13421 pkt_dts_time:13.421 duration:40 duration_time:0.04 off:0 off_time:0
<BtbN>
keep in mind it's multi-threaded now. So it might not immediately stop the demuxer thread
<BtbN>
I can't find where it actually applies the limit
<BtbN>
just a bunch of places that pass it on
epony has joined #ffmpeg
<BtbN>
Have you tried using -t instead of -to?
<zoriya>
I think in input_packet_process (in ffmpeg_demux.c)
<BtbN>
Some streams start at a negative timestamp
fossdd has quit [Ping timeout: 255 seconds]
<zoriya>
yeah, both -t and -to actually sets the "recording_time" option and I could not find any difference for this issue
<BtbN>
-t takes the start time into account, and adds it to the timestamp
<BtbN>
say if a video starts at -1 seconds for a timestamp, and you do -to 3s, you would get a 4 second long video as a result, from -1 to 3
<BtbN>
with -t 3s you would get a 3s long one, from -1 to 2
<zoriya>
i don't think the file i have has negative start time
<BtbN>
it's not at all uncommon, due to reordering
<zoriya>
i tryed again but -t also outputs 13.501s instead of 13.381
<zoriya>
i also tried with -threads 1 to check if this is due to concurency issues but the logs where the same
<zoriya>
(and the duration of course)
fossdd has joined #ffmpeg
fling has quit [Remote host closed the connection]
fling has joined #ffmpeg
fossdd has quit [Ping timeout: 255 seconds]
fossdd has joined #ffmpeg
<boxrick>
Hello!
<boxrick>
I have a quick question I am hoping you may know the answer to. I am using FFMPEGs black filter to discover the breaks in an mkv file, my system has 10C 20T, and some very fast SSDs. On inspection plenty of threads are in use, my SSDs are barely utilised and my CPU is only lightly being used ( ie its not even boosting in clocks ). What would be my likely bottleneck?
<BtbN>
one of your cores probably
<boxrick>
Its curious, sitting on one of the cores it doesn't seem to ramp up. Like if I re-encode it will jump up to 4.1 or 4.2ghz, all the cores roughly sit around 2-2.3ghz which feels like its not even trying.
<BtbN>
but one core is pegged to 100%?
rvalue has quit [Ping timeout: 264 seconds]
Ogobaga has quit [Quit: Konversation terminated!]
Ogobaga has joined #ffmpeg
<boxrick>
No, barely.
<boxrick>
20% at most
<BtbN>
then it's IO limited
fossdd has quit [Ping timeout: 268 seconds]
rvalue has joined #ffmpeg
fossdd has joined #ffmpeg
mven97 has joined #ffmpeg
<yrc>
Hey Marth64 I see you’re back :-) I wanted to thank you: a thing you wrote gave me the simple idea of dumping each chapter of each title into its own file, then detecting duplicates using a dedup software, and finally muxing/encoding all unique files along the appropriate Ordered Chapters spec. I’ll try.
<yrc>
It wouldn’t be as optimized as what is written on the DVD, but it would surely be a lot simpler than going low-level to the cells and sectors!
fossdd has quit [Ping timeout: 260 seconds]
user03 has joined #ffmpeg
<Marth64>
yrc: awesome! yes, it's tedious but much more feasible
<Marth64>
interesting concept, thanks
user03 is now known as gchound
<Marth64>
yrc: check out PGCEdit as well, it is an ivaluable tool
<yrc>
I’ll do that
<yrc>
FYI, here’s an article that helped me understand a lot of what can be done with MKV: http://mod16.org/hurfdurf/?p=8
junaid_ has joined #ffmpeg
fossdd has joined #ffmpeg
<Marth64>
matroska is a good format indeed
LionEagle has quit [Ping timeout: 252 seconds]
junaid_ has quit [Client Quit]
junaid_ has joined #ffmpeg
LionEagle has joined #ffmpeg
<Marth64>
yrc: by some odd chance, are you familiar with how menus are muxed? i am trying to learn about them a bit
<Marth64>
i just want to do basic extraction of menus
<yrc>
If you mean on DVD, then yes, I used to author DVD with funny stuff like setting a register when user selects a menu option, and then when playing skipping some parts depending on the register value… If you mean for MKV, then no. I’m not sure you really can have interactivity in MKV; however it looks like you can setup several “playlists” of sorts and let the user choose in the playing software’s
<yrc>
menus.
<Marth64>
yrc: DVDs indeed. thank you. ok if I reach out with questions? (none at this time but as I study)
Traneptora has joined #ffmpeg
<yrc>
Marth64: Sure. For me, it all started years ago with this documentation, but it is in French: https://www.funix.org/fr/linux/creedvd.htm ; then I used dvdauthor, and read its documentation.
<Marth64>
yrc: thanks, I'll check out both, starting from scratch on menus so every bit helps
<Marth64>
I have basically avoided them
<Marth64>
until now lol
<yrc>
Marth64: If I’m offline, you can send mail to dvd@yalis.fr (mention your present alias; I’ll know it’s you). It’s now a bit fuzzy in my mind (it was years ago), but I kept my dvdauthor scripts, so I have some examples around.
fossdd has quit [Ping timeout: 255 seconds]
<Marth64>
yrc: appreciate it!
<Marth64>
I am trying to write code to extract them, for example to archive music or hidden video tracks
mven97 has quit [Ping timeout: 260 seconds]
LionEagle has quit [Quit: Leaving]
LionEagle has joined #ffmpeg
fossdd has joined #ffmpeg
JanC has quit [Ping timeout: 255 seconds]
fossdd has quit [Ping timeout: 255 seconds]
JanC has joined #ffmpeg
fossdd has joined #ffmpeg
jarthur has joined #ffmpeg
billchenchina has quit [Remote host closed the connection]
fossdd has quit [Ping timeout: 272 seconds]
fossdd has joined #ffmpeg
theracermaster has quit [Quit: theracermaster]
theracermaster has joined #ffmpeg
lavaball has quit [Remote host closed the connection]
treefrob has quit [Ping timeout: 264 seconds]
fossdd has quit [Ping timeout: 276 seconds]
lavaball has joined #ffmpeg
fossdd has joined #ffmpeg
gvg__ has joined #ffmpeg
gvg_ has quit [Ping timeout: 256 seconds]
fossdd has quit [Ping timeout: 255 seconds]
fossdd has joined #ffmpeg
ivanich has quit [Ping timeout: 252 seconds]
fossdd has quit [Ping timeout: 256 seconds]
fossdd has joined #ffmpeg
k-man has quit [Quit: WeeChat 4.1.2]
k-man has joined #ffmpeg
junaid_ has quit [Remote host closed the connection]
fossdd has quit [Ping timeout: 276 seconds]
fossdd has joined #ffmpeg
lusciouslover has joined #ffmpeg
Muimi has quit [Quit: Going offline, see ya! (www.adiirc.com)]
fossdd has quit [Ping timeout: 256 seconds]
epony has quit [Remote host closed the connection]
fossdd has joined #ffmpeg
rv1sr has quit []
fossdd has quit [Ping timeout: 255 seconds]
fossdd has joined #ffmpeg
fossdd has quit [Ping timeout: 264 seconds]
fossdd has joined #ffmpeg
alexherbo2 has quit [Ping timeout: 250 seconds]
gchound has quit [Quit: WeeChat 3.8]
lindylex has joined #ffmpeg
lemourin has joined #ffmpeg
lemourin has quit [Client Quit]
lemourin has joined #ffmpeg
fossdd has quit [Ping timeout: 264 seconds]
fossdd has joined #ffmpeg
flotwig has quit [Ping timeout: 264 seconds]
fossdd has quit [Ping timeout: 255 seconds]
fossdd has joined #ffmpeg
lavaball has quit [Quit: lavaball]
lavaball has joined #ffmpeg
Jhonny2x4 has joined #ffmpeg
flotwig has joined #ffmpeg
fossdd has quit [Ping timeout: 256 seconds]
flotwig has quit [Excess Flood]
flotwig has joined #ffmpeg
fossdd has joined #ffmpeg
epony has joined #ffmpeg
YuGiOhJCJ has joined #ffmpeg
treefrob has joined #ffmpeg
hightower2 has quit [Remote host closed the connection]