Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

really allow 0 duration chapters #542

Closed
robUx4 opened this issue Aug 25, 2021 · 1 comment · Fixed by #552
Closed

really allow 0 duration chapters #542

robUx4 opened this issue Aug 25, 2021 · 1 comment · Fixed by #552
Labels
bug clarifications spec_main

Comments

@robUx4
Copy link
Contributor

@robUx4 robUx4 commented Aug 25, 2021

In #464 I said it was not necessary. In retrospect I think a duration of 0 for some chapters is necessary.

In ordered editions, as said above, you can merge things you need for that chapter in neighbor chapters. Only a marker right at the end of the file may not be possible but I'm not sure it's of any use.

I found a simple DMX generated file (from 2005) which has a duration of 0:

<Chapters>
 <EditionEntry>
  <EditionUID>1676494232</EditionUID>
  <EditionFlagOrdered>1</EditionFlagOrdered>
  <!-- First Play PGC -->
  <ChapterAtom>
   <ChapterUID>1246888591</ChapterUID>
   <ChapterTimeStart>00:00:00.000000000</ChapterTimeStart>
   <ChapterTimeEnd>00:00:00.000000000</ChapterTimeEnd>

   <ChapterDisplay>
    <ChapterString>First Play PGC 1246888591</ChapterString>
   </ChapterDisplay>

   <ChapterProcess>
    <ChapterProcessCodecID>1</ChapterProcessCodecID>
    <ChapterProcessPrivate format="hex">30 00 00 00 </ChapterProcessPrivate>
    <!-- Pre commands -->
    <ChapterProcessCommand>
     <ChapterProcessTime>1</ChapterProcessTime>
     <ChapterProcessData format="hex">01 30 02 00 00 00 02 00 00 </ChapterProcessData>
    </ChapterProcessCommand>
   </ChapterProcess>
  </ChapterAtom>
 </EditionEntry>
</Chapters>

This is actually the equivalent of the entry point of the DVD (first play program chain). And because it uses DVD commands (when entering) it cannot be merged into another chapter that would also start at 00:00:00.000000000, because it may also have some commands on entering. (I do have this case as well)

One reason not to allow 0 duration was the odd situation where the ChapterTimeEnd value is excluded from the chapter content to play (in ordered editions). And at the same time it's included in ChapterTimeStart. But we can just say that in this case the duration is 0. The player should just enter/leave such a chapter nonetheless during playback, in order to handle the ChapProcess content.

@robUx4 robUx4 added bug clarifications spec_main labels Aug 25, 2021
@hubblec4
Copy link
Contributor

@hubblec4 hubblec4 commented Aug 25, 2021

Yeah, I have ever prefered such a 0-duration for ordered chapters.
I have also seen such chapter.xml files from DMX.

robUx4 added a commit that referenced this issue Aug 27, 2021
There can be segments with just chapters containing commands.

In ordered chapters the content will not play anything, it may seek to the
position for nothing but that's not a big deal.

Fixes #542
robUx4 added a commit that referenced this issue Nov 28, 2021
There can be segments with just chapters containing commands.

In ordered chapters the content will not play anything, it may seek to the
position for nothing but that's not a big deal.

Fixes #542
robUx4 added a commit that referenced this issue Jan 2, 2022
There can be segments with just chapters containing commands.

In ordered chapters the content will not play anything, it may seek to the
position for nothing but that's not a big deal.

Fixes #542
@robUx4 robUx4 closed this in #552 Jan 2, 2022
robUx4 added a commit that referenced this issue Jan 2, 2022
There can be segments with just chapters containing commands.

In ordered chapters the content will not play anything, it may seek to the
position for nothing but that's not a big deal.

Fixes #542
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug clarifications spec_main
Projects
Development

Successfully merging a pull request may close this issue.

2 participants