數(shù)字視頻轉(zhuǎn)換器與視頻串流的讀寫方法
【專利摘要】提出一種數(shù)字視頻轉(zhuǎn)換器與視頻串流的讀寫方法。數(shù)字視頻轉(zhuǎn)換器包括處理裝置與儲(chǔ)存裝置。處理裝置用以運(yùn)行操作系統(tǒng),其中操作系統(tǒng)設(shè)置內(nèi)核與用戶空間。儲(chǔ)存裝置耦接處理裝置,用于儲(chǔ)存數(shù)據(jù)。處理裝置利用內(nèi)核對于儲(chǔ)存裝置進(jìn)行數(shù)據(jù)讀寫,并且內(nèi)核對于儲(chǔ)存裝置進(jìn)行的數(shù)據(jù)讀寫并不涉及用戶空間。
【專利說明】數(shù)字視頻轉(zhuǎn)換器與視頻串流的讀寫方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明是有關(guān)于數(shù)字視頻轉(zhuǎn)換器中的數(shù)據(jù)讀寫技術(shù),且特別是有關(guān)于一種數(shù)字視頻轉(zhuǎn)換器以及視頻串流的讀寫方法。
【背景技術(shù)】
[0002]硬盤與處理器是電腦系統(tǒng)中不可或缺的兩個(gè)主要構(gòu)件。硬盤用以儲(chǔ)存數(shù)據(jù),而處理器則透過運(yùn)行于操作系統(tǒng)中的文件系統(tǒng)(File system)來控制硬盤,并從硬盤中讀取數(shù)據(jù)或?qū)懭霐?shù)據(jù)。目前市面上普遍使用的文件系統(tǒng)例如是文件配置表(FileAllocationTable ;FAT)文件系統(tǒng)、高性能文件系統(tǒng)(High Performance File System ;HPFS)、新技術(shù)文件系統(tǒng)(New Technology File System ;NTFS)以及其他種類的文件系統(tǒng)。目前來說,NTFS已逐漸取代FAT文件系統(tǒng)與HPFS,并且NTFS也是微軟(Microsoft)公司于操作系統(tǒng)WindowsNT以及之后發(fā)售的操作系統(tǒng)中主要采用的文件系統(tǒng)標(biāo)準(zhǔn)。
[0003]有鑒于NTFS中的許多數(shù)據(jù)讀寫技術(shù)是由微軟公司提出且受到相關(guān)智慧財(cái)產(chǎn)法律的保護(hù),并且由于數(shù)據(jù)結(jié)構(gòu)上的差異,因此多數(shù)非微軟的操作系統(tǒng)(例如,Unix操作系統(tǒng)或類Unix操作系統(tǒng))無法有效地支持NTFS。舉例來說,Linux操作系統(tǒng)透過NTFS通常僅能對硬盤進(jìn)行數(shù)據(jù)讀取,而無法將數(shù)據(jù)寫入到硬盤。若要維持Linux操作系統(tǒng)對NTFS基本的支持(例如,可執(zhí)行基本的數(shù)據(jù)讀取與數(shù)據(jù)寫入),Linux操作系統(tǒng)需要額外運(yùn)行使用具有用戶空間的文件系統(tǒng)(Filesystem in Userspace, FUSE),例如是NTFS文件系統(tǒng)驅(qū)動(dòng)程序(例如,NTFS-3G)。
[0004]廣義而言,F(xiàn)USE文件是指完全在用戶模式(User Mode)或用戶空間(User Space)中實(shí)現(xiàn)的文件系統(tǒng),可供使用者察看儲(chǔ)存于文件系統(tǒng)中的文件名稱與文件儲(chǔ)存路徑等資訊,并可對其進(jìn)行修改、復(fù)制或存取等操作。因此,許多非微軟的操作系統(tǒng)便以FUSE為核心作為其使用的文件系統(tǒng)模塊。然而,F(xiàn)USE文件系統(tǒng)在運(yùn)作上存始終在諸多限制與不便,例如,在對儲(chǔ)存于硬盤中的文件作搬移或讀寫時(shí),操作系統(tǒng)會(huì)頻繁地在內(nèi)核(kernel)與用戶空間之間進(jìn)行拷貝、更換文件屬性等動(dòng)作,導(dǎo)致此種操作系統(tǒng)對于硬盤具有較差的數(shù)據(jù)讀寫速度。例如,在FUSE文件系統(tǒng)中的每個(gè)文件都被賦予一個(gè)索引編碼(indexnode,簡稱inode),且此索引編碼位于上述的用戶空間當(dāng)中。在對此文件進(jìn)行搬移或讀寫時(shí),這個(gè)文件所對應(yīng)的索引編碼也需要被對應(yīng)地修改,因而增加了文件搬移所需的時(shí)間,導(dǎo)致操作系統(tǒng)發(fā)生延遲。 [0005]圖1為一種在FUSE文件系統(tǒng)中進(jìn)行數(shù)據(jù)讀寫的示意圖。請參照圖1,假設(shè)使用者欲將文件I寫入至硬盤C的文件儲(chǔ)存路徑(例如,『C:\A\』)的時(shí)候,操作系統(tǒng)的內(nèi)核11會(huì)先從數(shù)據(jù)存取界面中取得文件101,并將其暫存于緩存區(qū)102 (步驟S110),接著利用函數(shù)【copy_to_user J將文件101從緩存區(qū)102拷貝(copy)至用戶空間12中,并且同時(shí)修改文件101對應(yīng)的索引編碼104以及呈現(xiàn)修改后的文件儲(chǔ)存路徑(『C:\A\』),供使用者查閱(步驟S120)。然后,內(nèi)核11再利用函數(shù)『copy_from_user』將文件101從用戶空間12拷貝到另一個(gè)緩存區(qū)103中(步驟S130),并將文件101寫入至硬盤13 (也就是,硬盤C)或相應(yīng)的記憶體(步驟S140),從而完成文件101的數(shù)據(jù)寫入。
[0006]在將文件101寫入到硬盤13的過程中,操作系統(tǒng)在內(nèi)核11與用戶空間12之間至少執(zhí)行2次的文件拷貝、修改索引編碼等操作,相似地,若從硬盤中讀取數(shù)據(jù)或搬移數(shù)據(jù)的話,目前使用的FUSE文件系統(tǒng)也至少需要在內(nèi)核與用戶空間之間進(jìn)行2次以上的拷貝操作,進(jìn)而降低數(shù)據(jù)的讀寫效率。
[0007]特別是,對于需要即時(shí)錄制或播放影音的數(shù)字視頻轉(zhuǎn)換器,尤其是針對可錄制或播放高畫質(zhì)電視(High Definition Television, HDTV)信號(hào)的數(shù)位電視機(jī)頂盒(Set-Topbox ;STB)來說,任何些微的延遲都可能會(huì)對影像畫面或聲音產(chǎn)生嚴(yán)重的誤差。因此,如何提升數(shù)字視頻轉(zhuǎn)換器中文件的讀寫速度,便是所欲解決的一大難題。
【發(fā)明內(nèi)容】
[0008]有鑒于此,本發(fā)明提出一種數(shù)字視頻轉(zhuǎn)換器與視頻串流的讀寫方法,其可在不涉及用戶空間的情況下完成視頻串流在儲(chǔ)存裝置中的讀寫,提升操作系統(tǒng)對于儲(chǔ)存裝置的數(shù)據(jù)讀寫速度。
[0009]本發(fā)明提出一種數(shù)字視頻轉(zhuǎn)換器,所述數(shù)字視頻轉(zhuǎn)換器包括處理裝置與儲(chǔ)存裝置。處理裝置用以運(yùn)行操作系統(tǒng),其中操作系統(tǒng)設(shè)置內(nèi)核(Kernel)與用戶空間(UserSpace)。儲(chǔ)存裝置耦接處理裝置,用于儲(chǔ)存數(shù)據(jù)。處理裝置根據(jù)用戶的數(shù)據(jù)存儲(chǔ)請求執(zhí)行寫入程序以寫入視頻串流至儲(chǔ)存裝置,當(dāng)寫入程序被執(zhí)行時(shí),內(nèi)核根據(jù)用戶的數(shù)據(jù)存儲(chǔ)請求取得對應(yīng)于儲(chǔ)存裝置中指定儲(chǔ)存空間的指定標(biāo)識(shí)符,并依據(jù)指定標(biāo)識(shí)符將視頻串流寫入至指定儲(chǔ)存空間。另外,處理裝置根據(jù)用戶的數(shù)據(jù)存儲(chǔ)請求執(zhí)行讀取程序以從儲(chǔ)存裝置讀取視頻串流,當(dāng)讀取程序被執(zhí)行時(shí),內(nèi)核取得對應(yīng)于儲(chǔ)存視頻串流的指定儲(chǔ)存空間的指定標(biāo)識(shí)符,并依據(jù)標(biāo)識(shí)符搜尋指定儲(chǔ)存空間,且從指定儲(chǔ)存空間讀取視頻串流。上述寫入程序以及讀取程序不涉及用戶空間。
[0010]在本發(fā)明的一實(shí)施例中,所述內(nèi)核查詢邏輯區(qū)塊地址(Logical BlockAddress, LBA)表格,以獲得對應(yīng)于指定儲(chǔ)存空間的邏輯地址,其中邏輯區(qū)塊位置表格指示邏輯地址對應(yīng)的指定儲(chǔ)存空間可以被寫入數(shù)據(jù)。另外,內(nèi)核依據(jù)邏輯地址,獲得對應(yīng)于指定儲(chǔ)存空間的指定標(biāo)識(shí)符,并依據(jù)指定標(biāo)識(shí)符搜尋指定儲(chǔ)存空間,且將視頻串流寫入至指定儲(chǔ)存空間。
[0011]在本發(fā)明的一實(shí)施例中,所述內(nèi)核查詢邏輯區(qū)塊位置表格,以獲得對應(yīng)于指定儲(chǔ)存空間的邏輯地址,其中邏輯區(qū)塊位置表格指示視頻串流已被寫入邏輯地址對應(yīng)的指定儲(chǔ)存空間。另外,內(nèi)核依據(jù)邏輯地址,獲得對應(yīng)于指定儲(chǔ)存空間的指定標(biāo)識(shí)符,并依據(jù)指定標(biāo)識(shí)符搜尋指定儲(chǔ)存空間,且從指定儲(chǔ)存空間讀取視頻串流。
[0012]在本發(fā)明的一實(shí)施例中,所述數(shù)字視頻轉(zhuǎn)換器更包括視頻串流接收裝置。視頻串流接收裝置耦接處理裝置,用以依據(jù)電視信號(hào)產(chǎn)生視頻串流。
[0013]在本發(fā)明的一實(shí)施例中,所述處理裝置更顯示使用者操作界面于顯示裝置,其中使用者操作界面上顯示對應(yīng)于視頻串流的影音文件名稱。另外,處理裝置判斷影音文件名稱是否被選取,當(dāng)影音文件名稱被選取時(shí),處理裝置執(zhí)行讀取程序,以播放視頻串流。
[0014]本發(fā)明令提出一種視頻串流的讀寫方法,所述視頻串流的讀寫方法適用于數(shù)字視頻轉(zhuǎn)換器,其中數(shù)字視頻轉(zhuǎn)換器包括操作系統(tǒng)以及具有多個(gè)儲(chǔ)存空間的儲(chǔ)存裝置,操作系統(tǒng)設(shè)置內(nèi)核與用戶空間,所述視頻串流的讀寫方法包括下列步驟。根據(jù)用戶的數(shù)據(jù)存儲(chǔ)請求執(zhí)行寫入程序以寫入視頻串流至數(shù)字視頻轉(zhuǎn)換器的儲(chǔ)存裝置,其中寫入程序包括下列步驟。內(nèi)核依據(jù)該用戶的數(shù)據(jù)存儲(chǔ)請求取得對應(yīng)于儲(chǔ)存裝置中指定儲(chǔ)存空間的指定標(biāo)識(shí)符。內(nèi)核依據(jù)指定標(biāo)識(shí)符將視頻串流寫入至指定儲(chǔ)存空間。根據(jù)用戶的數(shù)據(jù)讀取請求執(zhí)行讀取程序以從儲(chǔ)存裝置讀取視頻串流,其中讀取程序包括下列步驟。內(nèi)核取得對應(yīng)于儲(chǔ)存視頻串流的指定儲(chǔ)存空間的指定標(biāo)識(shí)符。內(nèi)核依據(jù)標(biāo)識(shí)符搜尋指定儲(chǔ)存空間,并從指定儲(chǔ)存空間讀取視頻串流,其中寫入程序與讀取程序皆不涉及用戶空間。
[0015]在本發(fā)明的一實(shí)施例中,所述寫入程序包括下列步驟。內(nèi)核查詢邏輯區(qū)塊地址表格,以獲得對應(yīng)于指定儲(chǔ)存空間的邏輯地址,其中邏輯區(qū)塊位置表格指示邏輯地址對應(yīng)的指定儲(chǔ)存空間可以被寫入數(shù)據(jù)。內(nèi)核依據(jù)邏輯地址,獲得對應(yīng)于指定儲(chǔ)存空間的指定標(biāo)識(shí)符。內(nèi)核依據(jù)指定標(biāo)識(shí)符搜尋指定儲(chǔ)存空間,并將視頻串流寫入至指定儲(chǔ)存空間。
[0016]在本發(fā)明的一實(shí)施例中,所述讀取程序包括下列步驟。內(nèi)核查詢邏輯區(qū)塊位置表格,以獲得對應(yīng)于指定儲(chǔ)存空間的邏輯地址,其中邏輯區(qū)塊位置表格指示視頻串流已被寫入邏輯地址對應(yīng)的指定儲(chǔ)存空間。內(nèi)核依據(jù)邏輯地址,獲得對應(yīng)于指定儲(chǔ)存空間的指定標(biāo)識(shí)符。內(nèi)核依據(jù)指定標(biāo)識(shí)符搜尋指定儲(chǔ)存空間,并從指定儲(chǔ)存空間讀取視頻串流。
[0017]在本發(fā)明的一實(shí)施例中,所述視頻串流是由電視信號(hào)所獲得。
[0018]在本發(fā)明的一實(shí)施例中,所述視頻串流讀寫方法更包括下列步驟。顯示使用者操作界面。在使用者操作界面上顯示對應(yīng)于視頻串流的影音文件名稱。判斷影音文件名稱是否被選取,當(dāng)影音文件名稱被選取時(shí),執(zhí)行讀取程序,以播放視頻串流。
[0019]基于上述,本發(fā)明實(shí)施例提出一種數(shù)字視頻轉(zhuǎn)換器與其適用的視頻串流的讀寫方法,其可在不涉及用戶空間的情況下完成視頻串流在儲(chǔ)存裝置中的讀寫。藉此,可有效地提升對于視頻串流的整體讀寫速度,以及避免延遲發(fā)生而影響播放品質(zhì)。
[0020]為讓本發(fā)明的上述特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉實(shí)施例,并配合所附圖式作詳細(xì)說明如下。
【專利附圖】
【附圖說明】
[0021]圖1為一種在FUSE文件系統(tǒng)中進(jìn)行數(shù)據(jù)讀寫的示意圖。
[0022]圖2為依據(jù)本發(fā)明的一實(shí)施例所繪示的數(shù)字視頻轉(zhuǎn)換器20的方塊圖。
[0023]圖3為依據(jù)本發(fā)明的一實(shí)施例所繪示的操作系統(tǒng)220進(jìn)行數(shù)據(jù)讀寫的方塊示意圖。
[0024]圖4為依據(jù)本發(fā)明的一實(shí)施例所繪示的操作系統(tǒng)220寫入程序的示意圖。
[0025]圖5為依據(jù)本發(fā)明的一范例實(shí)施例所繪示的視頻串流的讀寫方法的流程圖。
[0026]主要元件符號(hào)說明
[0027]11、221:內(nèi)核
[0028]12、222:用戶空間
[0029]13:硬盤
[0030]101、301:文件
[0031]102、103:緩存區(qū)
[0032]20:數(shù)字視頻轉(zhuǎn)換器[0033]21:視頻串流接收裝置
[0034]22:處理裝置
[0035]23:儲(chǔ)存裝置
[0036]24:顯示裝置
[0037]220:操作系統(tǒng)
[0038]400:邏輯區(qū)塊地址表格
[0039]401:邏輯地址
[0040]402:指定儲(chǔ)存空間
[0041]S310、S320:本發(fā)明一實(shí)施例的操作系統(tǒng)進(jìn)行數(shù)據(jù)讀寫的步驟
[0042]S510、S512、S514、S520、S522、S524:本發(fā)明一實(shí)施例的視頻串流的讀寫方法各步
驟
【具體實(shí)施方式】
[0043]為了使數(shù)字視頻轉(zhuǎn)換器(例如是數(shù)位電視機(jī)頂盒(set-top box ;STB))在對即時(shí)傳輸?shù)囊曨l串流(video stream)進(jìn)行讀取或?qū)懭霑r(shí)不需要在操作系統(tǒng)的內(nèi)核與用戶空間之間反復(fù)拷貝,本發(fā)明實(shí)施例提出一種數(shù)字視頻轉(zhuǎn)換器以及視頻串流的讀寫方法,其可在不涉及操作系統(tǒng)中用戶空間的情況下,直接地使用內(nèi)核來讀寫儲(chǔ)存裝置(例如,硬盤)內(nèi)的數(shù)據(jù)。藉此,本實(shí)施例可有效地提升數(shù)字視頻轉(zhuǎn)換器在對視頻串流進(jìn)行讀取或?qū)懭氩僮鲿r(shí)的效能。為了使本發(fā)明的內(nèi)容更容易明了,以下特舉實(shí)施例作為本發(fā)明確實(shí)能夠據(jù)以實(shí)施的范例。
[0044]圖2為依據(jù)本發(fā)明的一實(shí)施例所繪示的數(shù)字視頻轉(zhuǎn)換器20的方塊圖。請參照圖2,數(shù)字視頻轉(zhuǎn)換器20包括視頻串流接收裝置21、處理裝置22與儲(chǔ)存裝置23。另外,數(shù)字視頻轉(zhuǎn)換器22普遍皆會(huì)與顯示裝置24連接。使用者可透過顯示裝置24上的使用者操作界面來控制數(shù)字視頻轉(zhuǎn)換器22。應(yīng)用本實(shí)施例者也可將數(shù)字視頻轉(zhuǎn)換器20以及顯示裝置24相結(jié)合以成為數(shù)字電視機(jī),如此也可符合本發(fā)明實(shí)施例的另一種實(shí)現(xiàn)方式。
[0045]視頻串流接收裝置21依據(jù)數(shù)字電視信號(hào)以產(chǎn)生視頻串流。舉例來說,視頻串流接收裝置21可以利用天線、射頻接收電路等設(shè)備以無線方式接收無線電視信號(hào),并將接收到的無線電視信號(hào)轉(zhuǎn)換為數(shù)位形式的視頻串流。又例如,若數(shù)字視頻轉(zhuǎn)換器20可以利用網(wǎng)路界面卡、視頻信號(hào)輸入接口等設(shè)備,自網(wǎng)際網(wǎng)路或有線電視業(yè)者中以有線方式接收視頻串流?;蛘?,視頻串流接收裝置21也可以兼具上述裝置,使得數(shù)字視頻轉(zhuǎn)換器20可以接收并播放無線電視信號(hào)與有線電視信號(hào),應(yīng)用本實(shí)施例者應(yīng)不受限于上述揭示。
[0046]處理裝置22耦接視頻串流接收裝置21,其主要用于運(yùn)行操作系統(tǒng)220,其中,操作系統(tǒng)220設(shè)置內(nèi)核221與用戶空間222。在本實(shí)施例中,處理裝置22例如是中央處理器(central processing unit, CPU)、微處理器(micro-processor)或嵌入式處理器(embedded processor),但本發(fā)明可實(shí)施方式并不對限定以上述設(shè)備來實(shí)現(xiàn)。此外,處理裝置22當(dāng)中也可設(shè)置暫存記憶體,以供操作系統(tǒng)在運(yùn)作時(shí)進(jìn)行相關(guān)運(yùn)算所用。操作系統(tǒng)220可以是Unix操作系統(tǒng)或類Unix操作系統(tǒng)。類Unix操作系統(tǒng)例如是FreeBSD、OpenBSD,Solaris、Minix、Linux、QNX或是從上述知名操作系統(tǒng)所改良研發(fā)以專用于特定設(shè)備的操作系統(tǒng),本發(fā)明不對其限制。[0047]內(nèi)核221為操作系統(tǒng)220中最基本的部份,其主要負(fù)責(zé)管理系統(tǒng)資源,而用戶空間22則是由操作系統(tǒng)所掌握。換句話說,操作系統(tǒng)會(huì)在儲(chǔ)存裝置23或是處理裝置22中的暫存記憶體來設(shè)置虛擬記憶體,并將虛擬記憶體區(qū)分為用戶空間222與內(nèi)核221所位在的核心空間(Kernel space)。內(nèi)核221、數(shù)字視頻轉(zhuǎn)換器20中的驅(qū)動(dòng)程式以及由內(nèi)核221延伸出來的擴(kuò)充程序?qū)?huì)運(yùn)行在核心空間中。此外,其他應(yīng)用程式所需的虛擬記憶體空間則會(huì)設(shè)置于用戶空間222中。特別提出的是,使用者在存取數(shù)據(jù)所需的索引編碼等數(shù)據(jù)也會(huì)設(shè)置于用戶空間222。然而,本實(shí)施例所提出的數(shù)字視頻轉(zhuǎn)換器20在進(jìn)行數(shù)據(jù)讀寫時(shí)并不需涉及用戶空間222,下述將會(huì)詳細(xì)說明此精神。
[0048]儲(chǔ)存裝置23耦接處理裝置22,用于儲(chǔ)存視訊串流等數(shù)據(jù)。在本實(shí)施例中,儲(chǔ)存裝置23可以是各種非揮發(fā)性(Non-volatile)記憶體或其組合,例如唯讀記憶體(read-onlymemory, ROM )及/或快閃記憶體(f I ash memory ),其中唯讀記憶體例如是可規(guī)化唯讀記憶體(programmable read-only memory, PR0M)、電可改寫唯讀記憶體(electricallyalterable read only memory, EAR0M)、可擦可規(guī)化唯讀記憶體(erasable programmableread only memory, EPROM)及 / 或電可擦可規(guī)化唯讀記憶體(electrically erasableprogrammable read only memory, EEPR0M)等。另外,儲(chǔ)存裝置23也可包括硬盤、光碟或外接式儲(chǔ)存裝置(如記憶卡、隨身碟等)等儲(chǔ)存裝置或其組合,在此并不對儲(chǔ)存裝置23的體現(xiàn)方式加以限制。
[0049]具體來看,處理裝置22的操作系統(tǒng)220利用內(nèi)核221對于儲(chǔ)存裝置23進(jìn)行數(shù)據(jù)讀寫,例如,在數(shù)字視頻轉(zhuǎn)換器20的錄制模式下,內(nèi)核221可以直接將視頻串流接收裝置21接收的視頻串流寫入至儲(chǔ)存裝置23,或者在數(shù)字視頻轉(zhuǎn)換器20的播放模式下,內(nèi)核221也可以直接將先前錄制或?qū)懭胫羶?chǔ)存裝置23的視頻串流重新播放。特別說明的是,本實(shí)施例的精神在于,內(nèi)核221對于儲(chǔ)存裝置23進(jìn)行的數(shù)據(jù)讀寫并不涉及用戶空間222。此一重點(diǎn)使得本發(fā)明揭露的數(shù)字視頻轉(zhuǎn)換器20與一般使用架構(gòu)在用戶空間上的FUSE的數(shù)字視頻轉(zhuǎn)換器20產(chǎn)生本質(zhì)上的差異。
[0050]由于數(shù)字視頻轉(zhuǎn)換器20僅是單純地被使用者用來執(zhí)行視訊串流的播放操作與錄制操作等。使用者只需要知道數(shù)字視頻轉(zhuǎn)換器20中儲(chǔ)存了哪些視訊影片,或者數(shù)字視頻轉(zhuǎn)換器20中還有多少可用儲(chǔ)存空間等基本的資訊。因此,本實(shí)施例認(rèn)為數(shù)字視頻轉(zhuǎn)換器20實(shí)際上并不需要如電腦系統(tǒng)一般需要建立復(fù)雜且完整的數(shù)據(jù)夾結(jié)構(gòu)。相對地,符合本實(shí)施例精神的數(shù)字視頻轉(zhuǎn)換器20僅需要可支援快速存取視訊串流或其他文件等基本操作功能的改良式文件系統(tǒng)架構(gòu)。也就是說,數(shù)字視頻轉(zhuǎn)換器20直接將視訊串流讀寫到儲(chǔ)存裝置23中即可,不需要修改用戶空間222中的任何設(shè)定,進(jìn)行存取的數(shù)據(jù)也不需經(jīng)由用戶空間222來讀寫到儲(chǔ)存裝置23中。
[0051 ] 在本實(shí)施例中,顯示裝置24可以是一般的顯示螢?zāi)?,而可接收遙控器、滑鼠或?qū)嶓w按鈕的輸入信號(hào)。或者,顯示裝置24也可以是各類型的觸控螢?zāi)?,而可偵測在其表面上的觸碰并產(chǎn)生觸碰信號(hào),其中觸控螢?zāi)豢梢园娮枋?resistive)觸控面板、電容式(capacitive)觸控面板、光學(xué)式(optical)觸控面板、聲波式(acoustic wave)觸控螢面板、電磁式(electromagnetic)觸控面板等,本發(fā)明不對其限制。
[0052]圖3為依據(jù)本發(fā)明的一實(shí)施例所繪示的操作系統(tǒng)220進(jìn)行數(shù)據(jù)讀寫的方塊示意圖。請參照圖3,當(dāng)內(nèi)核221欲將文件301寫入至儲(chǔ)存裝置23時(shí),內(nèi)核221會(huì)透過上述的虛擬記憶體作為緩存區(qū),從而直接將文件301寫入至儲(chǔ)存裝置23的對應(yīng)儲(chǔ)存區(qū)域(步驟S310)。以及,當(dāng)內(nèi)核221欲從儲(chǔ)存裝置23讀取文件301時(shí),內(nèi)核221可以透過緩存區(qū)而直接從儲(chǔ)存裝置23的對應(yīng)儲(chǔ)存區(qū)域取得所需的文件301 (步驟S320),不需要將文件301在內(nèi)核221與用戶空間222之間來回拷貝或傳輸。藉此,在播放或錄制視頻串流(例如,文件301)時(shí),本發(fā)明實(shí)施例所述的操作系統(tǒng)及其內(nèi)核可有效地提升處理裝置22對于儲(chǔ)存裝置23中視頻串流或數(shù)據(jù)的整體讀寫速度,以及避免延遲發(fā)生而影響播放品質(zhì)。
[0053]請?jiān)俅螀⒄請D2,在本實(shí)施例中,處理裝置22的操作系統(tǒng)220也可以根據(jù)一用戶的數(shù)據(jù)存儲(chǔ)請求(request)執(zhí)行寫入程序,以將視頻串流接收裝置21的視頻串流寫入至儲(chǔ)存裝置23。例如,處理裝置22的操作系統(tǒng)220可以藉由遙控器、滑鼠、實(shí)體按鈕及/或觸控螢?zāi)坏仍O(shè)備來接收用戶的數(shù)據(jù)存儲(chǔ)請求。具體來看,當(dāng)操作系統(tǒng)220根據(jù)上述用戶的數(shù)據(jù)存儲(chǔ)請求而執(zhí)行寫入程序時(shí),內(nèi)核221可以先根據(jù)上述用戶的數(shù)據(jù)存儲(chǔ)請求取得對應(yīng)于儲(chǔ)存裝置23中一個(gè)或多個(gè)指定儲(chǔ)存空間(指定儲(chǔ)存空間的數(shù)量端看視頻串流的文件大小而定)的指定標(biāo)識(shí)符。然后,內(nèi)核221再依據(jù)此指定標(biāo)識(shí)符將視頻串流寫入至上述指定儲(chǔ)存空間。
[0054]舉例來說,若儲(chǔ)存裝置23為硬盤(Hard Disk Drive),則上述指定儲(chǔ)存空間則可以以磁區(qū)(Sector)作為儲(chǔ)存空間的單位來實(shí)施。藉此,上述指定標(biāo)識(shí)符例如是表示硬盤中各個(gè)磁區(qū)的磁區(qū)標(biāo)頭(Header),此磁區(qū)標(biāo)頭包括分別代表磁軌(Track)、柱面(Cylinder)與磁區(qū)的3種數(shù)字類別。換言之,上述指定儲(chǔ)存空間與指定標(biāo)識(shí)符實(shí)質(zhì)上需要視儲(chǔ)存裝置23的種類而對應(yīng)地實(shí)現(xiàn),本發(fā)明不對其限制。
[0055]圖4為依據(jù)本發(fā)明的一實(shí)施例所繪示的操作系統(tǒng)220寫入程序的示意圖。請參照圖4,在視頻串流的寫入程序中,內(nèi)核221可以藉由查詢邏輯區(qū)塊地址(Logical BlockAddress, LBA)表格400,來獲得對應(yīng)于儲(chǔ)存裝置23中指定儲(chǔ)存空間402的邏輯地址401。值得一提的是,邏輯區(qū)塊位置表格400可以指示邏輯地址401對應(yīng)的指定儲(chǔ)存空間402可以被寫入數(shù)據(jù)。然后,內(nèi)核221可以依據(jù)取得的邏輯地址401,并藉由查表等方式獲得對應(yīng)于指定儲(chǔ)存空間402的指定標(biāo)識(shí)符,并依據(jù)此指定標(biāo)識(shí)符搜尋儲(chǔ)存裝置23中的指定儲(chǔ)存空間402,而在找到指定儲(chǔ)存空間402之后將視頻串流寫入至指定儲(chǔ)存空間402。藉此,在不涉及用戶空間的情況下,內(nèi)核221可以快速地寫入視頻串流至儲(chǔ)存裝置23。
[0056]請?jiān)俅螀⒄請D2,處理裝置22也可以根據(jù)一用戶的數(shù)據(jù)讀取請求執(zhí)行讀取程序以從儲(chǔ)存裝置23讀取已儲(chǔ)存的視頻串流。例如,處理裝置22的操作系統(tǒng)220可以藉由遙控器、滑鼠、實(shí)體按鈕及/或觸控螢?zāi)坏仍O(shè)備來接收用戶的數(shù)據(jù)讀取請求。具體來看,當(dāng)處理裝置22的操作系統(tǒng)220根據(jù)上述用戶的數(shù)據(jù)讀取請求執(zhí)行讀取程序時(shí),內(nèi)核221可以取得對應(yīng)于此用戶欲播放的視頻串流的指定標(biāo)識(shí)符,并依據(jù)此指定標(biāo)識(shí)符搜尋儲(chǔ)存裝置23中儲(chǔ)存此視頻串流的指定儲(chǔ)存空間,然后從此指定儲(chǔ)存空間讀取視頻串流,以將其播放。
[0057]舉例來說,類似于圖4的寫入程序的流程,在讀取程序中,內(nèi)核221可以查詢邏輯區(qū)塊位置表格,以獲得對應(yīng)于儲(chǔ)存裝置23中一個(gè)或多個(gè)指定儲(chǔ)存空間的邏輯地址,其中此邏輯區(qū)塊位置表格可以指示欲讀取的視頻串流已被寫入至上述邏輯地址對應(yīng)的儲(chǔ)存裝置23中的一個(gè)或多個(gè)指定儲(chǔ)存空間。然后,內(nèi)核221可以依據(jù)上述邏輯地址,獲得對應(yīng)于儲(chǔ)存裝置23中儲(chǔ)存此視頻串流的指定儲(chǔ)存空間的指定標(biāo)識(shí)符,并依據(jù)此指定標(biāo)識(shí)符搜尋于儲(chǔ)存裝置23中儲(chǔ)存此視頻串流的指定儲(chǔ)存空間。并且,在找到此指定標(biāo)識(shí)符對應(yīng)的指定儲(chǔ)存空間之后,內(nèi)核221直接從儲(chǔ)存裝置23中的指定儲(chǔ)存空間讀取視頻串流。[0058]據(jù)此,在本實(shí)施例中,數(shù)字視頻轉(zhuǎn)換器20還可以耦接至顯示裝置24,以藉由顯示裝置24播放視頻串流。此外,處理裝置22還可以顯示一使用者操作界面于顯示裝置24,并且于此使用者操作界面上顯示對應(yīng)于已經(jīng)儲(chǔ)存于儲(chǔ)存裝置23中的視頻串流的影音文件名稱。并且,處理裝置22會(huì)判斷使用者操作界面上顯示的影音文件名稱是否被使用者選取。當(dāng)影音文件名稱被使用者選取時(shí),處理裝置22可以執(zhí)行上述讀取程序,以播放被選取的影音文件名稱對應(yīng)的視頻串流。
[0059]圖5為依據(jù)本發(fā)明的一范例實(shí)施例所繪示的視頻串流的讀寫方法的流程圖。
[0060]請參照圖5,在步驟S510中,數(shù)字視頻轉(zhuǎn)換器的操作系統(tǒng)根據(jù)用戶的數(shù)據(jù)存儲(chǔ)請求執(zhí)行寫入程序,以寫入視頻串流至數(shù)字視頻轉(zhuǎn)換器的儲(chǔ)存裝置,其中數(shù)字視頻轉(zhuǎn)換器包括此操作系統(tǒng)以及劃分為多個(gè)儲(chǔ)存空間的儲(chǔ)存裝置,并且此操作系統(tǒng)設(shè)置有內(nèi)核與用戶空間。詳細(xì)來說,步驟S510中的寫入程序包括下列步驟。在步驟S512中,操作系統(tǒng)的內(nèi)核根據(jù)用戶的數(shù)據(jù)存儲(chǔ)請求取得對應(yīng)于儲(chǔ)存裝置中指定儲(chǔ)存空間的指定標(biāo)識(shí)符。接著,在步驟S514中,操作系統(tǒng)的內(nèi)核依據(jù)指定標(biāo)識(shí)符將視頻串流寫入至上述指定儲(chǔ)存空間。
[0061]另外,在步驟S520中,數(shù)字視頻轉(zhuǎn)換器的操作系統(tǒng)根據(jù)用戶的數(shù)據(jù)讀取請求執(zhí)行讀取程序,以從數(shù)字視頻轉(zhuǎn)換器的儲(chǔ)存裝置讀取視頻串流,其中步驟S520中的讀取程序包括下列步驟。在步驟S522中,操作系統(tǒng)的內(nèi)核根據(jù)用戶的數(shù)據(jù)讀取請求取得對應(yīng)儲(chǔ)存視頻串流的指定儲(chǔ)存空間的指定標(biāo)識(shí)符。接著,在步驟S524中,操作系統(tǒng)的內(nèi)核依據(jù)取得的標(biāo)識(shí)符搜尋儲(chǔ)存此視頻串流的指定儲(chǔ)存空間,并從此指定儲(chǔ)存空間讀取視頻串流。特別是,步驟S510中的寫入程序以及步驟S520中的讀取程序皆不涉及操作系統(tǒng)的用戶空間。
[0062]另外,本實(shí)施例中的步驟S510與步驟S520是依據(jù)數(shù)字視頻轉(zhuǎn)換器的對視訊串流的讀取操作以及寫入操作而可分別執(zhí)行。
[0063]在此需注意的是,對于上述方法,由上述的實(shí)施例可獲得足夠的教示、建議與實(shí)施說明,在此不再贅述。
[0064]綜上所述,本發(fā)明實(shí)施例中的數(shù)字視頻轉(zhuǎn)換器與視頻串流的讀寫方法,可在不涉及操作系統(tǒng)中用戶空間的情況下,直接地使用內(nèi)核來從儲(chǔ)存裝置中讀取數(shù)據(jù),并且直接地使用內(nèi)核來寫入數(shù)據(jù)。藉此,可有效地提升數(shù)字視頻轉(zhuǎn)換器在對視頻串流進(jìn)行讀取或?qū)懭氩僮鲿r(shí)的效能。
[0065]雖然本發(fā)明已以實(shí)施例揭露如上,然其并非用以限定本發(fā)明,任何所屬【技術(shù)領(lǐng)域】中具有通常知識(shí)者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許的更動(dòng)與潤飾,故本發(fā)明的保護(hù)范圍當(dāng)視后附的權(quán)利要求所界定者為準(zhǔn)。
【權(quán)利要求】
1.一種數(shù)字視頻轉(zhuǎn)換器,包括: 處理裝置,用以運(yùn)行操作系統(tǒng),其中該操作系統(tǒng)設(shè)置內(nèi)核與用戶空間;以及 儲(chǔ)存裝置,耦接該處理裝置, 其中該處理裝置根據(jù)用戶的數(shù)據(jù)存儲(chǔ)請求執(zhí)行寫入程序以寫入視頻串流至該儲(chǔ)存裝置, 當(dāng)該處理裝置執(zhí)行該寫入程序時(shí),該內(nèi)核根據(jù)該用戶的數(shù)據(jù)存儲(chǔ)請求取得對應(yīng)于該儲(chǔ)存裝置中指定儲(chǔ)存空間的指定標(biāo)識(shí)符,并依據(jù)該指定標(biāo)識(shí)符將該視頻串流寫入至該指定儲(chǔ)存空間, 其中該處理裝置還根據(jù)該用戶的數(shù)據(jù)讀取請求執(zhí)行讀取程序以從該儲(chǔ)存裝置讀取該視頻串流, 當(dāng)該處理裝置執(zhí)行該讀取程序時(shí),該內(nèi)核取得對應(yīng)于儲(chǔ)存該視頻串流的該指定儲(chǔ)存空間的該指定標(biāo)識(shí)符,并依據(jù)該標(biāo)識(shí)符搜尋該指定儲(chǔ)存空間,且從該指定儲(chǔ)存空間讀取該視頻串流, 上述寫入程序以及讀取程序不涉及該用戶空間。
2.根據(jù)權(quán)利要求1所述的數(shù)字視頻轉(zhuǎn)換器,其中該內(nèi)核查詢邏輯區(qū)塊地址表格,以獲得對應(yīng)于該指定儲(chǔ)存空間的邏輯地址,其中該邏輯區(qū)塊位置表格指示該邏輯地址對應(yīng)的該指定儲(chǔ)存空間可以被寫入數(shù)據(jù), 其中該內(nèi)核依據(jù)該邏輯地址,獲得對應(yīng)于該指定儲(chǔ)存空間的該指定標(biāo)識(shí)符,并依據(jù)該指定標(biāo)識(shí)符搜尋該指定儲(chǔ)存空間,且將該視頻串流寫入至該指定儲(chǔ)存空間。
3.根據(jù)權(quán)利要求1所述的數(shù)字視頻轉(zhuǎn)換器,其中該內(nèi)核查詢邏輯區(qū)塊位置表格,以獲得對應(yīng)于該指定儲(chǔ)存空間的邏輯地址,`其中該邏輯區(qū)塊位置表格指示該視頻串流已被寫入該邏輯地址對應(yīng)的該指定儲(chǔ)存空間, 其中該內(nèi)核依據(jù)該邏輯地址,獲得對應(yīng)于該指定儲(chǔ)存空間的該指定標(biāo)識(shí)符,并依據(jù)該指定標(biāo)識(shí)符搜尋該指定儲(chǔ)存空間,且從該指定儲(chǔ)存空間讀取該視頻串流。
4.根據(jù)權(quán)利要求1所述的數(shù)字視頻轉(zhuǎn)換器,更包括: 視頻串流接收裝置,耦接該處理裝置,用以依據(jù)電視信號(hào)產(chǎn)生該視頻串流。
5.根據(jù)權(quán)利要求1所述的數(shù)字視頻轉(zhuǎn)換器,其中該處理裝置更顯示使用者操作界面于顯示裝置, 其中該使用者操作界面上顯示對應(yīng)于該視頻串流的影音文件名稱, 其中該處理裝置判斷該影音文件名稱是否被選取, 當(dāng)該影音文件名稱被選取時(shí),該處理裝置執(zhí)行該讀取程序,以播放該視頻串流。
6.一種視頻串流的讀寫方法,適用于數(shù)字視頻轉(zhuǎn)換器,該視頻串流的讀寫方法包括: 根據(jù)用戶的數(shù)據(jù)存儲(chǔ)請求執(zhí)行寫入程序以寫入視頻串流至該數(shù)字視頻轉(zhuǎn)換器的儲(chǔ)存裝置,該數(shù)字視頻轉(zhuǎn)換器包括操作系統(tǒng)以及具有多個(gè)儲(chǔ)存空間的該儲(chǔ)存裝置,該操作系統(tǒng)設(shè)置內(nèi)核與用戶空間,其中該寫入程序包括: 該內(nèi)核依據(jù)該用戶的數(shù)據(jù)存儲(chǔ)請求取得對應(yīng)于該儲(chǔ)存裝置中指定儲(chǔ)存空間的指定標(biāo)識(shí)符;以及 該內(nèi)核依據(jù)該指定標(biāo)識(shí)符將該視頻串流寫入至該指定儲(chǔ)存空間;以及 根據(jù)用戶的數(shù)據(jù)讀取請求執(zhí)行讀取程序以從該儲(chǔ)存裝置讀取該視頻串流,其中該讀取程序包括下列步驟: 該內(nèi)核取得對應(yīng)于儲(chǔ)存該視頻串流的該指定儲(chǔ)存空間的該指定標(biāo)識(shí)符;以及 該內(nèi)核依據(jù)該標(biāo)識(shí)符搜尋該指定儲(chǔ)存空間,并從該指定儲(chǔ)存空間讀取該視頻串流, 其中該寫入程序與該讀取程序皆不涉及該用戶空間。
7.根據(jù)權(quán)利要求6所述的視頻串流讀寫方法,其中該寫入程序包括下列步驟: 該內(nèi)核查詢邏輯區(qū)塊地址表格,以獲得對應(yīng)于該指定儲(chǔ)存空間的邏輯地址,其中該邏輯區(qū)塊位置表格指示該邏輯地址對應(yīng)的該指定儲(chǔ)存空間可以被寫入數(shù)據(jù); 該內(nèi)核依據(jù)該邏輯地址,獲得對應(yīng)于該指定儲(chǔ)存空間的該指定標(biāo)識(shí)符;以及 該內(nèi)核依據(jù)該指定標(biāo)識(shí)符搜尋該指定儲(chǔ)存空間,并將該視頻串流寫入至該指定儲(chǔ)存空間。
8.根據(jù)權(quán)利要求6所述的視頻串流讀寫方法,其中該讀取程序包括下列步驟: 該內(nèi)核查詢邏輯區(qū)塊位置表格,以獲得對應(yīng)于該指定儲(chǔ)存空間的邏輯地址,其中該邏輯區(qū)塊位置表格指示該視頻串流已被寫入該邏輯地址對應(yīng)的該指定儲(chǔ)存空間; 該內(nèi)核依據(jù)該邏輯地址,獲得對應(yīng)于該指定儲(chǔ)存空間的該指定標(biāo)識(shí)符;以及 該內(nèi)核依據(jù)該指定標(biāo)識(shí)符搜尋該指定儲(chǔ)存空間,并從該指定儲(chǔ)存空間讀取該視頻串流。
9.根據(jù)權(quán)利要求6所述的視頻串流讀寫方法,其中該視頻串流是由電視信號(hào)所獲得。
10.根據(jù)權(quán)利要求6所述的視頻串流讀寫方法,更包括: 顯示使用者操作界面; 在該使用者操作界面上顯示對應(yīng)于該視頻串流的影音文件名稱; 判斷該影音文件名稱是否被選?。灰约? 當(dāng)該影音文件名稱被選取時(shí),執(zhí)行該讀取程序,以播放該視頻串流。
【文檔編號(hào)】G06F12/06GK103677651SQ201210343149
【公開日】2014年3月26日 申請日期:2012年9月14日 優(yōu)先權(quán)日:2012年9月14日
【發(fā)明者】錢江 申請人:珠海揚(yáng)智電子科技有限公司