關於SetTimeFormat的錯誤... |
尚未結案
|
vincentpan
一般會員 發表:3 回覆:11 積分:2 註冊:2002-04-15 發送簡訊給我 |
我用的是BCB6 DSPACK 2.3.1,
DSPACK部分已經安裝正確且可使用,
我程式中有ㄧ行:
FilterGraph1->QueryInterface(IID_IMediaSeeking,&MediaSeeking);
MediaSeeking->SetTimeFormat(&TIME_FORMAT_FRAME); <--錯在這行
MediaSeeking->GetDuration(&Max);
編譯可以過,但是Link的時候會發生如下錯誤:
[Linker Error] Unresolved external '_TIME_FORMAT_FRAME' referenced from UNIT1.OBJ 請問有這方面經驗的前輩,我該引入啥檔案或怎麼處理嘛?
感激不盡~~ PS:BCB跟DSPACK搭配的資料實在少的可憐....
|
JerryKuo
版主 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
你好:
看一下dspack的help,會不會是少include Uuids.h這個檔頭? ------------------------------------------------------------------
HRESULT SetTimeFormat(const GUID *pFormat); Parameters
pFormat [in] Pointer to a GUID that specifies the time format.
See Time Format GUIDs. -------------------------------------------------------------------
Time Format GUIDs
The following globally unique identifiers (GUIDs) define different time formats. Declaration: Uuids.h.
GUID Description TIME_FORMAT_NONE No format. TIME_FORMAT_FRAME Video frames. TIME_FORMAT_SAMPLE Samples in the stream. TIME_FORMAT_FIELD Interlaced video fields. TIME_FORMAT_BYTE Byte offset within the stream. TIME_FORMAT_MEDIA_TIME Reference time (100-nanosecond units).發表人 - jerrykuo 於 2004/10/28 18:33:09 |
vincentpan
一般會員 發表:3 回覆:11 積分:2 註冊:2002-04-15 發送簡訊給我 |
|
JerryKuo
版主 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
引言: 感謝您的答覆,不過我想應該不會沒有INCLUDE到, 因為我是LINK的時候錯的,不是COMPILER的時候... >>< face="Verdana, Arial, Helvetica"> 查了一下TIME_FORMAT_FRAME的原始定義,實在看不太懂, 可否請你寫的小範例程式,給大家試試?// -- Well known time format GUIDs --- TIME_FORMAT_NONE: TGUID = (D1:$00000000;D2:$0000;D3:$0000;D4:($00,$00,$00,$00,$00,$00,$00,$00)); {$EXTERNALSYM TIME_FORMAT_NONE} TIME_FORMAT_FRAME: TGUID = (D1:$7B785570;D2:$8C82;D3:$11CF;D4:($BC,$0C,$00,$AA,$00,$AC,$74,$F6)); {$EXTERNALSYM TIME_FORMAT_FRAME} TIME_FORMAT_BYTE: TGUID = (D1:$7B785571;D2:$8C82;D3:$11CF;D4:($BC,$0C,$00,$AA,$00,$AC,$74,$F6)); {$EXTERNALSYM TIME_FORMAT_BYTE} TIME_FORMAT_SAMPLE: TGUID = (D1:$7B785572;D2:$8C82;D3:$11CF;D4:($BC,$0C,$00,$AA,$00,$AC,$74,$F6)); {$EXTERNALSYM TIME_FORMAT_SAMPLE} TIME_FORMAT_FIELD: TGUID = (D1:$7B785573;D2:$8C82;D3:$11CF;D4:($BC,$0C,$00,$AA,$00,$AC,$74,$F6)); {$EXTERNALSYM TIME_FORMAT_FIELD} TIME_FORMAT_MEDIA_TIME: TGUID = (D1:$7B785574;D2:$8C82;D3:$11CF;D4:($BC,$0C,$00,$AA,$00,$AC,$74,$F6)); {$EXTERNALSYM TIME_FORMAT_MEDIA_TIME} |
vincentpan
一般會員 發表:3 回覆:11 積分:2 註冊:2002-04-15 發送簡訊給我 |
感謝您的答覆...
1.我的程式不算小,所以要的話得另外寫一個SAMPLE,
我用到的功能是可以任意控制播放進度(不只DSTrackBar的控制),
預設的單位是毫秒(吧),我想改成FRAME比較好控制,
所以用到這個FUNCTION,卻帶來如此麻煩...Orz
2.我也查過INCLUDE檔裡的定義,跟你一樣看沒有,
也查過MSDN裡的,感覺上應該只是一個常數而已,卻這麼奇怪???
3.後來我改用MediaPosition介面控制,已經解決我的問題了,
如果你有興趣研究這方面,我可以分享我的經驗..^_^
|
JerryKuo
版主 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
引言: 感謝您的答覆... 1.我的程式不算小,所以要的話得另外寫一個SAMPLE, 我用到的功能是可以任意控制播放進度(不只DSTrackBar的控制), 預設的單位是毫秒(吧),我想改成FRAME比較好控制, 所以用到這個FUNCTION,卻帶來如此麻煩...Orz 2.我也查過INCLUDE檔裡的定義,跟你一樣看沒有, 也查過MSDN裡的,感覺上應該只是一個常數而已,卻這麼奇怪??? 3.後來我改用MediaPosition介面控制,已經解決我的問題了, 如果你有興趣研究這方面,我可以分享我的經驗..^_^感謝,期待你的大作囉^^. 不過這個問題還要解決,dspack實在問題一大堆呢.不快弄清楚,事後才發 現有問題,當要抽身重來時就很辛苦囉。 |
vincentpan
一般會員 發表:3 回覆:11 積分:2 註冊:2002-04-15 發送簡訊給我 |
|
JerryKuo
版主 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
|
vincentpan
一般會員 發表:3 回覆:11 積分:2 註冊:2002-04-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |