IAMTimecodeReader::GetTimecode 方法 (strmif.h)
[與此頁面相關的功能 DirectShow 是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對 Windows 10 和 Windows 11 進行優化。 Microsoft 強烈建議新程式代碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式代碼盡可能重寫為使用新的 API。
方法 GetTimecode
會擷取數據流中可用的最近時間代碼、使用者位和旗標值。
語法
HRESULT GetTimecode(
[out] PTIMECODE_SAMPLE pTimecodeSample
);
參數
[out] pTimecodeSample
TIMECODE_SAMPLE 結構的指標。
傳回值
傳回取決於介面實作的 HRESULT 值。
備註
使用這個方法來監視 timecode,以及剖析重複專案和不連續。
timecode 包含未定義的位,稱為 userbits。 應用程式可以使用這些位來儲存同步處理資訊或其他自訂資訊。
DV 和 MPEG Camcorder 實作
MSDV 驅動程式支援讀取 SMPTE timecode 或絕對追蹤編號, (ATN) 。 MSTape 驅動程式支援讀取 RTC) (相對時間計數器。 若要讀取這些裝置上的時間資訊,請執行下列動作:將 TIMECODE_SAMPLE 結構的 dwFlags 成員設定為下列其中一個值。
常數 | 描述 |
---|---|
ED_DEVCAP_TIMECODE_READ | Timecode (DV) |
ED_DEVCAP_ATN_READ | DV) (絕對曲目編號 |
ED_DEVCAP_RTC_READ | 相對時間計數器 (MPEG 磁帶) |
TIMECODE_SAMPLE 結構的 timecode 成員是 TIMECODE 結構。 將結構的 dwFrames 成員初始化為零。
所有其他結構成員都會被忽略。
當方法傳回時, dwFrames 成員會以下列格式包含時間資訊。
時間資訊 | 格式 |
---|---|
Timecode | 小時、分鐘、秒和框架,以二進位編碼十進位 (BCD) 值: 0xhhmmssff。 |
Atn | 追蹤編號。 |
RTC | 小時、分鐘、秒和框架,以 BCD 值表示: 0xhhmmssff。 框架位元組的最顯著位是符號位。 如果畫面計數無法使用,剩餘的畫面位會設定為 0x7F。 |
此外, dwUser 成員會從裝置接收 空白旗標 位,其中包含下列其中一個值。
值 | Description |
---|---|
0x00 | 不是不連續的。 |
0x01 | 間斷。 |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | strmif.h (包含 Dshow.h) |
程式庫 | Strmiids.lib |