Directx Windows 8 Metro应用程序中的音频/视频捕获

Directx Windows 8 Metro应用程序中的音频/视频捕获,directx,windows-runtime,Directx,Windows Runtime,我正在使用网络摄像机拍摄音频/视频,这是针对Windows 8 Metro风格而不是桌面模式。 我计划为此编写一个库,以便任何应用程序都可以使用该库来流式传输视频。 Windows 8为Windows 8的metro模式提供Direct X和Win RT。我有点不知道该用哪一个。 仅Win RT就足以检测摄像机和捕获音频/视频吗??这里是否需要X直接参与 我在互联网上发现了这一点。所以单凭Win RT就足够了 .WinRT本身在Windows.Media.capture命名空间下提供音频/视频捕

我正在使用网络摄像机拍摄音频/视频,这是针对Windows 8 Metro风格而不是桌面模式。 我计划为此编写一个库,以便任何应用程序都可以使用该库来流式传输视频。 Windows 8为Windows 8的metro模式提供Direct X和Win RT。我有点不知道该用哪一个。
仅Win RT就足以检测摄像机和捕获音频/视频吗??这里是否需要X直接参与

我在互联网上发现了这一点。所以单凭Win RT就足够了


.

WinRT本身在
Windows.Media.capture
命名空间下提供音频/视频捕获API。你不需要选择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。音频< /代码>和<代码>媒体编码配置文件。CurATEM4A()/< C++ > P>现在问题是我应该使用哪种语言。使用C++和C语言的优点和缺点。请看这个库将被UI用来显示视频。UI可以使用适合Windows 8 Metro模式的任何技术。请给出您的评论。该示例的“技术”表示“HTML5,Windows运行时”。既然它明确地说它使用WinRT,为什么你说WinRT是不够的?@JoeWhite早些时候我很困惑,因为在以前版本的Windows中,媒体相关的东西大部分都是由DirectX覆盖的。但是在Windows 8中,DirectX处于低级别,所有Win RT Api inturn都调用Direct X Api。如何在控件中显示它?