Einzelnen Beitrag anzeigen

Cyf

Registriert seit: 30. Mai 2008
407 Beiträge
 
Lazarus
 
#1

Wave aus dem Speicher abspielen

  Alt 11. Okt 2008, 12:49
Ich versuche derzeit, eine kleine Klasse zusammenzubasteln, die Waves (derzeit nur PCM) abspielen kann, das grundsätzliche dabei ist, dass die Daten bereits eingelesen sind und ich sie nur ungern erst wieder in eine Datei schreiben würde. Ich suche also eine Möglichkeit die Audiodaten mit möglichst wenig overhead abzuspielen. Entweder direkt aus einem Array oder wenn ich das entsprechend umbau aus einem TMemoryStream oder ähnlichem.

Gegeben folgende Klasse:

Delphi-Quellcode:
type
  TWave = class(TObject)
  private
    FAvgBytesPerSec: Cardinal;
    FBitsPerSample: Word;
    FBlockAlign: Word;
    FChannels: Word;
    FData: array of Byte;
    FDataLength: Cardinal;
    FFormat: Word;
    FSampleRate: Cardinal; //samples pro Sekunde
  public
    constructor Create(Stream: TStream);
    procedure LoadWave(Stream: TStream);
    function GetInfo: string;
  end;
  Mit Zitat antworten Zitat