Re[2]: Чтение ATIP-информации с CD-диска в Delphi/C++.
От: MegaMonster  
Дата: 29.10.04 04:14
Оценка:
Здравствуйте, Patalog, спасибо за ответ, Вы писали:

MM>>Разобраться самому не получается (как из них вытащить информацию?).


P>Данные даны по состоянию INF-8090i Rev 5.1

P>
P>enum format_codes
P>{
P>    format_TOC = 0x00,                            /* Returned data - TOC, Track/Session field contains the track number */
P>    format_session_info = 0x01,            /* Returned data - Session Information, Track/Session field is reserved */
P>    format_full_TOC = 0x02,                    /* Returned data - Full TOC, Track/Session field contains Session number */
P>    format_PMA = 0x03,                            /* Returned data - PMA, Track/Session field is reserved */
P>    format_ATIP = 0x04,                            /* Returned data - ATIP, Track/Session field is reserved */
P>    format_CDText = 0x05                        /* Returned data - CD-Text, Track/Session field contains Session number */
P>};

P>struct atip_A1_data
P>{
P>    unsigned char        rec_speed_hight : 4;        /* Highest Usable CLV Recording Speed
.
.
.
P>    unsigned char        A2_value[3];                    /* Reserved */

P>    unsigned char        res12;

P>    unsigned char        A3_value[3];                    /* Reserved */
P>    unsigned char        res13;
P>};
P>


Я честно скажу, не знаю что с этим текстом делать .

Пытаясь найти решение своей задачи получилось:
1) Могу считать к примеру SectorsPerTrack используя IOCTL_DISK_GET_DRIVE_GEOMETRY или кол-во треков на аудио диске;
2) В msdn-е нашел, как читать диск посекторно. Т.е. вся инф-я сохраняется в файле. Так может через этот метод найти ATIP? Как я понял она находится не в начальных секторах, а в другом месте... может вы знаете в каких нужно конкретно читать секторах, чтоб считать ATIP?
Или всетаки подкините кусочек кода, как это сделать по нормальному.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.