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.

 

Go Back   Doom9's Forum > General > Subtitles

Reply
 
Thread Tools Search this Thread Display Modes
Old 3rd January 2025, 17:21   #1  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
What Is the Most Rancid PGS Stream Out There?

Greetings everyone,

I have a project I have been working on and it is quickly reaching its conclusion. So now come the sea trials.

What is the most rancid PGS stream out there? I mean something commonly available that is expected to decode and render correctly.

IIRC, Avatar 3D has particularly difficult subtitles.

Any input is appreciated.
wswartzendruber is offline   Reply With Quote
Old 3rd January 2025, 18:05   #2  |  Link
cubicibo
Registered User
 
Join Date: Feb 2022
Posts: 163
These PGS threads are just personalised bait.

These two will fail on FFmpeg-based decoders except HandBrake 1.9.0+:
• All features (decoupled): File (m2ts) - Explanation (Courtesy of Masstock)
• Graphic plane test: File (SUP) - Explanation
Cropping can only be tested with handcrafted samples. The feature works on all Blu-ray players regardless (thanks to the numerous testers).

You can also create your own problems with SUPer.
cubicibo is offline   Reply With Quote
Old 3rd January 2025, 18:14   #3  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
Quote:
Originally Posted by cubicibo View Post
These PGS threads are just personalised bait.
I'm not sure if you're accusing me of something, but I thank you for your help regardless.

Quote:
Originally Posted by cubicibo View Post
These two will fail on FFmpeg-based decoders except HandBrake 1.9.0+:
• All features (decoupled): File (m2ts) - Explanation (Courtesy of Masstock)
• Graphic plane test: File (SUP) - Explanation
I'll run these through PGS4NET's caption compositor and see what it gives me...

Quote:
Originally Posted by cubicibo View Post
Cropping can only be tested with handcrafted samples. The feature works on all Blu-ray players regardless (thanks to the numerous testers).
Yeah, all of the crop testing my project has are from entirely synthetic vectors. I don't have anything I've ripped from my collection that uses this feature.

EDIT: Oh weird. For the graphic plane test, PGS4NET will see a missing WDS and then rip the drawn image down.

EDIT: Fixing this in my implementation is going to suck...

Last edited by wswartzendruber; 3rd January 2025 at 20:53.
wswartzendruber is offline   Reply With Quote
Old 3rd January 2025, 21:40   #4  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
Quote:
Originally Posted by cubicibo View Post
These PGS threads are just personalised bait.
Oh, sorry! I wasn't understanding this earlier this morning before drinking coffee...

Yes, these threads are meant to get your attention, but not exclusively. I welcome anyone who knows about PGS.

With that said, the behavior described by "graphics plane test" almost seems really odd.

What's the URL for the VLC Trac issue? I'm not finding it.
wswartzendruber is offline   Reply With Quote
Old 3rd January 2025, 22:02   #5  |  Link
cubicibo
Registered User
 
Join Date: Feb 2022
Posts: 163
It was more of a joke than anything.

Quote:
With that said, the behavior described by "graphics plane test" almost seems really odd.
I should make an addendum to this answer:
"The graphics plane is [...] where the uncompressed ODS are copied, as instructed by the composition objects whenever a WDS is provided."
Any change to the composition objects can only be reflected to the viewer via a WDS, as I had discovered in that thread. The content of the graphic plane shall be left untouched from the previous composition if no WDS is provided, and the PCS is not starting a new epoch.

Last edited by cubicibo; 3rd January 2025 at 22:04.
cubicibo is offline   Reply With Quote
Old 4th January 2025, 04:20   #6  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
Does the absence of a previously-defined composition object mark the end of an object's time on the screen?
wswartzendruber is offline   Reply With Quote
Old 4th January 2025, 07:45   #7  |  Link
cubicibo
Registered User
 
Join Date: Feb 2022
Posts: 163
All windows are redrawn, per the composition objects instructions, when you provide a WDS. If an object is no longer referenced in that display set, it will not be reproduced onto the graphics plane.

In all subsequent Normal Case DSs, and as long the buffer slot is not overwritten, the object remains in the decoded object buffer and may be re-used later if a composition object references it again.

Last edited by cubicibo; 4th January 2025 at 07:48.
cubicibo is offline   Reply With Quote
Old 4th January 2025, 13:43   #8  |  Link
Otyli
Registered User
 
Join Date: Dec 2024
Posts: 4
Another contender is Disney's 3D Blu-ray releases, such as the Jungle Book or Beauty and the Beast, which can have complex subtitle placements and depth issues that can test your decoding and rendering capabilities.
Otyli is offline   Reply With Quote
Old 4th January 2025, 17:17   #9  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
Quote:
Originally Posted by cubicibo View Post
All windows are redrawn, per the composition objects instructions, when you provide a WDS. If an object is no longer referenced in that display set, it will not be reproduced onto the graphics plane.

In all subsequent Normal Case DSs, and as long the buffer slot is not overwritten, the object remains in the decoded object buffer and may be re-used later if a composition object references it again.
I'm noticing that the third display set in the sequence has palette_update_flag = 0x80. Is it fair to say that this is what triggers a graphics plane update when no windows are present? It seems like this flag causes an entirely separate rendering process to follow.

Quote:
Originally Posted by Otyli View Post
Another contender is Disney's 3D Blu-ray releases, such as the Jungle Book or Beauty and the Beast, which can have complex subtitle placements and depth issues that can test your decoding and rendering capabilities.
Why thank you. I've found a rather cheap copy of Jungle Book on eBay.
wswartzendruber is offline   Reply With Quote
Old 4th January 2025, 17:38   #10  |  Link
cubicibo
Registered User
 
Join Date: Feb 2022
Posts: 163
palette_update_flag instructs the decoder to set the palette indicated by the PCS palette_id in the CLUT at the PCS PTS. The palette_update_flag skips the graphic plane drawing process triggered by a Window Definition Segment. Again, the decoder model applies.
cubicibo is offline   Reply With Quote
Old 4th January 2025, 18:02   #11  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
Quote:
Originally Posted by cubicibo View Post
palette_update_flag instructs the decoder to set the palette indicated by the PCS palette_id in the CLUT at the PCS PTS. The palette_update_flag skips the graphic plane drawing process triggered by a Window Definition Segment. Again, the decoder model applies.
Is that the decoder model from the patent? I've learned to be skeptical of what it says.
wswartzendruber is offline   Reply With Quote
Old 4th January 2025, 18:12   #12  |  Link
cubicibo
Registered User
 
Join Date: Feb 2022
Posts: 163
Yes. Your implementation requires a buffer for the graphic plane anyway, like it or not.
cubicibo is offline   Reply With Quote
Old 8th January 2025, 02:46   #13  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
And I need to rewrite my graphics plane. Do any PGS streams in the wild use moving objects or wipe effect?

EDIT: If I'm understanding the decoding model correctly, the entire screen can only have one active palette (in the CLUT) at any given time.

EDIT: And what is the present consensus on windows changing mid-epoch?

Last edited by wswartzendruber; 8th January 2025 at 05:54.
wswartzendruber is offline   Reply With Quote
Old 8th January 2025, 13:18   #14  |  Link
cubicibo
Registered User
 
Join Date: Feb 2022
Posts: 163
1. Maybe. Assume that there is at least one.
2. Yes, as we had discussed.
3. Strictly forbidden.
cubicibo is offline   Reply With Quote
Old 11th January 2025, 21:34   #15  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
What do you think happens if PaletteUpdateOnly is passed without composition objects? I find it curious that composition objects are present in the PCS but window definitions aren't, in this case.
wswartzendruber is offline   Reply With Quote
Old 11th January 2025, 21:45   #16  |  Link
cubicibo
Registered User
 
Join Date: Feb 2022
Posts: 163
This is implementation dependant. Quite a few Blu-ray players (= reference decoders) ignore the composition objects if palette_update_flag is set. Garbage or none, the player just applies the palette update to the current composition. Authoring tools become confused if the list of compositions changes, so the specs likely claim the compositions should remain identical.
cubicibo is offline   Reply With Quote
Old 12th January 2025, 02:02   #17  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
Quote:
Originally Posted by cubicibo View Post
This is implementation dependant. Quite a few Blu-ray players (= reference decoders) ignore the composition objects if palette_update_flag is set. Garbage or none, the player just applies the palette update to the current composition. Authoring tools become confused if the list of compositions changes, so the specs likely claim the compositions should remain identical.
Whoever came up with this scheme is also whoever is in charge of the Ministry of Silly Walks.
wswartzendruber is offline   Reply With Quote
Old 14th January 2025, 23:12   #18  |  Link
cubicibo
Registered User
 
Join Date: Feb 2022
Posts: 163
I think you really miss the point of the entire format. Maybe if you work with SMPTE-TT and all of these other css+xml insanities you will get to appreciate these clever tricks that makes PGS the most powerful subtitle format the industry (pros, not fansubs) ever came up with to this day. No kidding.

Last edited by cubicibo; 16th January 2025 at 20:03.
cubicibo is offline   Reply With Quote
Old 19th January 2025, 06:32   #19  |  Link
wswartzendruber
hlg-tools Maintainer
 
wswartzendruber's Avatar
 
Join Date: Feb 2008
Posts: 435
EDIT: Nevermind.

Last edited by wswartzendruber; 19th January 2025 at 07:12.
wswartzendruber is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 03:32.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.