Suche MP3 to WAV decoder

Gast #1962319
Lesenswert?
• ▲
▼
Moin,

ich suche eine Software, die es mir ermöglicht MP§ oder WMA Datein in 
eine WAV Datei zu konvertieren. Dabei soll bei der WAV-Datei die 
Samplerate sowie Mono oder Stereo einstellbar sein. Ich möchte mir 
Datein erstellen, die ich später aufm AVR abspielen kann.

Leider ist das www zu voll damit, ich habe jetzt schon n paar Programme 
runtergeladen, die aber alle nicht das können.

Kann mir jemand ne einfaches Tool empfehlen?

Danke


Gruß Knut
Gast #1964198
Lesenswert?
• ▲
▼
wie kann ich mit lame eine mp3 datei in wav konvertieren?

folgendes funktioniert leider nicht;(

int main()
{
  int read, write;

    FILE *pcm = fopen("music_noisy.mp3", "rb");
    FILE *mp3 = fopen("music_noisy2.mp3", "wb");

    const int PCM_SIZE = 8192;
    const int MP3_SIZE = 8192;

  short int pcm_buffer[PCM_SIZE*2];
    short int pcm_buffer1[PCM_SIZE];
  short int pcm_buffer2[PCM_SIZE];
    unsigned char mp3_buffer[MP3_SIZE];

  mp3data_struct mp3data = {0};

  memset(pcm_buffer, 0, sizeof(pcm_buffer));
  memset(pcm_buffer1, 0, sizeof(pcm_buffer1));
  memset(pcm_buffer2, 0, sizeof(pcm_buffer2));
  memset(mp3_buffer, 0, sizeof(mp3_buffer));

    lame_t lame = lame_init();
  hip_t l = hip_decode_init();
    lame_set_in_samplerate(lame, 44100);
    lame_set_VBR(lame, vbr_default);
  //lame_set_mode(lame, MONO);
    lame_init_params(lame);

    do {
    read = fread(mp3_buffer, sizeof(unsigned char), MP3_SIZE, pcm);
    read = hip_decode_headers(l, mp3_buffer, MP3_SIZE, pcm_buffer1, 
pcm_buffer2, &mp3data);

    // nun haben wir die mp3 daten als wav in pcm_buffer1 und 
pcm_buffer2

    memcpy(pcm_buffer, pcm_buffer1, sizeof(pcm_buffer1));
    memcpy(&pcm_buffer[PCM_SIZE], pcm_buffer2, sizeof(pcm_buffer2));
        write = lame_encode_buffer_interleaved(lame, pcm_buffer, read, 
mp3_buffer, MP3_SIZE);
        fwrite(mp3_buffer, write, 1, mp3);
  } while (read != 0);

  hip_decode_exit(l);
    lame_close(lame);
    fclose(mp3);
    fclose(pcm);

    return 0;
}
#1964249
Lesenswert?
• ▲
▼
Muß dein Programm die Konvertierung unbedingt selber machen? Du könntest 
auch ein kleines Skript basteln, das das über Pipes extern macht, etwa 
in der Art:
1
mpg123 input.mp3 --wav - | deinprogramm | lame - output.mp3
(ggf. noch mit den gewünschten Qualitätseinstellungen)


Dann kanst du die wav-Daten direkt von stdin lesen und das Ergebnis auf 
stdout wieder rausschreiben.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.