MediaCapture间歇性失败(RecordState - 操作无效)

时间:2015-11-09 08:38:57

标签: windows-runtime windows-phone-8.1 winrt-xaml

我使用MediaCapture API在我的Windows Phone 8.1 RT应用中录制音频。录音工作正常,但API间歇性地抛出System.Exception以下消息:
RecordState System.Exception: The op is invalid.在声明中 Windows.Media.Capture.MediaCapture.StartRecordToStorageFileAsync(MediaEncodingProfile encodingProfile, IStorageFile file)

我无法找到有关此错误原因的更多信息。有人能指出某个方向吗?

2 个答案:

答案 0 :(得分:1)

找到此异常的原因。我反复调用MediaCapture.StartRecordToStorageFileAsync(),即使MediaCapture对象已经录制了音频。我必须确保在调用MediaCapture.StopRecordAsync()之前调用StartRecordToStorageFileAsync(),以便不违反录制对象的状态。

同样,对StopRecordAsync()的多次调用也会引发类似的异常。

答案 1 :(得分:1)

我遇到了同样的问题,正如你所说的那样多次调用StartRecordToStorageFileAsync()而不停止先前使用StopRecordAsync()的捕获产生了这种情况。每次我使用的计时器被激活时,我必须确保我没有触发StartRecordToStorageFileAsync(),我使用了这个:

            if (_PrimeraVez)
            {
                CameraRecord(); //My own method
                _PrimeraVez = false;
            }   

很高兴你自己找到了解决方案。