Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi puffergröße bei wave wiedergabe (https://www.delphipraxis.net/93821-puffergroesse-bei-wave-wiedergabe.html)

Gonzales 11. Jun 2007 22:05


puffergröße bei wave wiedergabe
 
Hallo

ich versuch mich grad an einer drummachine und frage mich wie gross ich den puffer wählen muss damit die wiedergabe ohne knacken verläuft. ich habe imma ein knacken am anfang der wiedergabe.

für anregungen wäre ich sehr dankbar.

Dunkel 11. Jun 2007 23:06

Re: puffergröße bei wave wiedergabe
 
Wie wäre es mit ausprobieren? Sukzessives vergrößern des Puffers und hören, ab wann das Knacken nicht mehr auftritt.

EWeiss 11. Jun 2007 23:56

Re: puffergröße bei wave wiedergabe
 
Die größe eines Wavebuffers kompremiert (mp3) PCM = 1152 Samples
Ist aber abhängig von den Kanälen also 2 x Kanäle = 2 * 1152 samples.

gruss Emil

Gonzales 12. Jun 2007 07:07

Re: puffergröße bei wave wiedergabe
 
hmm naja einfach nur vergrössern wäre ja nich sinn und zweck der sache da die länge der einzelnen waves ja variieren ..es müsste quasi eine formel zur berechnung der puffergrösse geben.

@EWeiss ich bräuchte sowas für waves nich für mp3.

mfg

SirThornberry 12. Jun 2007 07:33

Re: puffergröße bei wave wiedergabe
 
mit der größe der Wave hat das gar nicht zu tun. Eine Wave-Datei mit einer Größe von 250kb sieht für die Soundkarte genau so aus wie eine Wave-Datie mit einer Größe von 500MB. Denn du schickst ja nicht die gesammte Wave-Datei hinn sondern nur den Teil den die Soundkarte abspielen soll. Und zu knacksern kommt es eben dann wenn die Soundkarte nicht schnell genug neue Daten bekommt.
Daraus kannst du auch schlussfolgern das die minimale Puffergröße von System zu System verschieden ist, je nach dem wieviel Rechenzyklen dein Prozess in einer bestimmten Zeit bekommt und somit mehr oder weniger Daten an die Soundkarte schicken kann. Läuft also ein anderer Process in Realtime sind knackser auch vorprogrammiert da dein Prozess in aller Regel dann nicht mehr genug Rechenzeit bekommt um die Soundkarte ausreichend schnell mit neuen Daten zu versorgen.

Gonzales 12. Jun 2007 07:41

Re: puffergröße bei wave wiedergabe
 
hmm ok und nu soll ich die minimale puffergrösse durch probieren herausfinden? oder gibt es ne art berechnung dafür?

SirThornberry 12. Jun 2007 07:45

Re: puffergröße bei wave wiedergabe
 
es gibt keine Berechnung da es eben auch von System zu System verschieden ist und von der aktuellen Systemauslastung durch andere Prozesse abhängig ist. Am besten du machst es in den Optionen einstellbar (Combobox mit mehreren möglichen Puffergrößen).

[Edit]Mir fällt grad noch was ein: Verwendest du nur einen Puffer oder wenigstens mehrere? Bei einem kommt es auch zu knacksern weil ja erst neue Daten zur Soundkarte geschickt werden wenn der Puffer abgearbeitet ist.[/Edit]

Gonzales 12. Jun 2007 07:49

Re: puffergröße bei wave wiedergabe
 
ich bin schon froh das ich ne wiedergabe mit einem puffer hingekriegt hab ...wie müsste denn der ablauf mit mehreren puffern aussehn?

SirThornberry 12. Jun 2007 07:52

Re: puffergröße bei wave wiedergabe
 
ich dachte du hast schon alles soweit uns suchst nur noch nach den optimalen Puffergröße.
Wie man mit mehreren Puffern arbeitet zeigt das Beispielprogramm in folgendem Beitrag:
http://www.delphipraxis.net/internal...=657793#657793

Gonzales 12. Jun 2007 07:57

Re: puffergröße bei wave wiedergabe
 
ok ich werde mir das ma in ruhe anschauen ..thx ers ma für die schnelle hilfe


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:11 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz