UWP捕获固定持续时间的视频

时间:2016-10-18 10:01:25

标签: c# uwp capture

如何创建一个同步捕获视频一段固定时间并返回视频文件的功能?我有以下代码。问题是有时while循环永远不会中断,因为行 done_taking_video = true 永远不会被执行。它很奇怪。

    public StorageFile TakeVideoToFile(int duration_in_ms)
    {

           StorageFile file = foldertosave.CreateFileAsync(filename).AsTask().Result;
           MediaCapture media = new MediaCapture();
           media.InitializeAsync().AsTask().Wait();
           media.StartRecordToStorageFileAsync(videoFormat, file).AsTask().Wait();

            System.Threading.Timer timer = new System.Threading.Timer(_ => {
                media.StopRecordAsync().AsTask().Wait();
                done_taking_video = true;
            }, null, duration_in_ms, System.Threading.Timeout.Infinite);

            while (!done_taking_video)
            {

            }

            return file;

    } 

0 个答案:

没有答案