MagicFileReplacement(tm) and extarnal subtitles

Discussion in 'AnyDVD HD (Blu-ray issues)' started by Kiriakos, Jan 21, 2008.

  1. Kiriakos

    Kiriakos Member

    Hi,
    is there a way to modify the .XPL file and can (through magic file replacement) have external subtitles in the known .xmf-.xas format? I am trying but with no luck so far. The extra subtitle is selectable though, but nothing on screen.
     
  2. YaniD

    YaniD Well-Known Member

    It should be possible in HD-DVD at least, because the ability to download and incorporate different soundtracks external to the primary disc is part of the spec and I expect that would include video and subtitles too. Although I'm not sure what format would be accepted for subtitles.

    First step might be to look at an HD-DVD with web enabled content and see if you can detect how it's incorporated in the .XPL.
     
  3. Kiriakos

    Kiriakos Member

    Ok, i have great news! Done it. Through the creation of a new aca file that contains the subtitle files and the altered inputs in .XPL file i am able to watch my HDDVDs WITH subtitles WITHOUT ripping them first. Super. Thanks to AnyDVD though. Without it, it's a no go. :bowdown: :clap:
     
  4. YaniD

    YaniD Well-Known Member

    Would you care to post a more detailed description of how you did this, for the benefit of those of us who wouldn't have a clue how to create an aca file, for example?
     
  5. Kiriakos

    Kiriakos Member

    Sorry Yani, i had trouble with stuff and i am a little late.

    A guide in your native language is here (i think that you are Greek ... )

    A ''try'' in english is this:

    The first part is the ''How to make external subs for HDDVDs'' . If you are familiar with this, go to the ''How to have external subs with original HDDVD disk played from HDDVD drive'' .

    Part 1. ''How to make external subs for HDDVDs''

    From here you can get the programs that I am talking about bellow.
    You have to find the subtitle file in your language in .srt format (easy on internet) . Play the movie in your favorite player and write down the exact time of the first and last spoken lines. Then, open the .srt file in SubtitleWorkshop and by going Edit > Timings > Adjust > Adjust Subtitles… and entering the above times you can readjust the timings of the lines to fit with your movie. Save and exit.
    Now open the srt2xas.exe program and select the items in the fields that you ‘ll see. Pay attention in the last field, when you ‘ll select the .XPL file it ‘ll display bellow it the ‘’main movie’’ or something. Make sure that this is your main movie (look at the play time) . Click ‘’Start’’ and you are done. By opening the movie in PDVD you can select the new added from you subs by the ‘’U’’ key of your keyboard.
    Now, you have to have 3 new files in your movie’s ADV_OBJ folder, a font file (like arial.ttf) a .xmf and a .xas file (like blabla.xmf – blabla.xas) . In your movies .XPL file if you open it in notepad you ’ll see a new piece of code that srt2xas inserted before and will look something like this:
    ………………………….
    …………………………
    ………………………..
    …………………………..
    <Chapter displayName="Chapter 48" titleTimeBegin="02:43:23:02" />
    <Chapter displayName="Chapter 49" titleTimeBegin="02:50:56:10" />
    <Chapter displayName="Chapter 50" titleTimeBegin="02:57:32:35" />
    </ChapterList>
    <TrackNavigationList>
    <AudioTrack track="1" langcode="en:01" selectable="true" />
    <AudioTrack track="2" langcode="jp:01" selectable="true" />
    <AudioTrack track="3" langcode="fr:01" selectable="true" />
    <AudioTrack track="4" langcode="it:01" selectable="true" />
    <AudioTrack track="5" langcode="de:01" selectable="true" />
    <AudioTrack track="6" langcode="es:01" selectable="true" />
    <SubtitleTrack track="1" langcode="el:01" selectable="true" />
    </TrackNavigationList>
    <AdvancedSubtitleSegment src="file:///dvddisc/ADV_OBJ/blablabla.xmf" titleTimeBegin="00:00:00:00" titleTimeEnd="03:07:05:14" sync="hard" xmlns="">
    <Subtitle track="1" />
    <ApplicationResource src="file:///dvddisc/ADV_OBJ/blablabla.xmf" loadingBegin="00:00:00:00" priority="1" multiplexed="false" />
    <ApplicationResource src="file:///dvddisc/ADV_OBJ/blablabla.xas" loadingBegin="00:00:00:00" priority="1" multiplexed="false" />
    </AdvancedSubtitleSegment>

    </Title>
    </TitleSet>
    </Playlist>

    (In bold the new code)


    Now the part 2. ''How to have external subs with original HDDVD disk played from HDDVD drive''


    Tools needed:
    From here a very good but beta stage tool that allows us to make and edit easy .aca files (like those being in ADV_OBJ folders in HDDVDs) .

    Notepad super editor :p

    AnyDVD up and running.


    How:

    I am assuming that you have someware the 4 subtitle files needed for watching our movie from the HDD with them, named blade.xas, blade.xmf, arial.ttf and the modified VPLST000.XPL.

    AnyDVD, among its many great services, does something called ''magic file replacement''. This works like this: When we throw our HDDVD disk in the drive, it reads it and copies some files someware, modifies them and then by ''magic'' puts them back to disk! Thats magic man. Now, if you set it to NOT delete the altered files on exit, it dosen't. So the next time that you will play the same disk it will read the files from the first time. That is what we can use creatively.
    If you right click the little fox on the right bottom of your screen and go to settings --> HDDVD you 'll see the 2 folders that anydvd uses to store the files mentioned before. The first one is for the .XPL files (in a folder for every movie, you 'll see) and the other is for the .aca files. Aca files are a kind of containers like .zip or .rar files but without compression and they contain files that the player uses to give you goods like menus etc.
    Now, insert the movie disk, wait to do its job and after 20 secs or so deactivate it (anydvd). Go to the folder that contains the modified by Anydvd VPLST000.XPL file and replace it with yours (the one of 4 that i mensioned before with the subtitles) . Go to the folder that contains the .aca files from Anydvd modification and look for .aca files. Choose one that you think that it wont be used from the start of the movie or if there is just one, choose that . Lets say that it is the ''menu.aca'' for the example. Now go back to the .XPL and open it in notepad. Search for the ''AdvancedSubtitleSegment'' part of the file. There, you have to edit some lines like this:

    From:
    <AdvancedSubtitleSegment src="file:///dvddisc/ADV_OBJ/blade.xmf" titleTimeBegin="00:00:00:00" titleTimeEnd="01:55:42:00" sync="hard" xmlns="">
    <Subtitle track="5" />
    <ApplicationResource src="file:///dvddisc/ADV_OBJ/blade.xmf" loadingBegin="00:00:00:00" priority="1" multiplexed="false" />
    <ApplicationResource src="file:///dvddisc/ADV_OBJ/blade.xas" loadingBegin="00:00:00:00" priority="1" multiplexed="false" />
    </AdvancedSubtitleSegment>


    To:

    <AdvancedSubtitleSegment src="file:///dvddisc/ADV_OBJ/menu.aca/blade.xmf" titleTimeBegin="00:00:00:00" titleTimeEnd="01:55:42:00" sync="hard" xmlns="">
    <Subtitle track="5" />
    <ApplicationResource src="file:///dvddisc/ADV_OBJ/menu.aca/blade.xmf" loadingBegin="00:00:00:00" priority="1" multiplexed="false" />
    <ApplicationResource src="file:///dvddisc/ADV_OBJ/menu.aca/blade.xas" loadingBegin="00:00:00:00" priority="1" multiplexed="false" />
    </AdvancedSubtitleSegment>


    PS: We are altering the path of the subtitle files so the player will search them in the menu.aca file, by inserting the extra text shown red above.

    Now we have to alter the path in the .xas and .xmf files too. Open them in notepad and by using the Edit--> replace tool, replace the ''file:///dvddisc/ADV_OBJ/'' with "file:///dvddisc/ADV_OBJ/ menu.aca/'' . Save and exit.


    Now you ''ll make the new menu.aca file with the DoACA program. Open it, click ''New'', type the name of the choosen .aca (menu.aca in our example) and save. DragnDrop the 3 subtitle files (blade.xas, blade.xmf, arial.ttf for our example) in the DoACA's window, click ''save'' and exit.
    now replace the modified by anydvd menu.aca with the new one.

    That was it. Enable Anydvd to read the new files and replace with them the originals in disk. Now you 'll be able to select the subs that you want through ''U'' key or by clicking the subs button in PDVD.

    It is nothing realy, the first time is a little hard but what isn't? It takes me about 2,5 mins per movie. 8)


    Any questions, glad to help anytime. Have fun. ;)

    PS: BIIIIIIIIG thanks to Slysoft-AnyDVD. :bowdown:
     
  6. YaniD

    YaniD Well-Known Member

    I wish. It's only a username.

    Incredible guide though, thanks for that.

    I'm guessing something similar could be done for external soundtracks.
     
  7. Kiriakos

    Kiriakos Member

    Hmmmmmm ;)