Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

Trying to convert a 12 year old wav file to mp3,

8K, 8bit, Mono-channel, Mu-Law format, WAV

and I am getting this error in LameMP3FileWriter line:

LameMP3FileWriter: Unsupported encoding format MuLaw Parameter name: format

static void Main(string[] args)
{
    string wavFilePath = @"C:	empMessage.wav";
    string mp3FilePath = @"C:	empMessage.mp3";
    if (!File.Exists(mp3FilePath))
    {
        byte[] bytearrwav = File.ReadAllBytes(wavFilePath);
        byte[] bytearrmp3 = ConvertWavToMp3(bytearrwav);
        File.WriteAllBytes(mp3FilePath, bytearrmp3);
    }
}

public static byte[] ConvertWavToMp3(byte[] wavFile)
{
    try
    {
        using (var retMs = new MemoryStream())
        using (var ms = new MemoryStream(wavFile))
        using (var rdr = new WaveFileReader(ms))
        using (var wtr = new LameMP3FileWriter(retMs, rdr.WaveFormat, 128))
        {
            rdr.CopyTo(wtr);
            return retMs.ToArray();
        }
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
        return null;
    }
}

Could anyone show me how to convert this type of wav to mp3?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
273 views
Welcome To Ask or Share your Answers For Others

1 Answer

You need to get your file converted to a more standard format before converting it to MP3. Use WaveFormatConversionStream.CreatePcmStream to go from mu law to linear PCM 16 bit. Then the next challenge will be that LAME probably won't like 8kHz audio, so upsample to at least 16kHz, possibly higher with either another WaveFormatConversionStream or MediaFoundationResampler.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share

548k questions

547k answers

4 comments

86.3k users

...