A Better Way To Find The Correct Playlist/Segment Map

MKV playback, recompression, remuxing, codec packs, players, howtos, etc.
SysCrasher
Posts: 1
Joined: Sat Dec 21, 2019 10:38 pm

SysCrasher

Post by SysCrasher » Mon Dec 30, 2019 3:38 pm

Mat1926 wrote:
Tue Aug 28, 2018 8:16 am
Mat1926 wrote:
Mon Jul 30, 2018 5:06 pm
This method did not work for me. The issue is the "CloseFile" operation, it is not in the drop down menu, and typing "CloseFile" does not help...

The only way was a tutorial on YouTube using ProcessMonitor + PowerDVD + filtering Path only "mpls"...This lead to the correct play list... and then I used makmkv to extract that one only...
Okay, guys! Just a quick update...

The method I described above (not mine BTW), is the perfect starting point. It saves you a lot of trouble if you have many playlists, because you don't spend time searching for the correct playlist if you followed the OP method. And searching for .mpls instead of .m2ts served me well until last night!

I have this BD where the correct .mpls according to M$ Process Monitor does not show entirely in the MakeMKV list. So I thought of giving the .m2ts method a go...and guess what as expected I was able to find the correct playlist. However, maybe it is because I am on Win 10 X64, or because my Process Monitor is the latest, the only difference is that instead of "CloseFile", choose "IRP_MJ_CLOSE" from the combo box/drop down menu. That is the only difference...

Good luck, and thnx to OP for the help :)
Why you don't search for IRP_MJ_CLEANUP instead?
Then you only have the same count of segments than MakeMKV has.

Quote from a Microsoft documentation about this entry also looks very interesting:
When Sent

Receipt of the IRP_MJ_CLEANUP request indicates that the handle reference count on a file object has reached zero. (In other words, all handles to the file object have been closed.) Often it is sent when a user-mode application has called the Microsoft Win32 CloseHandle function (or when a kernel-mode driver has called ZwClose) on the last outstanding handle to a file object.

It is important to note that when all handles to a file object have been closed, this does not necessarily mean that the file object is no longer being used. System components, such as the Cache Manager and the Memory Manager, might hold outstanding references to the file object. These components can still read to or write from a file, even after an IRP_MJ_CLEANUP request is received.
I have tested it today on my StarWars 8 Bluray and it only shows me the different entries/segments. Maybe I'll test it later the week on other discs.
Attachments
Unbenannt.PNG
Unbenannt.PNG (28.19 KiB) Viewed 5303 times

mgutt
Posts: 127
Joined: Sun May 05, 2019 6:38 pm

Re: A Better Way To Find The Correct Playlist/Segment Map

Post by mgutt » Thu Jan 09, 2020 9:47 pm

Only for those people that already own the DVDFab package or want to pay 60 to 150 € for the player alone (does not make sense compared to the total lifetime package price):

If you start the movie through DVDFab Player and use the playlist button in the bottom right corner it displays the MPLS number of the movie:
2020-01-09 22_44_45.png
2020-01-09 22_44_45.png (1.02 MiB) Viewed 5235 times

No need to monitor file access or fast play the movie.

MetalDave
Posts: 29
Joined: Wed May 03, 2017 10:17 pm

Re: A Better Way To Find The Correct Playlist/Segment Map

Post by MetalDave » Tue Jun 02, 2020 5:38 am

Hey, friends.

I just caught up with this thread this evening. Interesting information.

I'm wondering if this method could be transposed to use VLC as the Blu-ray player instead of those mentioned in the thread. To take it a step further, I also wonder if we can do something similar using macOS utilities (e.g. Activity Monitor or CLI utility).

Has anyone played with either to sleuth the segment map?

Thanks,

- Dave
Support MakeMKV - Buy a license!
(Seriously, you use this thing enough; A lifetime license is well worth it.)

Thank you to all of my fellow supporters!

Mr_Orange
Posts: 50
Joined: Sun Jul 14, 2019 6:11 am

Re: A Better Way To Find The Correct Playlist/Segment Map

Post by Mr_Orange » Mon Aug 31, 2020 3:57 am

This is probably a uninformed suggestion but can the .clpi files in the 'CLIPINF' folder of a disc be used to help determine the correct playlist and segment map?

namos23
Posts: 1
Joined: Thu Sep 03, 2020 11:03 pm

Re: A Better Way To Find The Correct Playlist/Segment Map

Post by namos23 » Thu Sep 03, 2020 11:06 pm

Trying to dump the disc info via command line just results in "Invalid Command:Mobile"

Anyone know why?

awdspyder
Posts: 10
Joined: Sun Dec 23, 2018 11:56 pm

Re: A Better Way To Find The Correct Playlist/Segment Map

Post by awdspyder » Mon Sep 07, 2020 8:20 pm

MetalDave wrote:
Tue Jun 02, 2020 5:38 am
Hey, friends.

I just caught up with this thread this evening. Interesting information.

I'm wondering if this method could be transposed to use VLC as the Blu-ray player instead of those mentioned in the thread. To take it a step further, I also wonder if we can do something similar using macOS utilities (e.g. Activity Monitor or CLI utility).

Has anyone played with either to sleuth the segment map?

Thanks,

- Dave
Yes, I've been using VLC as the player along with OpenedFilesView to document the segment map. I switched over a while ago, as I just can't stomach paying the crooks at CyberLink to upgrade their crappy software.

I've only had one issue with JW3 that stated it was the wrong region code for some reason. Still haven't figured that one out...

dcoke22
Posts: 38
Joined: Wed Jul 22, 2020 11:25 pm

Re: A Better Way To Find The Correct Playlist/Segment Map

Post by dcoke22 » Mon Sep 07, 2020 9:57 pm

It seems like OpenedFilesView (https://www.nirsoft.net/utils/opened_files_view.html) is a Windows program. MetalDave was asking about how to do it on a Mac.

MacOS has something called fs_usage (https://ss64.com/osx/fs_usage.html). You can make it show you all the file system events that a program has. On a Mac, when you launch VLC, it has a process name of VLC. If you look in Activity Monitor you'll find it. Hence the following command will display all the filesystem events that the process named VLC does.

Code: Select all

sudo fs_usage VLC
You'll need admin privileges to make this work, since it uses some kernel tracing facilities.

If VLC is playing a video, you'll see a stream of things scroll by. Probably too fast to read. Saving the output in a file is probably better.

Code: Select all

sudo fs_usage VLC > ~/vlc-output.txt
That'll put the output in a file named vlc-output.txt in your home folder. There will be a bunch of stuff in there, but eventually you'll see where VLC reads a .m2ts file from where ever your blu-ray backup is.

Code: Select all

16:27:09  read                                                                                        0.000002   VLC         
16:27:09  read                                                                                        0.000002   VLC         
16:27:09  read                                                                                        0.001099   VLC         
16:27:09  read                                                                                        0.000004   VLC         
16:27:09  read                                                                                        0.000002   VLC         
16:27:09    RdData[A]       /Volumes/Me/M/b/movie/BDMV/STREAM/00810.m2ts           0.003406 W VLC         
16:27:09    RdData[A]       /Volumes/Me/M/b/movie/BDMV/STREAM/00810.m2ts           0.020080 W VLC         
16:27:09    RdData[A]       /Volumes/Me/M/b/movie/BDMV/STREAM/00810.m2ts           0.022471 W VLC         
16:27:09  read                                                                                        0.000021   VLC         
16:27:09  read                                                                                        0.000006   VLC         
16:27:09  read                                                                                        0.000005   VLC         
16:27:09  read                                                                                        0.000005   VLC         
16:27:09  read                                                                                        0.000017   VLC         
16:27:09  read                                                                                        0.000001   VLC         
16:27:09  read                                                                                        0.000002   VLC
Use your favorite text searching utility to look for just the .m2ts entries and you can find the play order.

I have verified that is works with at least 1 blu-ray backup on macOS Mojave and with VLC 3.0.11.1.

For completeness, I should point out that one could use the command

Code: Select all

lsof
It only runs at a point in time, however and doesn't monitor continuously by default. You can point lsof at a specific process to see what files a process has open at that moment in time with the following command.

Code: Select all

lsof -p <PID>
PID is the process ID of VLC, which one can find in Activity Monitor.

Reiver
Posts: 10
Joined: Wed Jul 26, 2017 8:45 am

Re: A Better Way To Find The Correct Playlist/Segment Map

Post by Reiver » Fri Sep 11, 2020 4:54 pm

A word of caution on VLC though, it doesn't always get the right playlist/segments.

The last time I tried it got the wrong playlist for me with John Wick 3 aka Lionsgate obfuscation. This was with (now) a few minor releases old VLC 3.0.8 (on Linux) but still the same libbluray 1.2.0 that chose the wrong playlist. So double check with other people reports if possible.

Post Reply