Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#10

AW: Delphi type nach c#

  Alt 6. Nov 2014, 01:26
Dann wirst du wohl zwei Arrays brauchen, eins mit floats und eines mit int16. Das float-Array in GetData() einsetzen, dessen Inhalt danach unter dem üblichen Genauigkeitsverlust in das int16-Array umkopieren (bzw. "umkopikonvertieren"), und dieses dann nachher weiter benutzen. Anders würde man das in Delphi auch nicht machen können, wenn schlicht die Typen (und in diesem Fall sogar die Längen in Byte) nicht übereinstimmen.

Am Rande: Ich vermute, dass Wave-Daten als Floats in Werten von -1..1 geliefert, als int16 aber -32768..32767 erwartet werden. Du müsstest in diesem Fall dann natürlich entsprechend skalieren beim "umkopikonvertieren".
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)

Geändert von Medium ( 6. Nov 2014 um 01:30 Uhr)
  Mit Zitat antworten Zitat