![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
CD-ROM [D7, WinXP]
VitalikS © (2006-02-09 02:58:00)Подскажите пожалуйста как узнать букву CD-ROM'а который подклучен к материнке, т.е. является аудио CD-ROM.
VitalikS (2006-02-10 16:26:00) [1]
> Зато ты указал id дивайса! На тот же CD ты можешь подцепить
> еще 2,3,5, да хоть десяток "букв", если они у тебя еще останутся.
> В конечном итоге система выйдет через любую букву все равно
> на этот id.
Ясно спасибо. А жаль.....
evvcom (2006-02-10 16:18:00) [2]
> Причем не указывая буквы CD-ROM'а.
Зато ты указал id дивайса! На тот же CD ты можешь подцепить еще 2,3,5, да хоть десяток "букв", если они у тебя еще останутся. В конечном итоге система выйдет через любую букву все равно на этот id.
evvcom (2006-02-10 16:12:00) [3]
> Это всё равно что пытаться определить к какому выходу подключены
> колонки.
А вот это кстати совсем не фантастика. Где-то с год-два назад звал меня сосед машинку его посмотреть. Что-то там со звуком он не мог разобраться. Звук 5.1 интегрирован на мать (вроде тот же АС97). Залез в настройки дров и диву дался. Предположил, что карта сама определяет, что подключено на ее входы/выходы. Т.е. одни и те же разъемы могут использоваться как входы, так и выходы. Либо 6 колонок (звук 5.1), либо 2 колонки + наушники + микрофон, либо другие комбинации. Поэкспериментировал. Подключил наушники туда, где только что был микрофон, а микрофон - на место колонок. Смотрю картинка тут же изменилась. Видимо по сопротивлению карта определяет, что подключено. И соответственно через драйвер можно эту инфу добыть. Но... естественно карта должна быть соответствующей и дрова также.
Digitman (2006-02-10 16:01:00) [4]Автору разница между "цифрой" и "аналогом" неведома - какие же м.б. разговоры на сию тему ?
VitalikS (2006-02-10 16:00:00) [5]Но серийник же я могу получить!!! Причем не указывая буквы CD-ROM'а.
McSimm (2006-02-10 15:38:00) [6]а факт наличия проводочка (аудио-кабель 3 жилы) определить невозможно, т.к. это то по сути равносильно подключенным наушникам или микрофону.
tesseract (2006-02-10 15:37:00) [7]
> Мне нужно определить букву CD-ROM'а который подключен к
> звуковой карте.
Такое нереально. Это всё равно что пытаться определить к какому выходу подключены колонки.
Тем более что CD может быть подключён как по SPDIF, так и по аналогу.
Чем тебя сканирование на CD-A не привлекает? Тем более "проводочками" никто из медиа-плйеров не пользуется (у меня был цифровой но я его отключил за ненадобностью).
McSimm (2006-02-10 15:35:00) [8]
> Мне нужно определить букву CD-ROM'а который подключен к
> звуковой карте.
в общем случае это просто невозможно, т.к. из N устройств CD в системе к звуковым картам могут быть подключены от 0 до N устройств.
При этом, если не ошибаюсь, где-то в настройках есть возможность указать какое именно из устройств программы воспроизведения должны использовать по умолчанию (при этом никто не мешает указать другое).
Есть ли такая настройка на самом деле я точно не помню и как определить - не знаю, я просто попробовал дать направление.
Digitman (2006-02-10 15:32:00) [9]
> Мне нужно определить букву CD-ROM'а который подключен к
> звуковой карте
А если таковых ФИЗИЧЕСКИ нет, но медиа-плейер НЕПОСТИЖИМЫМ ОБРАЗОМ воспроизводит медиа-данные с компакт-диска ?
VitalikS (2006-02-10 15:28:00) [10]
> быть может автору нужно определить привод, указанный в системе
> по-умолчанию для воспроизведения аудио-дисков соответствующими
> программами?
Мне нужно определить букву CD-ROM'а который подключен к звуковой карте.
Напиши пожалуйста как определить то о чём ты написал, я сразу скажу то или нет.
VitalikS (2006-02-10 15:25:00) [11]
> и где в этом коде упоминание "проводочка"?
Создается МедиаПлеер (это видно по первым строчкам), а он сам знает (к сожалению не знаю каким образом) какой привод ему нужен. Проверь этот код, с CD-ROM без "проводочка" и с ним и посмотри что получится.
> Причем, совсем не обязательно его ("проводочек") цеплять
> именно на вход "CD". На карте есть еще вход "AUX". Поставлю
> я второй сидюк и зацеплю его на AUX, и каким образом системе
> определять (и зачем), с какого устройства на какой из входов
> подается аналоговый сигнал?
Ну мне для проги нужно. Если несколько CD-ROM'ов тогда можно использовать любой, и получать его серийник AudioCD и его букву.
> Ты заблудился в терминах/технологиях/механизмах.
Да вроде нет, в чём именно я заблудился???
> Желаю выбраться.
Спасибо.
Выход всё равно должен быть.
McSimm (2006-02-10 15:25:00) [12]быть может автору нужно определить привод, указанный в системе по-умолчанию для воспроизведения аудио-дисков соответствующими программами?
Digitman (2006-02-10 15:02:00) [13]
> VitalikS (10.02.06 14:10) [19]
Ты заблудился в терминах/технологиях/механизмах.
Желаю выбраться.
evvcom (2006-02-10 14:46:00) [14]
> код в [15], автоматически определяет привод CD-ROM тот самый
> который мне и нужно
и где в этом коде упоминание "проводочка"?
> > По "проводочку" тому самому аналоговый сигнал с ЦАП CD-
> дивайса
> > подается на микшер AC97
> Именно так!
Причем, совсем не обязательно его ("проводочек") цеплять именно на вход "CD". На карте есть еще вход "AUX". Поставлю я второй сидюк и зацеплю его на AUX, и каким образом системе определять (и зачем), с какого устройства на какой из входов подается аналоговый сигнал?
VitalikS (2006-02-10 14:10:00) [15]
> CD-ROM вообще ничего не "проигрывает".
> Проигрывает CD Drive.
> A CD-ROM - это носитель.
Проигрывает, имелось ввиду в переносном смысле.
> В смысле с проводочком или нет?
> И что это даст?
Да именно с проводочком. Этот код автоматически находит какой привод CD-ROM подключен к звуковой карте (или мат плате), если проводочка нет вылетит ошибка.
> Смелое заявление)
Ну а как ещё если так и есть или ты по другому считаешь?
> По "проводочку" тому самому аналоговый сигнал с ЦАП CD-дивайса
> подается на микшер AC97 в составе AC97-чипа, будь он хоть
> на аудиокарте хоть интегрирован в motherboard.
Именно так!
Но должно же быть какое-то решение этой проблеммы. Ведь приведенный мной код в [15], автоматически определяет привод CD-ROM тот самый который мне и нужно, но как узнать буковку????
Digitman (2006-02-10 12:59:00) [16]
> VitalikS (10.02.06 12:27) [15]
По "проводочку" тому самому аналоговый сигнал с ЦАП CD-дивайса подается на микшер AC97 в составе AC97-чипа, будь он хоть на аудиокарте хоть интегрирован в motherboard.
Не более того.
EvS (2006-02-10 12:55:00) [17]>и хотелось бы тут же узнать с какого привода он считывается
В смысле с проводочком или нет?
И что это даст?
Digitman (2006-02-10 12:40:00) [18]
> Именно так, и не только по моему
Смелое заявление)
> CD-ROM не будет проигрывать
CD-ROM вообще ничего не "проигрывает".
Проигрывает CD Drive.
A CD-ROM - это носитель.
VitalikS (2006-02-10 12:27:00) [19]
> А если его нет, то CD-ROM сразу перестает быть Аudio CD-
> ROM'ом, так по-твоему ?
Именно так, и не только по моему. Однако если проводочка нет это не означает что CD-ROM не будет проигрывать Audio диски.
Я выполняю вот такой код:
var
mp : TMediaPlayer;
msp : TMCI_INFO_PARMS;
MediaString : array[0..255] of char;
ret : longint;
begin
mp := TMediaPlayer.Create(nil);
mp.Visible := false;
mp.Parent := Application.MainForm;
mp.Shareable := true;
mp.DeviceType := dtCDAudio;
mp.FileName := 'D:';
mp.Open;
Application.ProcessMessages;
FillChar(MediaString, sizeof(MediaString), #0);
FillChar(msp, sizeof(msp), #0);
msp.lpstrReturn := @MediaString;
msp.dwRetSize := 255;
ret := mciSendCommand(Mp.DeviceId, MCI_INFO, MCI_INFO_MEDIA_IDENTITY,
longint(@msp));
if Ret <> 0 then
begin
MciGetErrorString(ret, @MediaString, sizeof(MediaString));
Memo1.Lines.Add(StrPas(MediaString));
end
else
Memo1.Lines.Add(StrPas(MediaString));
mp.Close;
Application.ProcessMessages;
mp.free;
end;
Узнаю серийный номер AudioCD, и хотелось бы тут же узнать с какого привода он считывается.
Digitman (2006-02-10 11:04:00) [20]
> VitalikS (10.02.06 10:34) [12]
> Именно им.
А если его нет, то CD-ROM сразу перестает быть Аudio CD-ROM'ом, так по-твоему ?