Bass.dll i nagrywanie ze streamu

Bass.dll i nagrywanie ze streamu
0

witam. W przykladach bass.dll jest programik treamtest do generowania dzwieku o okreslonej czestotliwosci. Chcialbym tak zmodyfikowac program, aby moc zapisac ow dzwiek w pliku .wav. Jakis przykladzik?

cimak
  • Rejestracja:ponad 22 lata
  • Ostatnio:ponad 9 lat
  • Postów:1668
0

chcesz bassem tylko generowac dzwiek o danej czestotliwosci czy uzywac go jeszcze do czegos?
jesli tylko o to chodzi to bass jest za ciezkim sprzetem do takich rzeczy - sciganij sobie komponent TToneGen - nim mozesz generowac rozne "proste" dzwieki i zapisywac je do pliku. dodatkowo masz mozliwosc wyboru czy to ma byc sinus, prostokat, trojkat, nakladanie harmonicznych itd...

edytowany 3x, ostatnio: cimak
0

umiesz otiwerac pliki w bass.dll?

0

Nie jestem gesty w bass ani generalnie w dzwiekach, dlatego prosze o konkretne tipsy.
Cimak : dzieki, ale chyba istnieje sposob skierowania strumienia do pliku?

Ja probuje tak ale nie otrzymuje upragnionego efektu:

RecStream := TFileStream.Create('1.wav', fmCreate);
RecStream.Write(WaveHdr, SizeOf(WAVHDR));
while (BASS_ChannelIsActive(SineStream) > 0) do
begin
BASS_ChannelGetData(SineStream, @buf, BytesRead);
RecStream.Write(buf, BytesRead);
Application.ProcessMessages;
end;

cimak
  • Rejestracja:ponad 22 lata
  • Ostatnio:ponad 9 lat
  • Postów:1668
0

wiesz co.. czy Ty oby na pewno dobrze uzywasz BASS_ChannelGetData()? chyba nie bo z tego co pamietam to to sluzylo do pobierania FFT...
do bassa masz dolaczaona bardzo dokladna pomoc, czemu jej nie uzywasz?
z reszta, przejrzyj reszte przykladow bo pamietam ze kiedys byl jakis ktory potrafil zapisywac dane do pliku wav.
wciaz jednak nie rozumiem czemu sie tak upierasz przy bassie ale ok, Twoja sprawa.

edytowany 3x, ostatnio: cimak
olesio
  • Rejestracja:około 17 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Szczecin
  • Postów:4191
0

Tak jak napisal cimak wcześniej, do bass, a przynajmniej w wersji 2.4 jest dołączony przykład w podkatalogu delphi\RecordTest,
który pokazuje jak nagrywać do TMemoryStream, a następnie już łatwo to zapisać w formacie pliku WAV, ale podejrzewam, że i
do TFileStream da się to również zapisać na bieżąco skoro do pamięci się da to i na dysk za pewne również - po przeróbce kodu.


Pozdrawiam.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.