-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
4. Aug 2006
Okay, werde mich daran halten! :oops: (Will nur nich dauernd neue Threads eröffnen).
Und das JPG-Bild ist kleeein ;)
@Hawkeye: Danke für die Info! :)
@Der Unwissende: Wow! :shock: Danke für die ausführliche Eklärung, muss mir das nochmal in Ruhe zu Gemüte führen! :)
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Ich glaub ich spinne! Vollkommen richtig! Jetzt versteh ich gar nichts mehr ... was hat ein Byte offset mit (hatte ja noch überall +1 drin) mit dem reinem "Klang-Ergebnis" zu tun?? Ich fass das alles nicht ... *G*
:stupid:
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Procedure TForm1.ProcessWave(FileName: String);
var
Wavbuffer: TSmallIntArray;
Header: TWaveHeader;
i: Integer;
Amp: Double;
begin
Amp := 0.5; // halbieren der lautstärke
LoadTheWave(Outputfile.Text, Wavbuffer, sizeOf(Header)+1); //laden der audio daten
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Doch, klar? Ich übergeb damit den Start - Wert (?) :)
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
HawkEye: Ja tritts mich doch ein Pferd, stimmt - natürlich! Sonst schreibt er die Bytes bzw. Größe der Typ-Definition ins File, nicht aber die eigentlich Daten! Das war es! :) Vielen Dank! Und danke nochmal an DGL-Luke!!
Achso und: SaveTheWave z.b. ist nichts weiter als deine Original SaveToFile-Prozedure! ;) Mit den anderen Prozeduren genauso! :)
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Eigentlich schon! :)
Momentan versuche ich es so, aber werds jetzt mal innerhalb einer Prozedur versuchen!
Procedure TForm1.ProcessWave(FileName: String);
var
Wavbuffer: TSmallIntArray;
Header: TWaveHeader;
i: Integer;
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
seufz... jetzt sind im Audio-Teil des WAV´s daten die da nicht hingehören *G* :coder2:
Genauso verwunderlich ist immernoch, das ich den Inhalt vom WavBuffer komplett auf 0 setze, das heisst es müsste totale Stille im WAV sein - aber da ist nichts verändert
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Jepp, das funzt soweit .. :)
Nur zerstört er dann am Ende das WAV-File ...hmm...
EDIT: Achso! Muss ja noch das Offset für den Header setzen!
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
So wie es aussieht crasht es bei ReadBuffer(Value,length(Value) * sizeof(SmallInt));
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Danke, Luke!
Quasi so:?
Procedure TForm1.LoadTheWave(FileName: String; out Value: TSmallIntArray; Start: Integer = 0);
begin
with TFilestream.Create(Filename, fmOpenRead) do
try
Position := Start;
setlength(Value, Size-Position);
ReadBuffer(Value,length(Value));
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Okay, leuchtet ein ... aber warum bekomme ich Stream-Errors wenn ich Position einfach weglasse? Oder Position := 0 (was logisch wäre)? ... genauso - müsste setlength(Value, Size) nicht funktionieren? (Aber nein, tut es nicht)...ARGH! Ich könnte echt nur auskeksen....seufz :)
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Danke! Aber wieso ein "or" dazwischen? Nicht: fmOpenRead, fmSowieso?
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Okayyyy.... alllso einmal muss ich doch noch was fragen! :oops:
Und zwar:
Procedure TForm1.LoadTheWave(FileName: String; out Value: TSmallIntArray;Start: Integer = 0);
begin
with TFilestream.Create(Filename, fmOpenRead) do
try
Position := Size;
setlength(Value, Size-Position);
ReadBuffer(Value,length(Value));
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Vielen Dank!! :)
EDIT: Hab es :oops: :lol:
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Unter "Implementation" :
Type
TSmallIntArray = Array of SmallInt;
end;
..muss hier kein record hin?(Hier habe ich garantiert noch etwas verwechselt) :oops:
Ansonsten:
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Hmmm.. bekomme andauernd "undeclared Identifier" .... sehr merkwürdig, die sind doch definiert...
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Dank Dir! :)
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
@DGL-Luke: Noch eine (blöde?) Frage ? Wie komme ich über TStream eigentlich an meine WAV-Daten heran um sie zu manipulieren?
Quasi:
For b=0 to endeVomBuffer
"WaveData.Buffer := wasauchimmer"
? :)
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
@EDatabaseError: Verzeihung! :oops:
@DGL-Luke: Vielen Dank!! :) Mal sehen, inwieweit ich das so hinbekomme ;) Wofür steht eigtl. das ewige "T"? :stupid:
"T"ype? *grins*
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
Soll ich demjenigen der das zum laufen bekommt 100 Euro zahlen? Lol! Gibts dann eine Antwort?
Man, echt - ich glaub das alles nicht ;) Kann doch nicht sein das ich hier ein unlösbares Problem habe.....! NADA!
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
3. Aug 2006
:lol: :roll: Oh man, und jetzt weiss keiner mehr weiter ... *grins*.
Das kann doch alles nicht sein :x Der Code müsste eigtl. doch funzen - tut es aber nicht ... seufz
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
2. Aug 2006
Naja, das merkwürdige ist - lasse ich den letzten "Test" unten weg, ist das Ergebnis 1A! Genau DESWEGEN versteh ich ja die Welt nicht mehr :wall: Denn das ist quasi derselbe Schritt, selber Buffer, selbe Datentypen usw .... :)
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
2. Aug 2006
Danke, BlackJack! :) Leider hat das nur nichts geändert :(
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
2. Aug 2006
Seufz... wer mir mit dem Code hilft, bekommt 10 Euro :roll: :wink:
-
Forum: Object-Pascal / Delphi-Language
Delphi
by sonicfire,
2. Aug 2006
Nicht persönlich nehmen, aber man hätte diesen Beitrag auch lassen können ;) Denn das hilft mir nicht.