moin leutz,
folgendes Problem, was mir schon seit ein paar tagen den kopf zerbricht:
ich habe ein programm, welches wav dateien verarbeitet.
mit einem anderen Programm erzeuge ich wav dateien.
so, nun will ich mit dem programm, welches die dateien verarbeitet, die dateien aus programm nr2 verarbeiten. da gibt es leider nur ein problem: das programm erfordert eine datei wie datei nummer 1! (siehe anhang nr. 1)
diese 2 dateien unterscheiden sich nicht wesentlich, nur halt ist die erste datei (anscheinend) mono und die von mir erzeugete stereo! dadurch ist die bitrate anders.
die erste datei hat eine bitrate von 128 kbit/s. die von mir erzeugte aber 178 kbit/s.
wie kann ich die 2. datei so umwandeln, das sie ebenfalls 128 kbit/s hat?
ich habs bereits per mcisendstring versucht, die datei beim erzeugen abzuspielen und gleich wieder aufzunehmen, doch leider klappte das nicht! sie hatte dann zwar 128 kbit/s aber war nicht mehr zu gebrauchen.
in dem rar file sind beide wav dateien angehängt. output.wav ist die von mir erzeugte und nine.wav die bereits vorhanden funktionierende datei.
die output.wav wird per directss erzeugt. das aufnehmen durch mcisendstring hab ich folgendermaßen probiert:
Delphi-Quellcode:
procedure TForm1.DirectSS1AudioStart(Sender: TObject; hi, lo: Integer);
begin
mciSendString('
OPEN NEW TYPE WAVEAUDIO ALIAS mySound',
nil,0,
Handle);
mciSendString('
SET mySound ' +
'
TIME FORMAT MS ' +
'
BITSPERSAMPLE 16 ' +
'
CHANNELS 1 ' +
'
SAMPLESPERSEC 8000 ' +
'
BYTESPERSEC 16000 ' +
'
ALIGNMENT 4',
nil,0,
handle);
mciSendString('
RECORD mySound',
nil,0,
Handle);
end;
Matthias