PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   DVD 討論區 (https://www.pcdvd.com.tw/forumdisplay.php?f=5)
-   -   [求助]關於DirectShow技術的名詞解釋∼ (https://www.pcdvd.com.tw/showthread.php?t=693264)

11jl 2007-02-04 12:21 AM

[求助]關於DirectShow技術的名詞解釋∼
 
為了搞懂轉檔的相關常識
翻了幾篇MPEG4的中文PAPER
發現有一些名詞不太理解
特來向前輩們請教:

1.source filter與file parser有什麼不同?

2.decoder因針對不同的媒體壓縮方式而有獨特性,那source filter有這樣強烈的獨特性嗎?

3.filter、spliter、demuxer有何不同?

4.若沒有DirecShow技術的軟體,處理媒體檔案時,是否就沒有filter機制? :confused:

感激在先∼

feedback 2007-02-04 08:51 AM

引用:
作者11jl
為了搞懂轉檔的相關常識
翻了幾篇MPEG4的中文PAPER
發現有一些名詞不太理解
特來向前輩們請教:

1.source filter與file parser有什麼不同?

2.decoder因針對不同的媒體壓縮方式而有獨特性,那source filter有這樣強烈的獨特性嗎?

3.filter、spliter、demuxer有何不同?

4.若沒有DirecShow技術的軟體,處理媒體檔案時,是否就沒有filter機制? :confused:

感激在先∼

挑簡單的回 :p
1.我覺得是一樣的東西,或許file parser包含有硬體上的說法

2.decoder針對影像編碼作解碼,是有獨特性,而source filter處理影片封裝格式,較不具獨特性
應該說封裝種類本就比編碼種類少很多,比如說我一個source filter可以處理內含不同編碼(XviD\DivX...、AC3\MP3\AAC...)的AVI檔案

3.encoder、decoder、splitter都是filter
splitter就是最先對影片(封裝)做出處理的filter,是他把audio跟video stream分別送給decoder做解碼動作
demuxer就是de-multiplexer,就計算機的概念就是一個輸入經過demux分成多個輸出
在影像處理上就是把影像檔案(封裝)拆解成audio、video、sub...等等分別輸出成raw stream檔案

11jl 2007-02-05 11:54 AM

TO feedback

所以source filter基本上,一台機器裡不需要很多個囉?

而de-multiplexer像是後期的splitter?

keyyer 2007-02-05 01:47 PM

引用:
作者11jl
1.source filter與file parser有什麼不同?

filter就和斯斯一樣有分三種,source filter(只出不進,出去的方式有二種push,pull),transform filter(有進有出,進來的方式也有二種mode),Renderer filter(只進不出,在實作上最複雜),file parser和source filter沒有關係,
file parser是filter的實作,你要把file parser做成source filter或是transform filter都行

引用:
作者11jl
2.decoder因針對不同的媒體壓縮方式而有獨特性,那source filter有這樣強烈的獨特性嗎?

不知你的獨特性是指什麼,假設是指它可以支援的mediay type或是可以解的codec type,那source filter也是有這種獨特性,我們把它寫成只可以支援讀取某種格式的檔案或是支援某種的網路protocol等,而大部份的source filter也都是這樣來實作的

引用:
作者11jl
3.filter、spliter、demuxer有何不同?

filter是統稱,spliter和demuxer是filter的實作,spliter和demuxer只是實作的名稱要叫什麼都沒有關係,例如MS有提供mpeg2 spliter和mpeg2 demuxer,mpeg2 spliter是專門用來解mpeg2 program stream(ps),而mpeg demuxer則是用來解mpeg2 transport stream(ts),但是其實ps和ts都是定在iso-13818-1內,有一定的相關性,有些廠商是作在同一個filter內,但是複雜度可以能會比較大,而MS則是分成二個filter來作,則可以較容易實作,但是運用上就要多花一點時間,而這二個fitler都是放在一個實體內(mpegsplt.ax)

引用:
作者11jl
4.若沒有DirecShow技術的軟體,處理媒體檔案時,是否就沒有filter機制? :confused:

也不一定,mplayer就作了一個模擬(?不知怎麼解釋)的架構來使用windows上的filters
不過在windows上沒有directshow技術要處理多媒體的檔案是比較麻煩啦!
directshow的優點就是可以實現軟體元件的概念,你可以用你喜歡的filter或是某家廠商效能較好的filter來完成多媒體檔案的播放,例如你可以使用microsoft的file source filter接上microsoft或其他家的avi demuxer再接上coreavc或ffdshow的h.264 fitler並配上cyberlink或intervideo的ac3 filter來播放一個含有h.264和ac3的avi檔

11jl 2007-02-06 11:57 AM

引用:
作者keyyer
不知你的獨特性是指什麼,假設是指它可以支援的mediay type或是可以解的codec type,那source filter也是有這種獨特性,我們把它寫成只可以支援讀取某種格式的檔案或是支援某種的網路protocol等,而大部份的source filter也都是這樣來實作的

我所謂的獨特性是說,以某種方式編碼的媒體,就必須用相對應的方式解碼!
那麼source filter是否也是只能針對特定的媒體才能解讀mediay type?
感覺上解讀mediay type的功能似乎是一樣的...

11jl 2007-02-09 11:22 AM

經過這幾天的研究
source filter似乎只針對檔案格式不同,而做不同的修正
但用什麼編碼,並不關source filter的事
也就是
只要是AVI檔案,則只需用一種source filter,不論編碼是用XVID或DIVX...
別種檔案,再用另一種source filter

感覺跟splitter的方式很像

應該沒錯吧?

ycli6921 2007-02-09 12:14 PM

可以去找一個軟體叫graphedit
它會告訴你播放媒體的時候會調用那些元件
以及解碼流程

11jl 2007-02-09 03:54 PM

引用:
作者ycli6921
可以去找一個軟體叫graphedit
它會告訴你播放媒體的時候會調用那些元件
以及解碼流程

謝謝
graphedit我知道
我也有在用
流程我大概也曉得
需要啥類型的元件我也有概念

但是
這依然無法解決我的疑惑...

11jl 2007-02-11 12:04 AM

試著了解後,
發現在WIN做DirectShow
其實也不輕鬆啊∼
我覺得還是不使用比較簡單一點...

不知大大們由沒有同感?


所有的時間均為GMT +8。 現在的時間是12:23 PM.

vBulletin Version 3.0.1
powered_by_vbulletin 2025。