Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Звук, графика и видео > Как правильно проиграть mp3 из ресурса


Автор: sergeisutor 5.1.2010, 08:06
Как правильно проиграть mp3 из ресурса

в файле  MusicRec.RC написал  MUSIC1 RCDATA sample.mp3 обработал brcc32.exe
Присоединил к проекту.
При компиляции выдает ошибку.

[Error] Unit1.pas(36); Undeclared identifier: 'Music'
[Error] Unit1.pas(36); Undeclared identifier: 'MusicSize'
[Fatal Error] Project1.dpr(8); Could not compile used unit 'Unit1.pas'

Код

 Bass in 'Bass.pas';// в файле Project1.dpr ошибка

Music:=BASS_SampleLoad(TRUE, P, 0, MusicSize, 3, BASS_SAMPLE_OVER_POS);// в файле Unit1.pas ошибка



Подскажите как сделать правильно.

Код

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Bass;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{$R MusicRec.RES}

procedure TForm1.FormCreate(Sender: TObject);
 var 
  RSRC : HRSRC; 
  RES : THandle; 
  P : Pointer;
begin
RSRC:=FindResource(HInstance, 'MUSIC1', RT_RCDATA);
RES:=LoadResource(HInstance, RSRC);
P:=LockResource(RES);

//вот здесь выдает ошибку
Music:=BASS_SampleLoad(TRUE, P, 0, MusicSize, 3, BASS_SAMPLE_OVER_POS);
end;

end.


Автор: AntonN 5.1.2010, 09:35
скопировать из ресурса в TmemoryStream, а в процедуру проигрыша передавать TmemoryStream.memory и ее размер

Автор: sergeisutor 5.1.2010, 16:19
Можно пример!
 smile 

Автор: Letion 14.7.2010, 22:38
Цитата(AntonN @ 5.1.2010,  09:35)
скопировать из ресурса в TmemoryStream, а в процедуру проигрыша передавать TmemoryStream.memory и ее размер

А поподробнее можно? Спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)