Существуют API для захвата аудио / видео, доступные в самом WinRT, под Windows.Media.Capture
пространством имен.Вам не нужно переходить на DirectX.Следующий код C # записывает видео со звуком и сохраняет в папку «Видео» текущего пользователя.
var settings = new MediaCaptureInitializationSettings();
settings.StreamingCaptureMode = StreamingCaptureMode.AudioAndVideo;
var capture = new MediaCapture();
await capture.InitializeAsync(settings);
var profile = MediaEncodingProfile.CreateMp4(VideoEncodingQuality.Auto);
var file = await KnownFolders.VideosLibrary.CreateFileAsync("captured.mp4", CreationCollisionOption.GenerateUniqueName);
await capture.StartRecordToStorageFileAsync(profile, file);
Для захвата только аудио используйте StreamingCaptureMode.Audio
и MediaEncodingProfile.CreateM4a()