Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
![]() |
#21 | Link |
MKVToolNix author
Join Date: Sep 2002
Location: Braunschweig, Germany
Posts: 4,243
|
As I don't have an RHEL installation, I only support CentOS directly.
__________________
Latest MKVToolNix is v79.0 If I ever ask you to upload something, please use my file server. |
![]() |
![]() |
![]() |
#23 | Link |
Registered User
Join Date: Aug 2007
Posts: 1,427
|
Would you be able to make a symlink for 7 -> 7Server so that those with RHEL installations can use the RPM without having to fiddle with things manually? Or maybe clarify on the site's download page that RHEL isn't really supported?
|
![]() |
![]() |
![]() |
#24 | Link |
MKVToolNix author
Join Date: Sep 2002
Location: Braunschweig, Germany
Posts: 4,243
|
Sure. Done (both "7Server" and "7server", just to be safe). Give it a try, please.
__________________
Latest MKVToolNix is v79.0 If I ever ask you to upload something, please use my file server. |
![]() |
![]() |
![]() |
#26 | Link |
Registered User
Join Date: Dec 2006
Posts: 522
|
Still lovin' the new GUI, but if I may request one not small feature:
A button for "new multiplexor job" Last night I remuxed over 50 files, all using the mouse only. New job, though, requires a different brain activity (find menu, find item (on top), press it, repeat). Having a button would mostly eliminate my use of a keyboard altogether. I've got hundreds more to go. Maybe a button on the left, "New Job", beneath "Multiplexer", or right click on the job title tab? Just thought I'd chime in... Thanks again for your hard work. |
![]() |
![]() |
![]() |
#27 | Link |
MKVToolNix author
Join Date: Sep 2002
Location: Braunschweig, Germany
Posts: 4,243
|
I won't add any more buttons. More buttons only make things more confusing requiring more of that brain activity you're talking about.
You can easily leave the left hand on your keyboard and press Ctrl+N each time you want to create a new job.
__________________
Latest MKVToolNix is v79.0 If I ever ask you to upload something, please use my file server. |
![]() |
![]() |
![]() |
#28 | Link |
Registered User
Join Date: Dec 2006
Posts: 522
|
Yes, but I my HTPC doesn't have one close by.
How about in the window menu, to the right of Help. A space 1/2" wide then a menu item "New Job" that doesn't open a sub-menu, but instead opens a new multiplexor job. A fakey button. Just a thought ![]() |
![]() |
![]() |
![]() |
#29 | Link |
MKVToolNix author
Join Date: Sep 2002
Location: Braunschweig, Germany
Posts: 4,243
|
No, I'm really, really not interested in adding a lot of buttons, let alone one for this particular function.
__________________
Latest MKVToolNix is v79.0 If I ever ask you to upload something, please use my file server. |
![]() |
![]() |
![]() |
#30 | Link |
Matroska find' ich toll
Join Date: Apr 2008
Posts: 1,346
|
Hi Mosu
I have a question about the TimeStampScale. This value is important for the length of bytes (you told me the scale factor is used to reduce bytes for storing). Default value is 1000000 and means ms-accuracy, but this makes issues with audio's and maybe also for cutting. Can I set the TimeStampScale value to 1000000000 and now I have micro sec accuracy? How much bigger will be the resulting mkv? |
![]() |
![]() |
![]() |
#31 | Link |
Registered User
Join Date: May 2016
Posts: 197
|
You haven't understand this value at all: If this value is x, then the timestamps of the ordinary times (not the ones which are explicitly in ns like DefaultDuration or the DiscardPadding ones) are given by <Value encoded in File>*TimeStampScale ns; with the default value of 1000000 for TimeStampScale TimeStampScale ns = ms; with 1000000000 1000000000 ns = s. You would have s accurarcy which is useless.
If you want μs you would have to use a TimeStampScale value of 1000. Given that the relative timestamp inside (Simple)Blocks is a signed int16 you could only fit 65.536 μs of data in one Cluster; if the muxer tries to only use nonnegative relative timestamp values, it is half that value. mkvmerge does that. You would essentially have more than one cluster per video frame for ordinary framerates. The overhead will be huge. Supplying mkvmerge with --timestamp-scale -1 will make it use such a low value that it is sample accurate even when a video track is present. This will likely still increase overhead, but not so much. With hindsight, I believe that basing everything around ns precision was wrong. 1/9 ns would have been a better value (because then all common durations (including NTSC durations and lengths of audio samples for ordinary samplerates) would be an integral multiple of this base); or probably a file-dependent (actually segment-dependent) rational value. |
![]() |
![]() |
![]() |
#32 | Link |
MKVToolNix author
Join Date: Sep 2002
Location: Braunschweig, Germany
Posts: 4,243
|
Yeah, even us Matroska developers agree that the choice of how to timestamp frames wasn't a good one, but one that will most likely never change as too much stuff out there wouldn't be able to handle anything else.
In order to put things into perspective: each cluster element contains at least the cluster timestamp. As a generalization you could say that at µs resolution you'd end up with roughly twelve bytes of overhead per 32ms of content. For a two hour movie you'd end up with ~ 2h * 60m/h * 60s/m * 1000ms/s * 12bytes/cluster / 32ms/cluster / 1024bytes/KB / 1024KB/MB = 2.5MB of additional overhead. Due to B frames and them being out of order, the actual overhead will often be higher (I just ran a test with a 2h movie where the additional overhead was more like 4.2MB while total file size was 1.6GB). Personally I wouldn't call either of those numbers a "huge overhead". My days of trying to fit movies on single CDs are long gone, luckily.
__________________
Latest MKVToolNix is v79.0 If I ever ask you to upload something, please use my file server. |
![]() |
![]() |
![]() |
#33 | Link |
Registered User
Join Date: May 2018
Posts: 3
|
Thumbnail lost when remuxing .mkv
Hello! This is a very minor thing but it's bugging me. On Windows 10 when I have .mkv file with a preview thumbnail and I remux it with MKVToolNix, the preview thumbnail is lost. It's not a cover art, just a preview of the video. Is there a setting to enable it somehow?
|
![]() |
![]() |
![]() |
#34 | Link |
Matroska find' ich toll
Join Date: Apr 2008
Posts: 1,346
|
@mkver
Yes, the value for TimeStampScale should be 1000 (not 1000000000), sorry my fault. A vale of -1 is an automatic for mkvmerge? good to know. @Mosu Thanks for your test. Have you used a "-1" value for TimeStampScale in your test? And if so, which TimeStampScale was set by mkvmerge? For me is accuracy more important then save disk space. And Mosu's test shows that 4.2mb more overhead is almost nothing in relation to the file size. Last edited by hubblec4; 14th August 2018 at 18:09. |
![]() |
![]() |
![]() |
#35 | Link | |
Matroska find' ich toll
Join Date: Apr 2008
Posts: 1,346
|
Quote:
EDIT: https://gitlab.com/mbunkus/mkvtoolnix/issues/2334 That is a Win10 issue. Last edited by hubblec4; 14th August 2018 at 18:56. |
|
![]() |
![]() |
![]() |
#36 | Link | |
Registered User
Join Date: May 2018
Posts: 3
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#37 | Link | ||
Registered User
Join Date: May 2016
Posts: 197
|
Quote:
Quote:
Here is mkvinfo's output for a file with TimestampScale 1000000 containing a DTS soundtrack (packet duration 32/3 ms): Code:
| + Simple block: key, track number 1, 8 frame(s), timestamp 00:00:00.000000000 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Simple block: key, track number 1, 8 frame(s), timestamp 00:00:00.085000000 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 Code:
|+ Cluster | + Cluster timestamp: 00:00:00.000000000 | + Simple block: key, track number 1, 8 frame(s), timestamp 00:00:00.000000000 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Simple block: key, track number 1, 8 frame(s), timestamp 00:00:00.084994560 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 | + Frame with size 1024 There are other ways to run into this issue: Remux a file without changing the TimestampScale, but with changing the lacing (can be done by either disabling-lacing or by changing the clustering (e.g. use a different video track that has keyframes at different points)) and you get something like this (for disable-lacing and still 1ms precision, remuxed from the first file above): Code:
| + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.000000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.011000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.021000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.032000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.043000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.053000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.064000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.075000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.085000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.096000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.106000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.117000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.128000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.138000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.149000000 | + Frame with size 1024 | + Simple block: key, track number 1, 1 frame(s), timestamp 00:00:00.160000000 | + Frame with size 1024 A strategy to solve this problem would go like this: For the first (first/next/last etc. always refers to output order (established from the timestamps directly read from the file)) (Simple)Block of a track the timestamp in the file is trusted. Then the end timestamp of said (Simple)Block is calculated (if possible; if not, one has to trust the timestamps anyway). The next timestamp read is then compared to the end timestamp of the last one. If they agree within the bounds of the precision possible by the input file, then it is presumed that there is no gap between these two frames and instead of the timestamp of the second block the end timestamp of the first block is used. If not, then the timestamp taken from the input file is directly used. This logic is similar to the one used to prevent shifting gaps due to lacing. If someone wants several blocks to overlap (like the 1/3ms above), then this algorithm would obviously destroy this and "correct" the file. But apart from this case (that seems to be totally unlikely) I can't think of a scenario where it would make matters worse. |
||
![]() |
![]() |
![]() |
#40 | Link | |
Registered User
Join Date: Feb 2015
Location: Bavaria
Posts: 1,605
|
Quote:
Does that help? https://forum.videohelp.com/threads/...es#post2526077 |
|
![]() |
![]() |
![]() |
Tags |
matroska |
Thread Tools | Search this Thread |
Display Modes | |
|
|