2010-09-21 4 views
5

Ich versuche, etwas Audio aufzunehmen und sie in andere Tonformate konvertieren. Ich benutze die AVAudioRecorder-Klasse zum Aufzeichnen und dies sind die Aufzeichnungseinstellungen, die ich verwendet habe.Converted Recorded Sound in iPhone von einem Format in ein anderes sagen wav zu mp3

Die Aufnahme funktioniert wunderbar. Jetzt möchte ich diese Sounddatei in das MP3-Format konvertieren. Kann ich das mit AudioToolBox Framework tun? Ich habe versucht, diese

AudioStreamBasicDescription sourceFormat,destinationFormat; 
//Setting up source Format setting..here wav 
sourceFormat.mSampleRate = 8000.0; 
sourceFormat.mFormatID = kAudioFormatLinearPCM; 
sourceFormat.mFormatFlags = kAudioFormatFlagIsSignedInteger ; 
sourceFormat.mBytesPerPacket = 4; 
sourceFormat.mFramesPerPacket = 1; 
sourceFormat.mBytesPerFrame = 4; 
sourceFormat.mChannelsPerFrame = 2; 
sourceFormat.mBitsPerChannel = 16; 

destinationFormat.mSampleRate = 8000.0; 
destinationFormat.mFormatID = kAudioFormatMPEGLayer3; 
destinationFormat.mFormatFlags = 0; 
destinationFormat.mBytesPerPacket = 4; 
destinationFormat.mFramesPerPacket = 1; 
destinationFormat.mBytesPerFrame = 4; 
destinationFormat.mChannelsPerFrame = 2; 
destinationFormat.mBitsPerChannel = 16; 

OSStatus returnCode  =  AudioConverterNew(&sourceFormat,&destinationFormat,&converter); 
if (returnCode) { 
    NSLog(@"error getting converter : %d",returnCode); 
    return; 
} 

Die Funktion AudioConverterNew() gibt mir Fehler kAudioConverterErr_FormatNotSupported ('fmt'). Ich habe es mit verschiedenen mFormatID- und mFormatFlag-Kombinationen versucht. Aber wenn einer der Operanten (Quelle oder Ziel) mp3 ist, bekomme ich diesen Fehler. Nun bitte hilf mir bei diesen Fragen.

  1. Kann verwenden wir AudioToolbox Rahmen und Funktionen Klänge zu konvertieren zwischen komprimierten und nicht komprimierten Format (Derzeit ich zwischen .wav und .mp3 konvertieren möchten). In der AudioConverterNew Dokumentation sagen sie "Codierung und Decodierung zwischen lineare PCM und komprimierte Formate ist unterstützt". Aber sie sind nicht ausdrücklich sagen, welche komprimierten Formate.

  2. Wenn die Antwort auf Frage 1 lautet ‚Nein‘ dann dem Rahmen erreiche ich Gebrauch muß den Ton zwischen oben genannten Formaten konvertieren?

  3. nicht im Zusammenhang mit über 2, kann aber jemand mir einen Link zu allen Websites, auf denen Informationen über verschiedene Soundformate (wav, mp3, aac usw.) und ihre digitalen Darstellungen (cpm, LPCM usw.), so das kann ich verstehen, was was verwendet.

Antwort

1

Einige Antworten

  1. Ja, Sie AudioToolbox Rahmen Sounds verwenden können, außer im Falle von MP3-Format zu konvertieren. Aus urheberrechtlichen Gründen ist mp3 im Rahmen nicht als Zielformat verfügbar.

  2. Wenn Sie MP3-Format konvertieren wollen, müssen Sie wahrscheinlich die LAME-Bibliotheken verwenden: http://lame.cvs.sourceforge.net/viewvc/lame/lame/USAGE

  3. ist hier ein für die .mp3 spec: http://mpgedit.org/mpgedit/mpeg_format/MP3Format.html Die anderen Formate, die Sie ziemlich leicht über Web finden Suche

Hoffnung, die

hilft
Verwandte Themen