全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:868
推到 Plurk!
推到 Facebook!

DirectShow如何做出倒退播放的功能

答題得分者是:cmf
李國維
高階會員


發表:42
回覆:287
積分:235
註冊:2003-02-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-12-24 11:41:42 IP:219.84.xxx.xxx 未訂閱
請問各位大大: 小弟已經利用DirectShow做出了影像播放器. 基本功能都沒問題ㄌ.如果我想做出倒退播放的話. 該如何做. 小弟本來是利用IMediaSeeking中的Position來遞減. 但是發現利用時間判斷會不準. 因為有的影片一秒5張有的是1秒30張. 所以請教各位大大有沒有好的解決方法.
cmf
尊榮會員


發表:84
回覆:918
積分:1032
註冊:2002-06-26

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-12-24 13:45:44 IP:61.218.xxx.xxx 未訂閱
     hr = pSeek->IsFormatSupported(&TIME_FORMAT_FRAME);
if (hr == S_OK)
{
    hr = pSeek->SetTimeFormat(&TIME_FORMAT_FRAME);
    if (SUCCEEDED(hr))
    {
        // Seek to frame number 20.
        LONGLONG rtNow = 20;
        hr = pSeek->SetPositions(
            &rtNow, AM_SEEKING_AbsolutePositioning, 
            0, AM_SEEKING_NoPositioning);
    }
}        
http://netbook.mm520.net
------
︿︿
李國維
高階會員


發表:42
回覆:287
積分:235
註冊:2003-02-07

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-12-29 14:58:11 IP:219.84.xxx.xxx 未訂閱
cmf大大: 小弟不才.實在是無法了解到大大所提供的code要怎麼使用. 因為小弟感覺上.這各code的功能只是要移到影片到某一各frame上 不是要怎麼變成倒退. 煩請大大再加以告知.
引言:
     hr = pSeek->IsFormatSupported(&TIME_FORMAT_FRAME);
if (hr == S_OK)
{
    hr = pSeek->SetTimeFormat(&TIME_FORMAT_FRAME);
    if (SUCCEEDED(hr))
    {
        // Seek to frame number 20.
        LONGLONG rtNow = 20;
        hr = pSeek->SetPositions(
            &rtNow, AM_SEEKING_AbsolutePositioning, 
            0, AM_SEEKING_NoPositioning);
    }
}        
http://netbook.mm520.net
發表人 - 李國維 於 2004/12/29 15:03:10
系統時間:2024-05-20 22:22:11
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!