• AnyStream is having some DRM issues currently, Netflix is not available in HD for the time being.
    Situations like this will always happen with AnyStream: streaming providers are continuously improving their countermeasures while we try to catch up, it's an ongoing cat-and-mouse game. Please be patient and don't flood our support or forum with requests, we are working on it 24/7 to get it resolved. Thank you.

Detecting Playlist Obfuscation

Rippper

Member
Thread Starter
Joined
Mar 14, 2014
Messages
7
Likes
0
This playlist obfuscation is getting really annoying now. I've been reading these forums and learned a bit about it lately.

The BDMV/PLAYLIST folder contains the *.mlps files. Example: The Catching Fire bluray disc I have has 226 .mpls files and apparently the 00461.mpls file is the one that has the correct order. I just double click on this or drag it onto ZoomPlayer and the movie appears to play fine. If I don't manually select 00461.mpls, there is one chapter that keeps repeating throughout playback. :doh: I'm not going rip to ISO from now on in order to have easier direct access to this playlist folder.

The biggest question I have is among these hundreds of .mpls files, how does a regular Bluray player know to detect and select the correct one for playback? The correct playlist must be encoded somewhere on the disc otherwise normal players couldn't play movies correctly and the Bluray industry would collapse! :confused: AnyDVD HD needs to have a way to simulate this and have a clear way to display this information to the user 100% of the time after, before, or during ripping.

Even if there were no way to positively identify the correct playlist, at least for the repeated chapters, it would be possible to write some kind of script or AnyDVD HD could scan through every mpls and eliminate the ones that contain repeated chapters. The mlps files are binary though as they are junk when viewed in a text editor. It would be nice if there was some library in Java, Perl, or PHP to read standard Bluray structure like the playlists.
 
AnyDVD HD needs to have a way to simulate this and have a clear way to display this information to the user 100% of the time after, before, or during ripping.

AnyDVD tells you the playlist in the status window - It also stores the playlist info in a 'disc.inf' file on the root of the disc, so any player can use the info if they choose.
 
AnyDVD tells you the playlist in the status window - It also stores the playlist info in a 'disc.inf' file on the root of the disc, so any player can use the info if they choose.

Hmm, that's good to know. I have American Hustle and Catching Fire and am looking at the disc.inf for both and no mention of a playlist file in either one of them. Catching Fire definitely has obfuscation. Nothing was mentioned in the status window but maybe I missed it. I'll check next rip.

Example disc.inf:
[disc]
type=BD-ROM
version=AnyDVD HD 7.4.3.0 (BDPHash.bin 14-01-07)
totalsectors=12085504
label=CATCHING_FIRE
speedmenu=0
region=1

I'm using AnyDVD HD 7.4.3.0 (BDPHash.bin 14-01-07)
 
cause you're using a version that doesnt support it properly yet. Your using 7430, catching fire wasn't fully supported until 7443 (current beta)
 
AnyDVD tells you the playlist in the status window - It also stores the playlist info in a 'disc.inf' file on the root of the disc, so any player can use the info if they choose.
Running AnyDVD HD 7.4.4.3 (current beta). AnyDVD does display the playlist in the status window, but it is not included in the disc.inf file. Here is the disc.inf file from "Catching Fire"

[disc]
type=DVD-ROM
version=AnyDVD HD 7.4.4.3 (BDPHash.bin 14-02-26-B)
totalsectors=12085504
layers=1
label=CATCHING_FIRE
speedmenu=1
region=-1

Upon further review...I was looking at the disc.inf file on the ripped iso. The disc.inf file that is contained on the non-ripped BD does contain the playlist.

[disc]
type=BD-ROM
version=AnyDVD HD 7.4.4.3 (BDPHash.bin 14-02-26-B)
totalsectors=12085504
label=CATCHING_FIRE
speedmenu=1
region=-1
playlists=461
 
Last edited:
Upon further review...I was looking at the disc.inf file on the ripped iso. The disc.inf file that is contained on the non-ripped BD does contain the playlist.

The ripped ISO should contain the playlist info too (if you originally ripped with a version that supported this disc)

Make sure you don't have AnyDVD enabled on your virtual drive as AnyDVD will scan and replace the 'disc.inf' file that contains the playlist info with a 'disc.inf' with no playlist information.

Suggestion to Slysoft: Could be a good idea for AnyDVD not to create a new 'disc.inf' file if one is already present - that way users who do have AnyDVD enabled on their virtual drive will not have the playlist information overwritten.
 
you can't create a new disc.inf file without having to resave(recreate) the iso again.
 
you can't create a new disc.inf file without having to resave(recreate) the iso again.

That is true, but if AnyDVD is enabled on the virtual drive then the 'disc.inf' is "replaced" on the fly, so in Windows the 'disc.inf' file with the playlist information will never actually be seen (unless you disable AnyDVD), only the newly "created" file will be seen.

Edit: Obviously nothing is really created or replaced inside the ISO itself.
 
Last edited:
That is true, but if AnyDVD is enabled on the virtual drive then the 'disc.inf' is "replaced" on the fly, so in Windows the 'disc.inf' file with the playlist information will never actually be seen (unless you disable AnyDVD), only the newly "created" file will be seen.

Edit: Obviously nothing is really created or replaced inside the ISO itself.

That's right I've noticed this too. not a big deal but an irritation
 
The ripped ISO should contain the playlist info too (if you originally ripped with a version that supported this disc)

Make sure you don't have AnyDVD enabled on your virtual drive as AnyDVD will scan and replace the 'disc.inf' file that contains the playlist info with a 'disc.inf' with no playlist information.

Suggestion to Slysoft: Could be a good idea for AnyDVD not to create a new 'disc.inf' file if one is already present - that way users who do have AnyDVD enabled on their virtual drive will not have the playlist information overwritten.
Thanks for the clarification. I did have AnyDVD enabled on the virtual drive. disabling it provided the correct disc.inf. I second your suggestion for AnyDVD not to create a new disc.inf if one is already present.
 
cause you're using a version that doesnt support it properly yet. Your using 7430, catching fire wasn't fully supported until 7443 (current beta)

Okay, I guess I got to have the absolute latest AnyDVD HD version. Still, though, its odd that regular DVD players (both hardware & software players) can select the proper playlist every time. They do not need firmware upgrading to watch the latest BluRay releases.
 
That's because standalone players have their own fixed key to decrypt the disc content and start playback. They're not software rippers and as such don't trigger the wrong playlists. The actual mechanics are a bit hard to explain the point is the disc sees the hardware key, sees it as authorized to see the valid playlist and gets the correct playlist to show the movie in the correct way. With a decrypter like anydvd it's not that simple. Afaik it uses its own key that, that key is different in a way to hardware keys and the encryption on the disc sees that, due to that the encryption can detect it as non-authorized and redirects it to a playlist that doesn't play the movie in the proper way. That's what happened with 7430, anydvd wasn't updated to properly handle the disc, as such the decryption was not correct and the decrypted disc rip were using the wrong playlist and it was also not shown in the disc.inf file. The current beta is updated to handle that movie properny

Verstuurd vanaf mijn Nexus 7 met Tapatalk
 
Okay, I guess I got to have the absolute latest AnyDVD HD version. Still, though, its odd that regular DVD players (both hardware & software players) can select the proper playlist every time. They do not need firmware upgrading to watch the latest BluRay releases.

Blu-ray players never "select" playlists. A Blu-ray Disc has software on it, the player runs it and the software on the disc chooses the playlists. AnyDVD has to analyze that software in order to tell which playlist may be the main movie, which is not trivial.

That's because standalone players have their own fixed key to decrypt the disc content and start playback. They're not software rippers and as such don't trigger the wrong playlists. The actual mechanics are a bit hard to explain the point is the disc sees the hardware key, sees it as authorized to see the valid playlist and gets the correct playlist to show the movie in the correct way. With a decrypter like anydvd it's not that simple. Afaik it uses its own key that, that key is different in a way to hardware keys and the encryption on the disc sees that, due to that the encryption can detect it as non-authorized and redirects it to a playlist that doesn't play the movie in the proper way. That's what happened with 7430, anydvd wasn't updated to properly handle the disc, as such the decryption was not correct and the decrypted disc rip were using the wrong playlist and it was also not shown in the disc.inf file. The current beta is updated to handle that movie properny

Did you dream that up, somehow? ;)
 
I wrote a tool called BDHero that filters out the vast majority of "bogus" playlists and shows you only the ones you're likely to care about using a series of heuristics. For North American discs it removes > 95% of the garbage (based on the discs I tested, though obviously YMMV).

If you're interested in the details of the heuristics it uses to sniff out main feature playlists, you can take a look at the source code or send me a message and I'll be happy to explain the process.
 
Thanks for the clarification. I did have AnyDVD enabled on the virtual drive. disabling it provided the correct disc.inf. I second your suggestion for AnyDVD not to create a new disc.inf if one is already present.

I 3rd this suggestion. Thanks for this thread...helps me to understand and get past the obfuscation nonsense!
 
I solved this in a video uploaded to youtube. Type in blu ray playlist obfuscation on these boards or Google it. This works on any movie in 2 min. You must have original disk and a full version of any commercial software to play back the movie. What this video shows you is how to isolate the moment the player decrypts the mpls playback file in memory to tell the player the correct order sequence of playback. The movie industry already has software that looks for slysoft running and when it detects it the playlist scrambles. Try this test to prove me wrong. Disable any dvd hd and try movie. If you own a purchased copy of a commercial player it will play fine. Then enable any dvd hd and watch the movie scramble. Or worse yet a black screen or a warning message saying you are pirating or whatever. Any dvd hd broke the bluray protection so the movies way of figniting back is bluray playlist obfuscation encoded in the Java part of the disk. I figure if the player can read the correct playlist try disabling any dvd hd for the test. Run a memory program that is designed for searching for window process and isolate the process for the player to read the mpls file after the play button is pressed on the player. At the point of play the blu ray playlist obfuscation routine kicks in and calls a bogus mpls file in the playlist folder. Each mpls file is linked inside to call m2ts files. Like branching a bunch of small files together to make one big movie. The movie industry simply made 100s of mpls files to mix up the movie making us users frustrated to find a needle in a hay stack. Before my method people would have to guess the correct playlist through elimation of length of movie then watching each one until the correct one matches the proper sequence. Now you do not need to even watch the movie. load it. load process monitor set filters then press play. scroll to Bajo and the. jar files then the target mpls file appears in memory. Takes 2 min. I've tested this and it works fast and accurate every time. Just be aware that some movies do not use this protection so just use any dvd hd suggest playback in speed menu. This video covers the gap where any dvd hd stops and my method takes over until any dvd hd comes up with a beta update which just after acouple weeks they do.
 
I wrote a tool called BDHero that filters out the vast majority of "bogus" playlists and shows you only the ones you're likely to care about using a series of heuristics. For North American discs it removes > 95% of the garbage (based on the discs I tested, though obviously YMMV).

If you're interested in the details of the heuristics it uses to sniff out main feature playlists, you can take a look at the source code or send me a message and I'll be happy to explain the process.

Can you write a search routine to find the item in my video so all a user has to do is load the small program, hit play and the mpls file that's in memory shows up. This would be sweet instead of having to scroll to find the bdjo and jar files. Like something like if file-.jar or . bdjo then read the next 5 lines of the stack in memory then output to the sceen. Kinda something like that. The last time I did computer programming was with quick basic. I wrote a game called stock ticker. Ive messed with ollyBDG and understand jmp, pop push routines to follow a program through to change its behavior. I just don't have time to do this right now.
 
Error: Any dvd hd broke the bluray protection so the movies way of figniting back is bluray playlist obfuscation encoded in the Java part of the disk. I figure if the player can read the correct playlist try disabling any dvd hd for the test. Run a memory program that is designed for searching for window process and isolate the process for the player to read the mpls file after the play button is pressed on the player. At the point of play the blu ray playlist obfuscation routine kicks in and calls a bogus mpls file in the playlist folder

Correction:
Please note when the play button is pressed on the player the MsMpEng.exe of powerdvd uttra14 spits out the correct mpls right after the bdjo and jar files in that order. The rest of the m2ts mpls files before this are part of the into, doubly theater trailer, movie menu, upcoming trailers...all the garbage we want to exclude.

If you continue to view the memory dump you will now see the individual .m2ts files play that are called from the mpls file tell the movie finishes then returns to the xxxx.m2ts menu file.


I cant speak for any other commercial player as I have not tested this on other products. But Im sure they all come to a point that spits out the mpls file after the play button on the commercial software player.

You input on this

Peer
SlySoft Development Team ????
 
Back
Top