選取或取消選取一或多個數據流。
語法
HRESULT SetStreamSelection(
[in] DWORD dwStreamIndex,
[in] BOOL fSelected
);
參數
[in] dwStreamIndex
直播到片場。 其價值可以是以下任一。
| 價值觀 | Meaning |
|---|---|
|
溪流的零基指數。 |
|
第一段影片串流。 |
|
第一段音訊串流。 |
|
所有流派。 |
[in] fSelected
選擇串流時設定 TRUE ,取消選取串流時設定 FALSE 。 如果串流被取消選取,它將不會產生資料。
返回值
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
此方法有兩種常見用途:
- 要更改預設的串流選擇。 有些媒體檔案包含多個相同類型的串流。 例如,一個檔案可能包含多種語言的音訊串流。 你可以用這個方法改變選擇的串流。 如需查詢每個串流資訊,請致電 IMFSourceReader::GetPresentationAttribute 或 IMFSourceReader::GetNativeMediaType。
- 如果你不需要某個串流的資料,建議取消選取該串流。 如果選擇了串流,媒體來源可能會保留一個未讀取資料的佇列,而佇列可能會無限增加,消耗記憶體。
如果某串流被取消選取, IMFSourceReader::ReadSample 方法會回傳該串流的 MF_E_INVALIDREQUEST 。 其他 IMFSourceReader 方法適用於取消選取的流。
串流選擇不會影響原始碼讀取器在記憶體中的載入或卸載解碼器。 特別地,取消選擇串流不會強制原始碼讀取器卸載該串流的解碼器。
若安裝了 Windows Vista 平台更新補充包,則可使用此介面。
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | Windows 7、Windows Vista 及 Windows Vista 平台更新補充 [桌面應用程式 |UWP 應用程式] |
| 支援的最低伺服器 | Windows Server 2008 R2 [傳統型應用程式 |UWP 應用程式] |
| 目標平臺 | 窗戶 |
| Header | mfreadwrite.h |