Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.20;
Скачать: CL | DM;

Вниз

Проигрывание музыки другим приложением   Найти похожие ветки 

 
MixAnOL   (2005-06-24 16:51) [0]

Здорово всем!

Нужно узнать из своего приложения воиспроизводит ли другое приложение музыку из mp3, midi или avi.

Что-то ум ничего не приходит как енто реализовать...

Может кто подкинет советик?


 
MixAnOL   (2005-06-24 16:56) [1]

Может уровень звука проверять - дык не знаю как енто сделать, ткните в соответствующую инфу


 
MixAnOL   (2005-06-27 16:26) [2]

Нашел кульную прогу по получению параметров выходного звука, но она не решает проблему, т.к. свое приложение также может проигрывать музыку....

И все молчат.... может считаете, что это проблема давно решенная и не хотите отвечать еще один раз - но я не нашел никаких способов, хотя облазал много форумов и статей...

надеюсь на помощь ...


 
Digitman ©   (2005-06-27 16:32) [3]


> из mp3, midi или avi


имеется ввиду, открыт ли хотя бы один из файлов вышеперечисленных форматов конкретным интересующим приложением ? так что ли ?


 
MixAnOL   (2005-06-28 10:03) [4]

именно конкретным, но не перебирать же все файлы...


 
Digitman ©   (2005-06-28 11:12) [5]


> не перебирать же все файлы


перебрать хендлы объектов целевого процесса, отобрать нужные (см. www.sysinternals.com)

а если целевой процесс просто открыл файл, но не воспроизводит в дан.момент ничего ?


 
MixAnOL   (2005-06-28 13:58) [6]

нужен факт: воспроизводит или нет


 
Digitman ©   (2005-06-28 14:23) [7]


> MixAnOL   (28.06.05 13:58) [6]


в такой постановке задача нерешаема, потому что нет прямой связи между фактом открытия приложением некоего интересующего файла и фактом воспроизведения приложением данных именно из этого файла

вариантов масса :

- файл открыт, но воспроизведение не начато
- файл не открыт (данные из него были уже прочитаны и файл после этого закрыт), воспроизводятся ранее прочитанные в память данные
- файл открыт, но воспроизводятся данные из ранее открывавшегося другого файла
- и т.д. и т.п.


 
MixAnOL   (2005-06-28 14:50) [8]

а я и не делал упор на решение таким методом. Зная специфику рассматриваемого приложения, могу утверждать что если файл открыт - то он воспроизводится. Проверил с пом. утилы handler по твоей ссылке. Но ентот спосо как раз не канает для миди файлов, так как работает именно по этому варианту:

> - файл не открыт (данные из него были уже прочитаны и файл
> после этого закрыт), воспроизводятся ранее прочитанные в
> память данные

Для мп3 и ави - все нормально.


 
Digitman ©   (2005-06-28 15:06) [9]

а как насчет "файл открыт, а воспроизведение - в режиме паузы" ?


 
MixAnOL   (2005-06-28 16:33) [10]

такого режима нет


 
Digitman ©   (2005-06-28 16:39) [11]

можно полюбопытствовать, в связи с чем и для чего возникла такая задача ?

думается, не в тот огород ты полез) ..


 
MixAnOL   (2005-06-29 12:24) [12]

есть приложение, оно в зависимости от действий пользователя может проигрывать музыку. Требуется написать приложение, кот. когда первое ничего не воспроизводит проигрывать свою информацию.

Первое приложение не мое и  исходников нет, поэтому такая байда и получается...


 
Digitman ©   (2005-06-29 12:59) [13]

а как ты "проигрываешь свою информацию" ? Компоненты, спецификации, интерфейсы какие используешь ?


 
MixAnOL   (2005-06-29 13:35) [14]

да просто проигрываю Mp3 файлы медиа плейером, что-то типа рекламы...


 
Digitman ©   (2005-06-29 13:42) [15]


> проигрываю  .. медиа плейером


в смысле используешь компонент TMediaPlayer ?


 
MixAnOL   (2005-06-29 16:02) [16]

да, но это к решению задачи ни как не ведет


 
Digitman ©   (2005-06-30 08:28) [17]

ведет.

если другое приложение заняло в дан.момент waveOut- или midiOut-интерфейс, то твое приложение при попытке выполнить метод TMediaPlayer.Open получит исключение, при обработке которого по коду ошибки в св-ве TMediaPlayer.Error можно подтвердить этот факт


 
MixAnOL   (2005-06-30 18:11) [18]

Нашел способ решить енту задачу!
Повезло, разработчики в логе указывают какой файл и когда проигрывается => можно узнать когда есть простой и когда нет.

мп3 из своего приложения я стал проигрывать bass-плейером, т.к. TMediaPlayer косячит с определение длительность при переменном битрейте...

Спасибо за советы)))



Страницы: 1 вся ветка

Текущий архив: 2005.11.20;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.4 c
2-1130959225
Sysanin
2005-11-02 22:20
2005.11.20
TServerSocket и TClietSocket


4-1126889831
ArtemESC
2005-09-16 20:57
2005.11.20
свойства другого окна


2-1130188759
zaN0za
2005-10-25 01:19
2005.11.20
Требуется ваш совет


2-1130492059
VEZ
2005-10-28 13:34
2005.11.20
StrToInt


4-1127292865
Denizzz
2005-09-21 12:54
2005.11.20
Окно приложения прижать к панели задач (справа/слева)