VideoHelp Forum




+ Reply to Thread
Results 1 to 4 of 4
  1. Member
    Join Date
    Mar 2002
    Location
    United States
    Search Comp PM
    I've searched the forums and read the how-to's on chaptering (much thanks to all who wrote those! you've all done a great job), and I have a question about chaptering & entrypoints & the SVCD spec

    Michael Tam (and many others, lol, but I assume most of those people are simply quoting him) has said that if you play a movie from chapter 1 and keep watching it until chapter 3 and then press next, then you will go to chapter 2 and not chapter 4. It's got something to do with the SVCD taking the chapter from which it started to play as the reference chapter and not the one which you are watching presently (according to someone named Pumeet ). People say that there is no way around this because of the SVCD specs

    And when I use VCD Imager that is indeed the case.

    However, I previously used I-Author. With SVCDs that were created using I-Author, I can play a movie from chapter 1 to chapter 3 and press Next and go to chapter 4. Or I could jump to chapter 3, rewind to chapter 2, hit Next and go to chapter 3.

    So, if it can be done in I-Author, then doesn't that mean that the SVCD specs will allow chapter sequencing correctly? Is the problem not that proper sequencing can't be done, but that the VCD Imager coders haven't figured out how to do it? And I'm in no way trying to diminish the work of the VCD Imager team, they've done a great job- I'm just trying to figure out if the sequencing is actually prohibited by the SVCD specs

    Thanks in advance!
    Sarah
    Quote Quote  
  2. Actually, "REAL" chapters (as in they work like logical DVD chapters) are designed in the S/VCD specs. The problem is that almost no stand-alone player follow the recommendations in the specs in this way. Playing such a disc on most players will result in just beginning to end playback with no "chapter" functionality at all.

    The process described here: http://www.vcdimager.org/guides/chapters/html is probably the best compromise between functionality and compatibility. It still works pretty well and just about every stand-alone player will play them.

    As for I-Author made chapters, I didn't think that I-Author did anything different. If you could use CDRWin and extract a CUE/BIN image of your SVCD and then use VCDXRIP (part of the VCDImager suite of proggies) and then post the resultant XML file, it would be interesting to know what is happening. VCD Easy includes a GUI for VCDXRIP so you don't have to play around with console based tools if you are unfamiliar/uncomfortable with them.

    The way chapters SHOULD work (but don't on most players) is that there are entrypoints defined for a particular <sequence-item> (I'm using VCDImager terminology here). Then, that <sequence-item> is simply used in a <playlist>.

    <next> and <prev> are then supposed to go to next and previous entrypoints respectively.

    This behaviour is only supposed to work in <playlist> and not <selection> (which is another reason, though unstated, to use <selection> rather than <playlist> for the method described in the above link -- on the odd chance that you have a player that handles real chapters properly, the disc will still work as expected).

    This is supposed to work on VCD1.1, VCD2.0 and SVCD though again, it doesn't work on most players.

    I believe that some Philips players may honour specs in this respect??

    Regards.
    Michael Tam
    w: Morsels of Evidence
    Quote Quote  
  3. Member
    Join Date
    Mar 2002
    Location
    United States
    Search Comp PM
    Hi Michael, thanks for your reply. I tried to reply a few days ago, but then my response wouldn't post.

    I'm using Apex players (600 and 1500). I encode/author/burn on WinXP. At work and one of the home machines, I use Debian -- which I guess isn't really relevant. The XP machine has the faster processor, so that's why he was given the encoding task.

    Here's the xml file from I-Author. I'm sorry for the poor naming conventions used, but everything was assigned during the rip and I didn't want to rename everything.

    What I had created in I-Author (I followed Doom's guide) was a dummy.mpg (segment-0000) file that immediately went to a main menu (segment-0001). Hitting 1 while on the main menu would take you to a Scene Selection Menu (segment-0002). Then there was the main mpg file (a 44 minute tv show), followed by a second mpg file (a cast list i made on my own).

    Code:
    <?xml version="1.0"?>
    <!DOCTYPE videocd PUBLIC "-//GNU//DTD VideoCD//EN" "http://www.gnu.org/software/vcdimager/videocd.dtd">
    
    <videocd xmlns="http://www.gnu.org/software/vcdimager/1.0/" class="svcd" version="1.0">
      <info>
        <album-id>SVCD</album-id>
        <volume-count>1</volume-count>
        <volume-number>1</volume-number>
        <restriction>0</restriction>
      </info>
      <pvd>
        <volume-id>SVCD</volume-id>
        <system-id>S_VCD30 DISC of EnReach</system-id>
        <application-id>I-author v1.0, EnReach, Inc. (C) Copyright 1998, Kernel writen by Hujianjun</application-id>
        <preparer-id>EnReach</preparer-id>
        <publisher-id>EnReach</publisher-id>
      </pvd>
      <filesystem>
        <folder>
          <name>VMP</name>
          <folder>
            <name>SVCDJ</name>
          </folder>
        </folder>
        <folder>
          <name>DATA</name>
          <folder>
            <name>SVCDDATA</name>
          </folder>
        </folder>
        <folder>
          <name>AUTORUN</name>
        </folder>
      </filesystem>
      <segment-items>
        <segment-item src="item0001.mpg" id="segment-0000"/>
        <segment-item src="item0002.mpg" id="segment-0001"/>
        <segment-item src="item0003.mpg" id="segment-0002"/>
      </segment-items>
      <sequence-items>
        <sequence-item src="avseq01.mpg" id="sequence-00">
          <default-entry id="entry-000"/>
          <entry id="entry-001">55.922533</entry>
          <entry id="entry-002">106.973533</entry>
          <entry id="entry-003">226.025800</entry>
          <entry id="entry-004">800.065933</entry>
          <entry id="entry-005">1596.027767</entry>
          <entry id="entry-006">1958.856900</entry>
        </sequence-item>
        <sequence-item src="avseq02.mpg" id="sequence-01">
          <default-entry id="entry-007"/>
        </sequence-item>
      </sequence-items>
      <pbc>
        <playlist id="playlist-01">
          <next ref="selection-01"/>
          <wait>0</wait>
          <autowait>0</autowait>
          <play-item ref="segment-0000"/>
        </playlist>
        <selection id="selection-01">
          <bsn>1</bsn>
          <prev ref="playlist-01"/>
          <next ref="playlist-02"/>
          <return ref="playlist-01"/>
          <default ref="playlist-02"/>
          <wait>-1</wait>
          <loop jump-timing="delayed">1</loop>
          <play-item ref="segment-0001"/>
          <select ref="selection-02"/>
        </selection>
        <selection id="selection-02">
          <bsn>1</bsn>
          <prev ref="selection-01"/>
          <next ref="playlist-02"/>
          <return ref="selection-01"/>
          <default ref="playlist-02"/>
          <wait>-1</wait>
          <loop jump-timing="delayed">1</loop>
          <play-item ref="segment-0002"/>
          <select ref="playlist-02"/>
          <select ref="playlist-03"/>
          <select ref="playlist-04"/>
          <select ref="playlist-05"/>
          <select ref="playlist-06"/>
          <select ref="playlist-07"/>
          <select ref="playlist-08"/>
          <select ref="playlist-09"/>
        </selection>
        <playlist id="playlist-02">
          <prev ref="selection-01"/>
          <next ref="playlist-03"/>
          <return ref="selection-01"/>
          <wait>-1</wait>
          <autowait>0</autowait>
          <play-item ref="sequence-00"/>
        </playlist>
        <playlist id="playlist-03">
          <prev ref="playlist-02"/>
          <next ref="playlist-04"/>
          <return ref="selection-01"/>
          <wait>-1</wait>
          <autowait>0</autowait>
          <play-item ref="entry-001"/>
        </playlist>
        <playlist id="playlist-04">
          <prev ref="playlist-03"/>
          <next ref="playlist-05"/>
          <return ref="selection-01"/>
          <wait>-1</wait>
          <autowait>0</autowait>
          <play-item ref="entry-002"/>
        </playlist>
        <playlist id="playlist-05">
          <prev ref="playlist-04"/>
          <next ref="playlist-06"/>
          <return ref="selection-01"/>
          <wait>-1</wait>
          <autowait>0</autowait>
          <play-item ref="entry-003"/>
        </playlist>
        <playlist id="playlist-06">
          <prev ref="playlist-05"/>
          <next ref="playlist-07"/>
          <return ref="selection-01"/>
          <wait>-1</wait>
          <autowait>0</autowait>
          <play-item ref="entry-004"/>
        </playlist>
        <playlist id="playlist-07">
          <prev ref="playlist-06"/>
          <next ref="playlist-08"/>
          <return ref="selection-01"/>
          <wait>-1</wait>
          <autowait>0</autowait>
          <play-item ref="entry-005"/>
        </playlist>
        <playlist id="playlist-08">
          <prev ref="playlist-07"/>
          <next ref="playlist-09"/>
          <return ref="selection-01"/>
          <wait>0</wait>
          <autowait>0</autowait>
          <play-item ref="entry-006"/>
        </playlist>
        <playlist id="playlist-09">
          <prev ref="playlist-08"/>
          <next ref="selection-01"/>
          <return ref="selection-01"/>
          <wait>0</wait>
          <autowait>0</autowait>
          <play-item ref="sequence-01"/>
        </playlist>
      </pbc>
    </videocd>
    Instead of using Selections, it appears that I-Author used Playlists with an infinite wait time. Doing so would eliminate the problem of playlists automatically advancing to the next item (which you said was the fundamental difference between a selection and a playlist).

    I recently did some more playing with my I-Author discs, and what I said earlier about the Next/Previous buttons correctly going to the Next/Previous chapter isn't quite true.

    Here's a better description of the behavior. I'm going to use figure 5 from http://www.vcdimager.org/guides/chapters.html to help me explain what's going on.

    If I start playing the disc at "Entry 1" (a) and I hit "Next" at any point in (a), I will go to "Entry 2" (b), even if I've already played the disc past point "Entry 2". Hitting "Previous" at any point if I've started from "Entry 1" and advanced past any entry points will return me to the main menu. So (a) from I-Author behaves just like (a) from VCD Imager.

    However, once I hit "Next" that first time, I can let the disc play from "Entry 2" to "Entry 3", hit "Next" and go "Entry 4" (hitting "Previous" will correctly return me to Entry 2). Or I can let the disc play to "Entry 4", hit "Next", and go to "Entry 5" (hitting "Previous" will correctly return me to "Entry 3"). It's only in (a) that Next/Previous don't work properly on the I-Author discs.

    So, I've come to the conclusion that somehow "playlist-02" (which is the first playlist that plays the sequence file) must be different that the subsequent playlists (the rest of the chapters). And I notice that "playlist-02" has a reference of "sequence-00", whereas the subsequent chapters have a reference of "entry-XXX". I'm going to try to fix this issue later (if it can be fixed), once I get my VCD Imager discs behaving like the I-Author discs.

    I modified my XML file to use Playlists modeled after the I-Author structure, instead of the Selections I used originally, and I recreated the bin/cue and burned the SVCD. Sadly, this didn't fix the Next/Previous issue. So I diffed all the files in the SVCD folder on the cds (I-Author vs VCD Imager). And the SEARCH.DAT files are quite different.

    I'm going to try replacing the SEARCH.DAT file on my VCD Imager cd with the SEARCH.DAT file from my I-Author cd. I'm hoping this will make the Next/Previous behave (at least, behave on the Apex players). Then if all goes well (or even if it doesn't), I'm going to change the reference for "playlist-02" to be "entry-000" instead of "sequence-00" and see if that fixes the Next/Previous in (a).

    Sorry this post was so long, and I hope it makes sense Let me know if you have any other suggestions.

    Thanks again for all your help.

    Sarah
    Quote Quote  
  4. playlist-02 as far as I can tell is no different from any of the other playlists. That the play-item is "sequence-???" rather than "entry-???" doesn't/shouldn't make a difference as in that particular case, to reference the first entrypoint or the actual sequence-item is the same.

    The main limitation in using the playlist as opposed to a selection is that even if you use wait=-1 to stop subsequent entry into the next playlist, it means that it won't automatically stop the disc at the end or return to a menu.

    As for the behaviour of your disc, it find it quite curious. I can't explain why it is working as it is...

    Regards.
    Michael Tam
    w: Morsels of Evidence
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!