C# win10 IoT文件输出NodeAsync can';不要使用mediaEncodingProfile

C# win10 IoT文件输出NodeAsync can';不要使用mediaEncodingProfile,c#,audio-recording,windows-10-iot-core,C#,Audio Recording,Windows 10 Iot Core,我想用录音机从麦克风到磁盘进行录音。当我在Raspberry PI上运行代码时,该代码在我的PC(x86)上运行良好。此调用失败 CreateAudioFileOutputNodeResult result = await audioGraph.CreateFileOutputNodeAsync(file,mediaEncodingProfile); 始终重新调整“未知故障” 如果我使用相同的调用,但未指定编码配置文件(如下所示),则该调用可以工作,但无法播放它创建的文件(不知道这是什么格式。

我想用录音机从麦克风到磁盘进行录音。当我在Raspberry PI上运行代码时,该代码在我的PC(x86)上运行良好。此调用失败

CreateAudioFileOutputNodeResult result = await audioGraph.CreateFileOutputNodeAsync(file,mediaEncodingProfile);
始终重新调整“未知故障”

如果我使用相同的调用,但未指定编码配置文件(如下所示),则该调用可以工作,但无法播放它创建的文件(不知道这是什么格式。该文件似乎以RIFF开头,我认为它是一个.wav文件),但似乎无法播放创建的文件:(

所以我真的很困惑,如果没有提供媒体编码器,默认的文件格式是什么,为什么我不能使用mp3、wav等。为了保存文件(IoT没有编码器),它会播放文件


您知道如何播放以默认文件格式保存的文件吗?

我使用的是Windows 10,无法与任何其他平台通话。我在W10上遇到了相同的失败编码配置文件问题。以下是我观察到的情况:

编码配置文件:

  • null-似乎默认为CreateWav()-除VLC外,其他地方都会失败
  • CreateAvi-在任何地方都不起作用
  • CreateM4A-在任何地方都不起作用
  • CreateMp3-最佳-效果良好,没有结尾剪辑
  • CreateWma-工作正常,但剪辑持续几秒钟
  • CreateWmv-工作,但剪辑持续几秒钟
  • CreateWav-与上面的null相同
  • 到目前为止,我的结论是W10 AudioGraph有很多问题(剪辑最后几秒钟,标题无效)。对于CreateWav,我怀疑这些问题是由于伪造的关闭文件逻辑造成的。我认为我的代码没有问题,因为有三个编码配置文件(大部分)是有效的

    无法使默认(wav)工作是一个非常糟糕的问题。有人吗

    编辑-19-Dec-2015-我发现了我的代码和OP的问题。我需要使用终结API调用来关闭输出(wav)文件。显然,该调用对某些文件格式产生了影响,而对其他文件格式则没有影响

    停止事件应包含以下代码

    graph.Stop();
    Windows.Media.Transcoding.TranscodeFailureReason finalizeResult = await fileOutputNode.FinalizeAsync();
      if (finalizeResult != TranscodeFailureReason.None)
      {
        // error - error message in finalizeResult.ToString()
        return;
      }
    

    我正在使用Windows 10,无法与任何其他平台通话。我在W10上遇到了相同的失败编码配置文件问题。以下是我观察到的情况:

    编码配置文件:

  • null-似乎默认为CreateWav()-除VLC外,其他地方都会失败
  • CreateAvi-在任何地方都不起作用
  • CreateM4A-在任何地方都不起作用
  • CreateMp3-最佳-效果良好,没有结尾剪辑
  • CreateWma-工作正常,但剪辑持续几秒钟
  • CreateWmv-工作,但剪辑持续几秒钟
  • CreateWav-与上面的null相同
  • 到目前为止,我的结论是W10 AudioGraph有很多问题(剪辑最后几秒钟,标题无效)。对于CreateWav,我怀疑这些问题是由于伪造的关闭文件逻辑造成的。我认为我的代码没有问题,因为有三个编码配置文件(大部分)是有效的

    无法使默认(wav)工作是一个非常糟糕的问题。有人吗

    编辑-19-Dec-2015-我发现了我的代码和OP的问题。我需要使用终结API调用来关闭输出(wav)文件。显然,该调用对某些文件格式产生了影响,而对其他文件格式则没有影响

    停止事件应包含以下代码

    graph.Stop();
    Windows.Media.Transcoding.TranscodeFailureReason finalizeResult = await fileOutputNode.FinalizeAsync();
      if (finalizeResult != TranscodeFailureReason.None)
      {
        // error - error message in finalizeResult.ToString()
        return;
      }