在UWP中玩OGG的可能性

时间:2017-05-11 08:57:49

标签: uwp naudio ogg

我正在开发通用Windows平台上的应用程序来播放音频文件。我找不到使用MediaElement或AudioGraph播放OGG文件的方法。因此,我准备将ogg转换为某种支持的格式。你能给我一个暗示什么对UWP有用吗?我试过NAudio从OGG转换为WAV,但NVorbis部分尚未翻译。

非常感谢。

1 个答案:

答案 0 :(得分:1)

默认情况下,MediaElement或AudioGraph不支持OGG文件。要播放OGG文件,您必须实现相应的解码器。这不是一件容易的事。

实现您想要的一种简单方法是使用一些可在UWP中使用的现有解码器,例如VLC.MediaElement for UWP。它非常易于使用。只需将NuGet package添加到您的项目中,并将其用作经典的MediaElement。

xmlns:vlc="using:VLC"

<vlc:MediaElement AreTransportControlsEnabled="True" HardwareAcceleration="True"
                  Source="http://download.blender.org/peach/bigbuckbunny_movies/big_buck_bunny_480p_surround-fix.avi">
    <vlc:MediaElement.TransportControls>
        <vlc:MediaTransportControls ControlPanelOpacity="0.8" />
    </vlc:MediaElement.TransportControls>
</vlc:MediaElement>

这里的区别在于,VLC.MediaElement只能接受string Source属性的FILE_TOKEN。如果您想播放本地文件,则需要将文件添加到FutureAccessList以获取winrt://{FILE_TOKEN},然后使用var fileOpenPicker = new FileOpenPicker(); fileOpenPicker.FileTypeFilter.Add("*"); var file = await fileOpenPicker.PickSingleFileAsync(); if (file != null) {     var FILE_TOKEN = StorageApplicationPermissions.FutureAccessList.Add(file);     mediaElement.Source = null;     mediaElement.Source = $"winrt://{FILE_TOKEN}"; } 协议设置来源。

mysqli_num_rows