C# 未找到合适的转换来编码或解码内容错误

C# 未找到合适的转换来编码或解码内容错误,c#,win-universal-app,audio-recording,windows-10-universal,windows-10-mobile,C#,Win Universal App,Audio Recording,Windows 10 Universal,Windows 10 Mobile,我正在使用windows 10 universal app中的音频录制,我在运行该代码时发现该代码显示“未找到合适的转换来编码或解码内容”错误,在电话中任何人请帮助我解决此问题 当我运行代码时,它显示“没有找到合适的转换来编码或解码内容”错误 如果您参考,您将看到以下段落 注意虽然技术上可以调用CreateMp3,但您不能使用此配置文件将音频转码或编码为Windows Phone Store应用程序的MP3格式。这是因为Windows Phone未附带MP3编码器。包含此API是为了完整性,允许

我正在使用windows 10 universal app中的音频录制,我在运行该代码时发现该代码显示“未找到合适的转换来编码或解码内容”错误,在电话中任何人请帮助我解决此问题

当我运行代码时,它显示“没有找到合适的转换来编码或解码内容”错误

如果您参考,您将看到以下段落

注意虽然技术上可以调用CreateMp3,但您不能使用此配置文件将音频转码或编码为Windows Phone Store应用程序的MP3格式。这是因为Windows Phone未附带MP3编码器。包含此API是为了完整性,允许您将其与应用程序中包含的第三方MP3编码器一起使用

因此,如果您希望此应用程序与windows phone配合使用,则不能使用
MediaEncodingProfile.CreateMp3
。您可以改为使用(请修改演示中的代码,如下所示):

MainPage.xaml.cs:

public sealed partial class MainPage : Page
{
    MediaCapture capture;
    InMemoryRandomAccessStream buffer;
    bool record;
    string filename;
    string audioFile = "audio.mp4";//originally was audioFIle=".mp3"
    ...
    private async void recordBtn_Click(object sender, RoutedEventArgs e)
    {
        if (record)
        {
            //already recored process
        }
        else
        {
            await RecordProcess();
            //await capture.StartRecordToStreamAsync(MediaEncodingProfile.CreateMp3(AudioEncodingQuality.Auto), buffer);//comment this line out
            await capture.StartRecordToStreamAsync(MediaEncodingProfile.CreateM4a(AudioEncodingQuality.Auto), buffer);//added this line
            if (record)
            {
                throw new InvalidOperationException();
            }
            record = true;
        }

    }
以下是完整的修改示例: