Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi mp3 zu wav konvertieren (https://www.delphipraxis.net/123044-mp3-zu-wav-konvertieren.html)

Rer 26. Okt 2008 14:56


mp3 zu wav konvertieren
 
Hallo allerseits,
ich möchte gerne mp3-datein ins wav-format konvertieren. Ich habe hier im Forum bereits diverse Threads dazu durchgelsen doch dort wurde immer nur die andere richtung beschrieben (lame_enc.dll).
Ich hab gelesen das ich anscheinend die bass.dll brauche. Aber ich find leider keine vernünftige dokumentation oder beispiel-source dazu:( könnt ihr mir diesbezüglich weiterhelfen?

mfg
rer

PS: Ich benutze schon für die konvertierung von wav anch mp3 die lame_enc.dll. Ist es nicht vielleciht auch damit möglich?

mkinzler 26. Okt 2008 15:04

Re: mp3 zu wav konvertieren
 
Lame ist eine MP3-Encoder. Du benötigst einen MP3-Decoder. Dafür sollte auch der MP3 Encoder von Windows ausreichend sein.

Larsi 26. Okt 2008 15:08

Re: mp3 zu wav konvertieren
 
http://symmetrica.net/newac/

Wishmaster 27. Okt 2008 05:42

Re: mp3 zu wav konvertieren
 
Hi

hast du dir die bass mal angeschaut? Mit der bass kommt ne sehr einfache Demo.
Oder du benutzt Bass_enc.dll, damit kannst du direkt ohne große Mühe ne
wav<>mp3 erstellen
und mit Bass_mix kannst du wider Name schon sagt Files/Channels mixen.


Example
Start encoding a channel to an MP3 file (output.mp3) using LAME with the standard preset settings.
Delphi-Quellcode:
BASS_Encode_Start(channel, "lame --alt-preset standard - output.mp3", 0, NULL, 0);
BASS_ChannelPlay(channel, 0); // start the channel playing & encoding
Start writing a channel to a WAV file (output.wav).
Delphi-Quellcode:
BASS_Encode_Start(channel, "output.wav", BASS_ENCODE_PCM, NULL, 0);
BASS_ChannelPlay(channel, 0); // start the channel playing & encoding

Rer 27. Okt 2008 12:45

Re: mp3 zu wav konvertieren
 
@ Wishmaster,
Muss man für deine erklärung die datei erst abspielen und währenddessen wird encoded oder versteh ich das falsch?

Wishmaster 27. Okt 2008 13:20

Re: mp3 zu wav konvertieren
 
Hi.

Zitat:

@ Wishmaster,
Muss man für deine erklärung die datei erst abspielen...?
Nein! Aber du kannst wen du willst :-)

öffne ne Date (mp3, mp4, wav, ogg...)

Delphi-Quellcode:
 
var Channel : DWORD;
    buf : array [0..10000] of BYTE;
begin
    Channel := BASS_StreamCreateFile(false, Pchar(File.mp3), 0, 0, BASS_STREAM_DECODE);
    BASS_Encode_Start(channel, "output.wav", BASS_ENCODE_PCM, NULL, 0);
   while (BASS_ChannelIsActive(Channel ) > 0) do
    begin
      BASS_ChannelGetData(Channel, @buf, 10000);
    end;
end;

ich würde aber an deiner stelle Bass_mix.dll benutzen, damit kannst du die Lautstärke, channels (mono, stereo, 5,1, 7,1), bitrate 8,16,24,32 Bit beeinflussen




.

Rer 29. Okt 2008 20:42

Re: mp3 zu wav konvertieren
 
kann man mit deinen bispielen auch ein fortschrittsleiste benutzen die den aktuellen status der konvertierung ausgibt?

:)

Wishmaster 30. Okt 2008 08:56

Re: mp3 zu wav konvertieren
 
:wink:
Delphi-Quellcode:
var PercentDone : Integer;

Procedure Convert();
var Channel : DWORD;
    buf : array [0..10000] of BYTE;
begin
    Channel := BASS_StreamCreateFile(false, Pchar(File.mp3), 0, 0, BASS_STREAM_DECODE);
    BASS_Encode_Start(channel, "output.wav", BASS_ENCODE_PCM, NULL, 0);
   while (BASS_ChannelIsActive(Channel ) > 0) do
    begin
      BASS_ChannelGetData(Channel, @buf, 10000);

      Application.ProcessMessages;
      PercentDone := Trunc(100 * (BASS_ChannelGetPosition(Channel , BASS_POS_BYTE) / BASS_ChannelGetLength(Channel , BASS_POS_BYTE)));
      ProgressBar.Position := PercentDone;

    end;
end;

Rer 30. Okt 2008 15:27

Re: mp3 zu wav konvertieren
 
@wishmaster,
ich bekomme bei
Delphi-Quellcode:
BASS_Encode_Start(channel, 'output.wav', BASS_ENCODE_PCM, NULL, 0);
{ich hab die doppelten anführungszeichen in einfache geändert}
immer den fehler :
Delphi-Quellcode:
E2009 Inkompatible Typen: 'Unterschiede in der Aufrufkonvention'
nun hab ich auch bei output.wav einen ganzen pfad angegeben aber ich glaub nich das das das (lol 3x das) Problem ist
mfg
RER

Wishmaster 31. Okt 2008 09:19

Re: mp3 zu wav konvertieren
 
Hi

benutzt du delphi 2009?

versuche mal folgendes, ändere Pchar zu PwideChar und benutze BASS_UNICODE flag.

Delphi-Quellcode:
BASS_StreamCreateFile(false, PwideChar('fFile.mp3'),* 0, 0,* BASS_STREAM_DECODE or BASS_UNICODE)
Delphi-Quellcode:
BASS_Encode_Start(channel, 'output.wav', BASS_ENCODE_PCM or BASS_UNICODE, NULL, 0);
wen dir das nicht weiter hilf kan ich dir auch ne demo bauen, wen du wilst :coder2:


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:59 Uhr.
Seite 1 von 2  1 2      

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