Nero API 6.0.0.0 DVD burning directory order
| Nero SDK Discussion Forum Discuss, Nero API 6.0.0.0 DVD burning directory order at Nero & InCD forum; Hi there, as some people know I'm writing the ImgTool which uses the NeroAPI to burn DVD Root directories to DVD media. Since version 1.03 of the API it's possible to burn a (almost) standard conform DVD Video. All previous versions of the API had a bug which creates also |
| Hi there, as some people know I'm writing the ImgTool which uses the NeroAPI to burn DVD Root directories to DVD media. Since version 1.03 of the API it's possible to burn a (almost) standard conform DVD Video. All previous versions of the API had a bug which creates also a Joliet tree if you only choose ISO/UDF. Now this problem has gone... but a new one exists. It's not a real problem but I think this should also be fixed: If I now create a DVD Video using the API I get the right ISO/UDF bridge filesystem but the directory order in the UDF part of the filesystem is wrong. There comes the VIDEO_TS directory first but the AUDIO_TS directory has to be the first one. In the ISO part the directory order is right... Just in case someone of Ahead have a look at this forum... Greets, CouJo! |
- Today (MyCE Staff)
- Posts: 15,596
| |
| Hello, UDF Filesystem do not require directories to be sorted alphabetically. You should thus be able to determine the order in which the FIDs are created in the directory by just specifying them in the correct order within the NERO_ISO_ITEM linked list. Regards, andyE Quote:
|
| The first list entry in the ISO item list is the AUDIO_TS directory, that's the problem. Greets, CouJo! |
| Just some code snippets to show that the ISO Tree has the right directory order... Code: //====================================================================
// making AUDIO_TS stuff
//====================================================================
pStart = new NERO_ISO_ITEM;
if(pStart != NULL)
{
memset((void *)pStart, 0, sizeof(NERO_ISO_ITEM));
// terminate next pointers
pStart->nextItem = NULL;
pStart->subDirFirstItem = NULL;
strcpy(pStart->fileName, "AUDIO_TS");
pStart->isDirectory = TRUE;
pStart->entryTime = *pTimeStruct;
pStart->isReference = FALSE;
if(AUDIO_TS_exists)
{
CreateISOStructure(Path + (CString)"\\AUDIO_TS", &pStart);
}
}
else
{
CleanDVDISOStructure(&pStart);
AppendString(IDS_ERROR_13);
return(NULL);
}
//====================================================================
// making VIDEO_TS stuff
//====================================================================
NERO_ISO_ITEM *pActual = new NERO_ISO_ITEM;
if(pActual != NULL)
{
memset((void *)pActual, 0, sizeof(NERO_ISO_ITEM));
// terminate next pointers
pActual->nextItem = NULL;
pActual->subDirFirstItem = NULL;
strcpy(pActual->fileName, "VIDEO_TS");
pActual->isDirectory = TRUE;
pActual->entryTime = *pTimeStruct;
pActual->isReference = FALSE;
pStart->nextItem = pActual;
}
else
{
CleanDVDISOStructure(&pStart);
AppendString(IDS_ERROR_13);
return(NULL);
}
...some lines later: Code: mycd.nwcdIsoTrack = NeroCreateIsoTrackEx(pStart, VolumeLabel, IsoFlags); Greets, CouJo! |
There's more to MyCE.com
Listen up, we've got more. Product information on 102,541 products. Our experts have written 521 articles. We've gathered 16,068 news items for you to always keep updated.