![]() | ||
КАК ВОСПРОИЗВЕСТИ mp3-ФАЙЛ ИЗ ПРОГРАММЫ | ||
Для воспроизведения mp3-файлов рекомендуем воспользоваться библиотекой bass.dll. Это библиотека для работы с различными форматами аудио, поддерживаются плагины. Скачать ее можно на официальном сайте разработчиков http://www.un4seen.com/ вместе с подробным описанием. | ||
Ниже рассмотрим пример использования библиотеки. Попробуем воспроизвести файл 'test.mp3'. Обратите внимание, что в USES необходимо указать Bass. На форму помещаем две кнопки: btnPlay и btnStop. | ||
![]() | ||
unit Main; interface uses Windows, Messages, SysUtils, Classes, Controls, Forms, Bass; type TChannelType = (ctUnknown, ctStream, ctMusic); type TfrmMain = class(TForm) btnStop: TButton; btnPlay: TButton; Label1: TLabel; procedure FormCreate(Sender: TObject); procedure btnStopClick(Sender: TObject); procedure btnOpenClick(Sender: TObject); private Channel: DWORD; ChannelType: TChannelType; function BASS_PlaySoundFile(const FileName: string): Boolean; end; var frmMain: TfrmMain; implementation {$R *.DFM} function TfrmMain.BASS_PlaySoundFile(const FileName: string): Boolean; var ChannelInfo: BASS_CHANNELINFO; begin Result:= False; Channel:= BASS_StreamCreateFile(False, PChar(FileName), 0, 0, 0); if (Channel <> 0) then ChannelType:= ctStream; if (Channel <> 0) then begin BASS_ChannelPlay(Channel, False); end; Result:= Channel <> 0; end; procedure TfrmMain.FormCreate(Sender: TObject); var BassInfo: BASS_INFO; begin BASS_Init(1, 44100, BASS_DEVICE_3D, Handle, nil) BASS_Start; BASS_GetInfo(BassInfo); end; procedure TfrmMain.btnStopClick(Sender: TObject); begin BASS_ChannelStop(Channel); end; procedure TfrmMain.btnPlayClick(Sender: TObject); begin BASS_PlaySoundFile('test.mp3') end; end. |