MediaEncodingProfile 類別

定義

描述音訊或視訊檔案的編碼設定檔。 編碼設定檔包含音訊和視訊編碼格式的描述,以及媒體容器的描述。

public ref class MediaEncodingProfile sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
class MediaEncodingProfile final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class MediaEncodingProfile final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
public sealed class MediaEncodingProfile
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class MediaEncodingProfile
function MediaEncodingProfile()
Public NotInheritable Class MediaEncodingProfile
繼承
Object Platform::Object IInspectable MediaEncodingProfile
屬性

Windows 需求

裝置系列
Windows 10 (已於 10.0.10240.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)

備註

編碼品質 Auto 是特殊的預設,會根據目前的相機設定填入適當的設定。 會忽略手動修改的設定。 例如,如果您使用一個靜態建立方法建立預設設定檔,例如 CreateM4a,並指定 Auto 做為編碼品質,則您對屬性所做的任何變更都會根據目前的相機設定,以值覆寫。

注意

可以建立特定裝置不支援的 MediaEncodingProfile 。 例如,您可以成功呼叫 CreateMp3,但如果裝置上沒有 mp3 編碼器,嘗試使用此方法傳回的屬性來編碼音訊將會失敗。 如需每個裝置系列預設存在的編解碼器清單,請參閱支援的編解碼器。

注意

只有視訊編碼配置檔案類型支援 [自動] 的編碼品質設定。音訊設定檔不支援此設定,而且在使用設定時會產生錯誤。 例如:如果您使用 MediaEncodingProfile.CreateMp3 搭配 AudioEncodingQuality.Auto 建立設定檔,然後呼叫 PrepareStreamTranscodeAsync,您會收到 NullReferenceException 錯誤。 在此情況下,您必須選擇 Auto 以外的編碼品質設定,才能讓您建立功能設定檔。

如需使用 MediaEncodingProfile 來設定所擷取影像之編碼屬性的作法指引,請參閱 使用 MediaCapture 進行基本相片、視訊和音訊擷取。 如需在轉碼媒體檔案時使用 MediaEncodingProfile 的資訊,請參閱 轉碼媒體檔案

版本歷程記錄

Windows 版本 SDK 版本 新增值
1703 15063 CreateAlac
1703 15063 CreateFlac
1703 15063 CreateHevc
1709 16299 GetAudioTracks
1709 16299 GetVideoTracks
1709 16299 SetAudioTracks
1709 16299 SetVideoTracks
1803 17134 GetTimedMetadataTracks
1803 17134 SetTimedMetadataTracks

建構函式

MediaEncodingProfile()

建立 MediaEncodingProfile 類別的新實例。

屬性

Audio

取得或設定音訊資料流程的編碼屬性。

Container

取得或設定媒體容器的屬性。

Video

取得或設定視訊資料流程的編碼屬性。

方法

CreateAlac(AudioEncodingQuality)

建立 Apple Lossless Audio Codec (ALAC) 音訊的 MediaEncodingProfile 實例。

CreateAv1(VideoEncodingQuality)

建立 AOMedia Video 1 (AV1) 視訊的編碼設定檔。

CreateAvi(VideoEncodingQuality)

建立 MediaEncodingProfile for AVI 的實例。

CreateFlac(AudioEncodingQuality)

建立 MediaEncodingProfile 的實例,以取得無遺失音訊編解碼器 (FLAC) 音訊。

CreateFromFileAsync(IStorageFile)

從現有的媒體檔案建立編碼設定檔。

CreateFromStreamAsync(IRandomAccessStream)

從包含媒體資料的資料流程建立編碼設定檔。

CreateHevc(VideoEncodingQuality)

建立 MediaEncodingProfile 的實例,以進行高效能視訊編碼 (HEVC) 視訊,也稱為 H.265 影片。

CreateM4a(AudioEncodingQuality)

建立 AAC 音訊的編碼設定檔。

CreateMp3(AudioEncodingQuality)

建立 MP3 (MPEG-1 層 3) 音訊的編碼設定檔。

CreateMp4(VideoEncodingQuality)

建立 H.264 視訊的編碼設定檔。

CreateVp9(VideoEncodingQuality)

建立 VP9 視訊的編碼設定檔。

CreateWav(AudioEncodingQuality)

建立 WAV 的 MediaEncodingProfile 實例

CreateWma(AudioEncodingQuality)

建立 Windows Media Audio (WMA) 的編碼設定檔。

CreateWmv(VideoEncodingQuality)

建立 Windows Media Video (WMV) 的編碼設定檔。

GetAudioTracks()

擷取 AudioStreamDescriptor 物件清單,描述 MediaEncodingProfile中包含的音訊資料流程。

GetTimedMetadataTracks()

擷取 TimedMetadataStreamDescriptor 物件清單,描述 MediaEncodingProfile中包含的計時中繼資料資料流程。

GetVideoTracks()

擷取 VideoStreamDescriptor 物件清單,描述 MediaEncodingProfile中包含的視訊串流。

SetAudioTracks(IIterable<AudioStreamDescriptor>)

設定 AudioStreamDescriptor 物件的清單,這些物件描述 MediaEncodingProfile中包含的音訊資料流程。

SetTimedMetadataTracks(IIterable<TimedMetadataStreamDescriptor>)

設定 TimedMetadataStreamDescriptor 物件清單,描述 MediaEncodingProfile中包含的計時中繼資料資料流程。

SetVideoTracks(IIterable<VideoStreamDescriptor>)

設定 VideoStreamDescriptor 物件清單,描述 MediaEncodingProfile中包含的視訊串流。

適用於

另請參閱