![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Воспроизведение файла из файлового потока через MediaPlayer [D7, XP]
Rendal © (2009-08-10 00:31:00)Всем привет! Возник вопрос воспроизведения звукового файла из памяти. Не знаю,что нужно писать в MediaPlayer1.FileName.
Самый примитивный способ: сохранить поток в файл, а затем воспроизвести его, имея путь к нему.
Думаю, что это можно сделать и через Stream.WriteBuffer, но не знаю как и правильно ли это. А тогда, как потом получить ссылку на него.
procedure PlayStream;
var
lib: THandle;
Stream: TResourceStream;
begin
lib:= LoadLibrary('music.dll');
Stream:=TResourceStream.Create(lib,'new1',rt_RCData);
Form1.MediaPlayer1.FileName:=?;
Form1.MediaPlayer1.Open;
Form1.MediaPlayer1.Play;
FreeLibrary(lib);
KilkennyCat (2009-08-10 01:16:00) [1]Необязательно директсоунд, мрожно осуществить и нативный доступ к звуковой карте, я в свое время одноаременно воспроизоводил асинхронный звук с четырех звуковых карт по каждому каналу. Примеров в сети куча.
Rendal (2009-08-10 01:13:00) [2]как раз то что мне нужно, через него как раз можно воспроизводить из буфера, спс!
DVM (2009-08-10 01:07:00) [3]
> Rendal ©
> но затем столкнулся с проблемой воспроизведения нескольких
> звуков одновременно
Тут тебе поможет только DirectSound
Rendal (2009-08-10 01:05:00) [4]спасибо за совет, я также однажды маскировал wma. но только это было давно, но затем столкнулся с проблемой воспроизведения нескольких звуков одновременно
DVM (2009-08-10 00:56:00) [5]
> Rendal © (10.08.09 00:45) [2]
кстати, вот:
http://www.delphilab.ru/content/view/26/1/
DVM (2009-08-10 00:53:00) [6]
> Rendal ©
PlaySound воспроизведет файл закодированный любым кодеком, лишь бы он был установлен в системе.
Rendal (2009-08-10 00:45:00) [7]Дело в том, что хотелось бы воспроизводить менее ресурсоемкие форматы, например wma.
DVM (2009-08-10 00:37:00) [8]PlaySound() прекрасно воспроизводит звук из ресурса, зачем MediaPlayer то сразу? Напоминает использование TMemo всякий раз когда надо сохранить текст в файл.