TWI521945B - 快速判斷影音檔案的壓縮格式的方法及其相關的播放裝置 - Google Patents
快速判斷影音檔案的壓縮格式的方法及其相關的播放裝置 Download PDFInfo
- Publication number
- TWI521945B TWI521945B TW101147247A TW101147247A TWI521945B TW I521945 B TWI521945 B TW I521945B TW 101147247 A TW101147247 A TW 101147247A TW 101147247 A TW101147247 A TW 101147247A TW I521945 B TWI521945 B TW I521945B
- Authority
- TW
- Taiwan
- Prior art keywords
- video file
- processor
- compression format
- temporary storage
- storage area
- Prior art date
Links
- 230000006835 compression Effects 0.000 title claims description 176
- 238000007906 compression Methods 0.000 title claims description 176
- 238000000034 method Methods 0.000 title claims description 31
- 238000001914 filtration Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4331—Caching operations, e.g. of an advertisement for later insertion during playback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/804—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
- H04N9/8042—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Television Signal Processing For Recording (AREA)
Description
本發明是有關於一種快速判斷影音檔案的壓縮格式的方法及其相關的裝置,尤指一種可略過影音檔案的標頭的至少一標籤中的所有標籤,並根據支援至少一標籤的壓縮格式,以快速判斷影音檔案的壓縮格式的方法及其相關的裝置。
在多媒體的技術領域中,各家廠商開發出許多不同的壓縮技術,並且應用在不同格式的影音檔案中,因此現今的影音播放軟體需要盡可能支援每一種不同格式的影音檔案,例如開放原始碼的播放軟體FFmpeg就是知名的影音播放軟體,可以支援數十種不同的檔案格式。在使用者利用影音播放軟體開啟一影音檔案後,處理器會從影音檔案的標頭(header)開始將影音檔案的第一部分讀取至暫存區內,然後處理器可根據儲存在暫存區內的影音檔案的第一部分,判斷影音檔案的壓縮格式。在上述的判斷過程中,處理器是根據試誤方式,比對現有支援的各種影音檔案格式與儲存在暫存區內的影音檔案的第一部分,以找出符合的影音檔案格式。如果無法根據試誤方式找出符合的檔案格式,則處理器會要求增加儲存影音檔案資料的暫存區空間,再從影音檔案的第一部分之後讀取影音檔案的第二部分至暫存區內,之後再根據試誤方式比對現有影音檔案的壓縮格式與儲存在暫存區內的影音檔案的第一部份與第二部分,以
判斷影音檔案的壓縮格式。如此重複執行上述步驟,直到處理器判斷出符合的影音檔案格式為止。
然而,在一些影音檔案中,影音檔案的標頭的標籤部分(例如ID3標籤和APE標籤)可被嵌入圖像或其他資訊。當影音檔案的標頭的標籤部分被嵌入這些資訊時,會導致標籤部分佔去許多儲存空間,並且處理器無法從這些資訊直接比對判斷出影音檔案的格式,因此在判斷這類檔案的格式時,處理器可能必須執行許多次讀取與判斷程序,並且在每次重新讀取檔案時增加儲存資料的暫存區空間,直到讀取進暫存區內的資料容量大於標簽部分,亦即當暫存區內包括標簽部分以及後續的資料後,處理器才可能根據標籤部分後的檔案內容判斷出正確的影音檔案格式。因此,現有技術中判斷影音檔案的壓縮格式的方法會導致系統花費大量的時間以及暫存區空間,才能完成影音檔案格式的判斷流程。
本發明的一實施例提供一種一播放裝置快速判斷影音檔案的壓縮格式的方法,其中該播放裝置包含一接收器、一偵測器、一暫存器和一處理器。該方法包含該接收器接收一影音檔案;該偵測器偵測該影音檔案後是否存在一標籤部分;當該偵測器偵測到該標籤部分時,該處理器略過該標籤部分設定讀取該影音檔案資料的一起點位置;該處理器濾除不支援該標籤部分所屬種類的壓縮格式;自該起點位置讀取一第一部份存入該暫存器,並根據該第一部份判斷該
影音檔案的壓縮格式。
本發明的另一實施例提供一種一播放裝置快速判斷影音檔案的壓縮格式的方法,其中該播放裝置包含一接收器、一偵測器、一暫存器和一處理器。該方法包含該接收器接收一影音檔案;該偵測器偵測該影音檔案後是否存在一標籤部分;當該偵測器沒有偵測到該標籤部分時,該處理器設定讀取該影音檔案資料的一起點位置;當該偵測器偵測到該標籤部分時,該處理器略過該標籤部分設定讀取該影音檔案資料的該起點位置;該處理器根據一起始預定值設定該暫存器內一暫存區的容量;該處理器根據該暫存區的容量從該影音檔案的該起點位置讀取一第一部分至該暫存器;根據該第一部份判斷該影音檔案的壓縮格式。
本發明的另一實施例提供一種快速判斷影音檔案的壓縮格式的播放裝置。該播放裝置包含一暫存器、一接收器、一偵測器和一處理器。該暫存器具有一最大容量。該接收器是用以接收一影音檔案。該偵測器是用以偵測該影音檔案後是否存在一標籤部分。該處理器是用以設定該暫存器內一暫存區的容量,其中當該偵測器偵測到該標籤部分時,該處理器根據該標籤部分濾除不支援該標籤部分所屬種類的壓縮格式,並且略過該標籤部分設定讀取該影音檔案資料的一起點位置。
本發明提供一種快速判斷影音檔案的壓縮格式的方法及其相關
的裝置。該方法和該裝置是利用一偵測器偵測一影音檔案的標頭部份是否存在一標籤。當該偵測器偵測到該影音檔案內存在至少一標籤部分時,一處理器可略過所有標籤部分設定比對資料的讀取點,並根據影音檔案內所有標籤的種類,排除不支援這些標籤的壓縮格式,藉以快速判斷該影音檔案的壓縮格式。因此,相較於現有技術,該處理器在比對判斷壓縮格式時可略過影音檔案內的的所有標籤部分,並根據支援這些標籤種類的壓縮格式,排除不支援這些標籤種類的壓縮格式減少比對次數,所以本發明可減少比對的次數增加判斷壓縮格式的效率,改善現有技術的缺點。
請參照第1圖,第1圖為一影音檔案播放裝置100中判斷檔案格式的系統架構示意圖。播放裝置100包含一暫存器102、一接收器104、一偵測器106和一處理器108,其中暫存器102內的暫存區容量可變,並且暫存器102具有一最大容量(例如220個位元組)。如第1圖所示,接收器104是用以接收一影音檔案VAF。當接收器104接收影音檔案VAF後,偵測器106偵測影音檔案VAF的標頭部份是否存在一標籤部分(例如一ID3標籤、一APE標籤或其他標籤)。當偵測器106偵測到影音檔案VAF的標頭部份存在一標籤部份時,處理器108會略過影音檔案VAF的標籤部份讀取資料以判斷影音檔案的壓縮格式,並且根據該標籤部分的格式,濾除不支援該標籤部分的壓縮格式,以加快判斷影音檔案壓縮格式的處理。例如,當偵測器106偵測到影音檔案VAF的標頭部份存在ID3第二版(ID3v2)
標籤時,處理器108會略過ID3v2標籤讀取之後的資料,並且在判斷檔案格式時濾除不支援ID3v2標籤的格式,由於目前僅有OpenMG格式或動態影像專家壓縮標準音訊層面3(MPEG-1/MPEG-2 Audio Layer III,MP3)的壓縮格式支援ID3v2標籤,因此處理器會濾除其餘的壓縮格式而僅判斷影音檔案是否為OpenMG或MP3壓縮格式。除了ID3v2標籤之外,其他格式的標籤也可利用來濾除不支援的壓縮格式,達到快速判斷影音檔案壓縮格式的效果,像是若處理器讀取到APE格式的標籤,則可以排除MP3、WavPack或OptimFROG以外的壓縮格式。另外,在本發明的另一實施例中,處理器108可根據標籤部分的資訊,選出複數個可能的壓縮格式以待候選,處理器在判斷壓縮格式時會對這些候選壓縮格式評分,以根據分數高低決定影音檔案VAF的壓縮格式,這種方式可以避免在特定情況下影音檔案內放入不相容的標籤格式,導致處理器無法正確判斷壓縮格式。
請參照第2圖和第3圖,第2圖為影音檔案內包括ID3v2標籤的檔案架構示意圖,第3圖是為說明影音檔案內包括APE標籤的檔案架構示意圖。如第2圖所示,ID3v2標籤部分內含資訊、歌詞、圖片資訊或評論等影音檔案相關資料,處理器108無法利用這些資料判別影音檔案的壓縮格式。為在判別壓縮格式前略過標籤,當偵測器106偵測到影音檔案具有ID3v2標籤時,ID3v2標籤的第0、第1和第2位元組是用以標記“ID3”字元,由此可以辨識標籤的種類,而ID3v2標籤第6、第7、第8和第9位元組則代表整段ID3v2
標籤的長度,根據本發明的方法,偵測器106或處理器108在偵測到ID3v2標籤時,可根據這些位元所標示的長度來跳過整段標籤部分,讀取影音檔案內的實際資料。另外,如第3圖所示,APE標籤具有至少一頁腳(footer)和至少一標頭(header),其中頁腳和標頭的前8個位元組是用以標記“APETAGEX”,由此處理器在讀取到這些位元時可以辨識為APE種類的標籤,APE標籤的第12、第13、第14和第15位元組則是用以代表APE標籤中除了標頭之外所有標籤項目的長度,處理器108可根據這些位元所標示的長度來跳過APE標籤部分,讀取影音檔案內的實際資料。
如果偵測器106偵測到影音檔案VAF的標頭部份存在一標籤部份,則處理器108會根據標籤部分定義的長度略過標籤部份資料,並且濾除不支援該標籤種類的壓縮格式,之後暫存器102會被初始化並且設定暫存區為一起始預定值(例如211位元組)的大小,處理器108從標籤部分的末端開始讀取起始預定值大小的第一部份資料存入暫存器102。例如,如果影音檔案VAF僅具有ID3標籤且ID3標籤的大小是為2千個位元組(2K Bytes),則處理器108會根據暫存區的容量,從影音檔案VAF的標頭後省略過ID3標籤的2千個位元組的位置,再開始讀取影音檔案VAF的資料存入至暫存器102的暫存區,這些存入暫存區的資料為影音檔案VAF的第一部分。當處理器108根據暫存區起始預定值的大小,讀取影音檔案VAF的第一部分存入至暫存器102後,處理器108會根據先前偵測到的標籤種類,找出所有對應該標籤種類的候選壓縮格式,用以判斷影音檔案VAF
的第一部份是否符合某一種特定的候選壓縮格式,若偵測到影音檔案VAF內含不只一種標籤,則處理器108會挑選同時對應每一種標籤種類的候選壓縮格式進行判斷。例如,如果影音檔案VAF僅具有ID3v2標籤,因為目前只有oma壓縮格式和mp3壓縮格式可支援ID3v2標籤,所以處理器108可視其為候選壓縮格式,用以判斷影音檔案VAF內的資料是否符合其中的某一個壓縮格式(即判斷是否為oma和mp3中之一種),如果如果影音檔案VAF具有ID3v2與APE標籤時,由於目前可能同時支援這兩種標籤的壓縮格式為mp3,處理器108會優先判斷讀取的資料是否符合mp3壓縮格式。
當處理器108判斷影音檔案VAF的第一部份不符合任何一種候選壓縮格式,或是無法根據讀取的資料進行判斷時,處理器108會增加暫存區的容量以讀取更多影音檔案中的資料進行判斷。例如,當處理器108判斷具有ID3v2標籤的影音檔案VAF,不符合對應於ID3v2標籤的二候選壓縮格式時,處理器108倍增暫存區的容量(例如暫存區的容量從211位元組增加到212位元組),當倍增後的暫存區容量沒有大於暫存器102的最大容量(例如220位元組)時,處理器108根據倍增的暫存區的容量,讀取影音檔案VAF第一部份後的第二部分資料,存入至暫存器102的暫存區。當處理器108根據倍增的暫存區容量,讀取影音檔案VAF的第二部分至暫存器102後,處理器108即可再次根據對應標籤種類的候選壓縮格式,判斷影音檔案VAF的第一部份與第二部分是否符合其中的某一個壓縮格式。如此,重複上述步驟直到處理器108判斷出影音檔案VAF符合某一個
壓縮格式、已讀取整個影音檔案仍判斷不出為何種壓縮格式、或是暫存器102的容量不足為止。
另外,如果偵測器106沒有偵測到影音檔案VAF內存在標籤部分,則處理器108可根據一起始預定值(例如211位元組)設定暫存器102內的暫存區容量。然後,處理器108根據暫存區的容量從影音檔案VAF的標頭開始讀取第一部分的資料至暫存器102。當處理器108根據起始預定值,讀取影音檔案VAF的第一部分至暫存器102後,處理器108根據播放程式支援的壓縮格式,判斷影音檔案VAF是否符合其中的一壓縮格式。當處理器108判斷影音檔案VAF不符合目前支援的壓縮格式中的任何一種時,處理器108會增加暫存區的容量再讀取資料進行判斷。例如,當處理器108判斷影音檔案VAF不符合目前支援的壓縮格式時,處理器108倍增暫存區的容量(例如暫存區容量從211位元組增加為212位元組)。當倍增的暫存區容量沒有大於暫存器102的最大容量(例如220位元組)時,處理器108根據倍增的暫存區容量,讀取影音檔案VAF的第二部分至暫存器102,其中影音檔案VAF的第二部分是在影音檔案VAF的第一部分之後。當處理器108根據倍增的暫存區容量,讀取影音檔案VAF的第二部分至暫存器102後,處理器108即可再次根據目前存在的壓縮格式,判斷影音檔案VAF的第一部份與第二部分是否符合支援的壓縮格式中的一壓縮格式。如此,處理器108重複上述步驟直到處理器108判斷出影音檔案VAF符合某一個壓縮格式、已讀取整個影音檔案仍判斷不出為何種壓縮格式、或是暫存器102的容量不足為止。
另外,在本發明的另一實施例中,當影音檔案VAF僅具有APE標籤,或同時具有ID3標籤和APE標籤時,播放裝置100亦可利用上述方式快速判斷影音檔案VAF的壓縮格式,所以進一步的敘述在此不再贅述,其他種類的標籤種類與影音檔案壓縮格式亦可依本發明的方法進行快速判斷,而不限於前述說明。
請參照第1圖、第2圖、第3圖和第4圖,第4圖是為本發明的一實施例,為一種快速判斷影音檔案的壓縮格式方法的流程圖。第4圖的方法是利用第1圖的播放裝置100說明,詳細步驟如下:步驟400:開始;步驟402:接收器104接收一影音檔案VAF;步驟404:偵測器106偵測影音檔案VAF的標頭後是否存在一標籤部分;如果是,進行步驟406;如果否,進行步驟410;步驟406:處理器108略過標籤部分設定影音檔案VAF資料的讀取位置;步驟408:處理器108濾除不支援標籤種類的壓縮格式,跳回步驟404;步驟410:處理器108根據一起始預定值設定暫存器102內暫存區的容量;步驟412:處理器108根據暫存區的容量從影音檔案VAF讀取
影音檔案VAF的第一部分至暫存器102;步驟414:處理器108比對至少一候選壓縮格式中的一候選壓縮格式與影音檔案VAF的第一部分;步驟416:處理器108判斷影音檔案是否符合至少一候選壓縮格式中的一候選壓縮格式;如果否,進行步驟418;如果是,進行步驟424;步驟418:是否已經完成比對所有壓縮格式;如果否,進行步驟414;如果是,進行步驟420;步驟420:處理器108增加暫存區的容量;步驟422:暫存區的容量是否大於暫存器102的最大容量,或是影音檔案是否已讀取完畢;如果否,進行步驟412;如果是,進行步驟424;步驟424:結束。
在步驟404中,當接收器104接收影音檔案VAF後,偵測器106是用以偵測影音檔案VAF的標頭位置後是否存在至少一標籤部分(例如ID3標籤、APE標籤或其他標籤)。
以第2圖為例:在步驟406和步驟408中,當偵測器106偵測到影音檔案VAF的標頭位置之後存在至少一標籤部分時,處理器108會略過影音檔案VAF內的標籤部分設定資料讀取的位置,並且根據標籤的種類濾除不支援該標籤種類的壓縮格式。例如,當偵測器106偵測到影音
檔案VAF的標頭位置後存在ID3標籤時,處理器108會根據ID3標籤內的長度資訊略過整段ID3標籤,在ID3標籤結束的位置設定讀取資料的起點,並且濾除影像播放程式支援的所有壓縮格式中不支援ID3標籤的壓縮格式(例如處理器108會濾除oma壓縮格式和mp3壓縮格式以外的壓縮格式)。在步驟410中,如果偵測器106偵測到影音檔案VAF的標頭位置後存在一標籤部分,則在處理器108略過該標籤部分設定資料讀取起點及濾除不支援該標籤的壓縮格式後,處理器108根據一起始預定值(例如211位元組)設定暫存區容量。然後,在步驟412中,處理器108根據暫存區的容量從影音檔案VAF的標頭位置後的資料讀取起點開始,根據起始預定值讀取影音檔案VAF的第一部分至暫存器102。例如,如果影音檔案VAF僅具有ID3標籤且ID3標籤的大小是為2千個位元組,則處理器108在步驟410中會略過2千個位元組的ID3標籤,在標籤結束位置設定資料讀取的起點,並且在步驟412中根據暫存區容量從資料讀取起點,讀取影音檔案VAF的第一部分至暫存器102。在步驟414中,處理器108根據播放程式支援的所有壓縮格式做為候選壓縮格式,於候選壓縮格式中擇一與第一部分進行比對,若先前有判斷出影音檔案VAF內具有標籤部分,則根據步驟408濾除不支援標籤種類的壓縮格式後的候選壓縮格式,於其中擇一進行比對。在步驟416中,處理器108根據比對結果,判斷影音檔案VAF是否符合被比對的候選壓縮格式。例如,如果影音檔案VAF僅具有ID3標籤且目前只有oma壓縮格式和mp3壓縮格式可支援ID3標籤,則處理器108會根據對應於ID3標籤的二候選壓縮格式中的擇一與第一部分進行比對
(例如先選擇mp3壓縮格式進行比對),判斷影音檔案VAF的第一部份是否符合被比對的候選壓縮格式。在步驟418中,如果步驟416中判斷結果不符合被比對的候選壓縮格式,則判斷是否所有的候選壓縮格式都已經比對完畢,如果仍有候選壓縮格式未進行比對,則處理器108回到步驟416選擇尚未比對的候選壓縮格式進行比對,直到比對出符合的候選壓縮格式,或是所有的候選壓縮格式都已比對完畢為止。在步驟420中,當處理器108判斷影音檔案VAF的第一部份不符合所有的候選壓縮格式時,處理器108增加暫存區的容量。例如,當影音檔案具有ID3標籤,且處理器108比對完支援ID3標籤的二候選壓縮格式後,無法找到符合影音檔案VAF的第一部份的壓縮格式,則處理器108倍增暫存器102的容量(例如暫存區容量從211位元組增加為212位元組)。在步驟422中,判斷增加後的暫存區容量是否大於暫存器102的最大容量,若沒有超過暫存器102的最大容量,並且影音檔案VAF尚未被讀取完畢,則跳回步驟412並根據增加的暫存區容量,讀取影音檔案VAF的第二部分至暫存器102,其中影音檔案VAF的第二部分是在影音檔案VAF的第一部分之後。當處理器108根據增加的暫存區容量,讀取影音檔案VAF的第二部分至暫存器102後,處理器108即可重複上述步驟直到處理器108判斷出影音檔案VAF符合某一個壓縮格式、已讀取整個影音檔案仍判斷不出為何種壓縮格式、或是暫存器102的容量不足為止。
另外,在步驟410中,如果偵測器106沒有偵測到影音檔案VAF的標頭位置後存在任何標籤,則處理器108可根據起始預定值(例如
211位元組)設定暫存區的容量。在步驟412中,處理器108根據暫存區容量從影音檔案VAF的標頭尾端,開始讀取影音檔案VAF的第一部分至暫存器102。在步驟414和步驟416中,處理器108比對播放程式支援的壓縮格式做為候選壓縮格式,擇一和影音檔案VAF的第一部分進行比對,判斷影音檔案VAF是否符合被比對的候選壓縮格式。在步驟418中,如果步驟416中判斷結果不符合被比對的候選壓縮格式,則判斷是否所有的候選壓縮格式都已經比對完畢,如果仍有候選壓縮格式未進行比對,則處理器108回到步驟416選擇尚未比對的候選壓縮格式進行比對,直到比對出符合的候選壓縮格式,或是所有的候選壓縮格式都已比對完畢為止。在步驟420中,當處理器108判斷影音檔案VAF的第一部份不符合所有候選壓縮格式時,處理器108增加暫存區的容量。例如,當處理器108比對完所有的候選壓縮格式後,判斷影音檔案VAF的第一部份不符合所有候選壓縮格式,則處理器108倍增暫存區的容量(例如暫存區容量從211位元組增加為212位元組)。在步驟422中,當增加的暫存區容量沒有大於暫存器102的最大容量,並且影音檔案VAF尚未被讀取完畢時,處理器108跳回步驟412並根據增加的暫存區容量,讀取影音檔案VAF的第二部分至暫存器102。當處理器108根據增加的暫存區容量,讀取影音檔案VAF的第二部分至暫存器102後,處理器108即可重複上述步驟直到處理器108判斷出影音檔案VAF符合某一個壓縮格式、已讀取整個影音檔案仍判斷不出為何種壓縮格式、或是暫存器102的容量不足為止。
另外,在本發明的另一實施例中,當影音檔案VAF僅具有APE標籤,或同時具有ID3標籤和APE標籤時,播放裝置100亦可利用上述方式快速判斷影音檔案VAF的壓縮格式,所以進一步的敘述在此不再贅述,其他種類的標籤種類與影音檔案壓縮格式亦可依本發明的方法進行快速判斷,而不限於前述說明。
在本發明的一實施例中,處理器108可根據影音檔案VAF的每一個標籤部分的資訊,選出複數個候選壓縮格式,其中這些候選壓縮格式並不受限於播放程式所支援的壓縮格式,在比對出播放程式所不支援的壓縮格式時,可通知使用者更新播放程式以增加支援的壓縮格式,或是系統自行更新播放程式。另外,在本發明的一實施例中,處理器可將播放程式支援的壓縮格式都做為候選壓縮格式,而不僅限於支援影音檔案內具有的標籤種類的壓縮格式,意即在步驟408中不濾除不支援偵測到標籤種類的壓縮格式,然後,在步驟414至步驟418中,處理器108將影音檔案的第一部份與候選壓縮格式進行比對與評分,根據評分結果剔除分數低於一臨界值的候選壓縮格式,其中如果複數個候選壓縮格式的分數都低於臨界值,則處理器108會再次執行步驟414至步驟418,以再次對複數個候選壓縮格式評分。在步驟408中處理器也可以不濾除不支援偵測到標籤種類的壓縮格式,而在所有候選壓縮格式中將支援偵測到標籤種類的壓縮格式設定較優先的順序,於步驟414至步驟418中優先與影音檔案的第一部份進行比對與評分,若是分數高於一臨界值,則判斷影音檔案為被比對的壓縮格式。本發明中的影音播放裝置不限
於第一圖中的架構,其中偵測器106也可以為處理器108中的一部分,或是為處理器108根據程式碼所執行的功能,接收器104或暫存器102亦可與其他元件互相整合,而不受上述說明的限制。
綜上所述,本發明提供一種快速判斷影音檔案的壓縮格式的方法及其相關的裝置,利用偵測影音檔案的標頭部份後是否存在一標籤部分快速判斷影音檔案的壓縮格式。當偵測器偵測到影音檔案內存在至少一標籤部分時,處理器會略過所有標籤部分設定比對資料的讀取點,並且根據影音檔案內所有標籤的種類,排除不支援這些標籤的壓縮格式,藉以快速判斷影音檔案的壓縮格式。因此,相較於現有技術,處理器在比對判斷壓縮格式時可以略過影音檔案內的所有標籤部分,並根據支援這些標籤種類的壓縮格式,排除不支援這些標籤種類的壓縮格式減少比對次數,所以本發明可減少比對的次數增加判斷壓縮格式的效率,改善現有技術的缺點。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100‧‧‧裝置
102‧‧‧暫存器
104‧‧‧接收器
106‧‧‧偵測器
108‧‧‧處理器
VAF‧‧‧影音檔案
400-424‧‧‧步驟
第1圖是為本發明的一實施例說明一種快速判斷影音檔案的壓縮格式的裝置的示意圖。
第2圖是為說明影音檔案具有ID3標籤的示意圖。
第3圖是為說明影音檔案具有APE標籤的示意圖。
第4圖是為本發明的另一實施例說明一種快速判斷影音檔案的壓縮格式的方法的流程圖。
400-424‧‧‧步驟
Claims (8)
- 一種一播放裝置快速判斷影音檔案的壓縮格式的方法,其中該播放裝置包含一接收器、一偵測器、一暫存器和一處理器,該方法包含:該接收器接收一影音檔案;該偵測器偵測該影音檔案的一標頭(header)後是否存在一標籤部分;當該偵測器偵測到該標籤部分時,該處理器略過該標籤部分設定讀取該影音檔案資料的一起點位置;該處理器濾除不支援該標籤部分所屬種類的壓縮格式,從而產生複數個候選壓縮格式;及自該起點位置讀取一第一部份存入該暫存器,並將該第一部份及該複數個候選壓縮格式進行比對以判斷該影音檔案的壓縮格式。
- 如請求項1所述的方法,另包含:當該處理器濾除不支援該標籤部分所屬種類的壓縮格式後,該偵測器偵測該影音檔案的標頭後是否存在另一標籤。
- 如請求項1所述的方法,另包含:該處理器根據一起始預定值設定該暫存器內一暫存區的容量;該處理器根據該暫存區的容量讀取該影音檔案的該第一部分存入該暫存區; 當該處理器濾除不支援該標籤部分所屬種類的壓縮格式後,根據該第一部分判斷該影音檔案是否符合該對應該標籤部分所屬種類的至少一候選壓縮格式;當該影音檔案不符合該至少一候選壓縮格式時,該處理器增加該暫存區的容量;及當增加後的該暫存區容量沒有大於該暫存器的最大容量時,該處理器根據增加後的該暫存區容量,讀取該影音檔案的一第二部分至該暫存區,其中該影音檔案的該第二部分是在該影音檔案的第一部分之後。
- 如請求項3所述的方法,其中該根據該第一部分判斷該影音檔案是否符合該對應該標籤部分所屬種類的至少一候選壓縮格式包含:該處理器比對該至少一候選壓縮格式中的一候選壓縮格式與該影音檔案的第一部分;及當該候選壓縮格式與該影音檔案的第一部分不符合時,該處理器比對該至少一候選壓縮格式的另一候選壓縮格式與該影音檔案的第一部分。
- 一種一播放裝置快速判斷影音檔案的壓縮格式的方法,其中該播放裝置包含一接收器、一偵測器、一暫存器和一處理器,該方法包含:該接收器接收一影音檔案; 該偵測器偵測該影音檔案的一標頭後是否存在一標籤部分;當該偵測器沒有偵測到該標籤部分時,該處理器設定讀取該影音檔案資料的一起點位置;當該偵測器偵測到該標籤部分時,該處理器略過該標籤部分設定讀取該影音檔案資料的該起點位置;該處理器濾除不支援該標籤部分所屬種類的壓縮格式,從而產生複數個候選壓縮格式;該處理器根據一起始預定值設定該暫存器內一暫存區的容量;該處理器根據該暫存區的容量從該影音檔案的該起點位置讀取一第一部分至該暫存器;根據該第一部份及該複數個候選壓縮格式進行比對以判斷該影音檔案的壓縮格式;當該影音檔案不符合該標籤部份對應之至少一候選壓縮格式時,該處理器增加該暫存區的容量;當增加後的該暫存區容量沒有大於該暫存器的最大容量時,該處理器根據增加後的該暫存區容量,讀取該影音檔案的一第二部分至該暫存區,其中該影音檔案的該第二部分是在該影音檔案的第一部分之後;及根據該第一部份與該第二部分判斷該影音檔案的壓縮格式。
- 如請求項5所述的方法,其中該處理器根據該第一部份及該複數個候選壓縮格式進行比對以判斷該影音檔案的壓縮格式包含: 該處理器比對該複數個候選壓縮格式中的一候選壓縮格式與該影音檔案的該第一部分;及當該候選壓縮格式與該第一部分不符合時,該處理器比對該複數個候選壓縮格式的另一候選壓縮格式與該第一部分。
- 一種快速判斷影音檔案的壓縮格式的播放裝置,包含:一暫存器,其具有一最大容量;一接收器,用以接收一影音檔案;一偵測器,用以偵測該影音檔案的一標頭後是否存在一標籤部分;及一處理器,用以設定該暫存器內一暫存區的容量,其中當該偵測器偵測到該標籤部分時,該處理器根據該標籤部分濾除不支援該標籤部分所屬種類的壓縮格式,從而產生複數個候選壓縮格式,並且略過該標籤部分設定讀取該影音檔案資料的一起點位置;其中該處理器自該起點位置讀取一第一部份存入該暫存器,並根據該第一部份與該複數個候選壓縮格式進行比對以判斷該影音檔案的壓縮格式,當無法判斷出符合的壓縮格式時,該處理器增加該暫存區的容量,並且根據增加後的該暫存區容量,讀取該影音檔案的一第二部分至該暫存區,根據該第一部份與、第二部分與該複數個候選壓縮格式進行比對以判斷該影音檔案的壓縮格式。
- 如請求項7所述的播放裝置,其中該處理器判斷該影音檔案的壓縮格式時係根據該暫存區內的資料與至少一候選壓縮格式進行比對與評分,根據評分結果選出符合的一候選壓縮格式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW101147247A TWI521945B (zh) | 2012-12-13 | 2012-12-13 | 快速判斷影音檔案的壓縮格式的方法及其相關的播放裝置 |
US13/849,541 US20140169757A1 (en) | 2012-12-13 | 2013-03-24 | Method for quickly determining a compression format of an audio or video file and related playback device thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW101147247A TWI521945B (zh) | 2012-12-13 | 2012-12-13 | 快速判斷影音檔案的壓縮格式的方法及其相關的播放裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201424386A TW201424386A (zh) | 2014-06-16 |
TWI521945B true TWI521945B (zh) | 2016-02-11 |
Family
ID=50930988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101147247A TWI521945B (zh) | 2012-12-13 | 2012-12-13 | 快速判斷影音檔案的壓縮格式的方法及其相關的播放裝置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20140169757A1 (zh) |
TW (1) | TWI521945B (zh) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1315148A1 (en) * | 2001-11-17 | 2003-05-28 | Deutsche Thomson-Brandt Gmbh | Determination of the presence of ancillary data in an audio bitstream |
US20030158737A1 (en) * | 2002-02-15 | 2003-08-21 | Csicsatka Tibor George | Method and apparatus for incorporating additional audio information into audio data file identifying information |
-
2012
- 2012-12-13 TW TW101147247A patent/TWI521945B/zh active
-
2013
- 2013-03-24 US US13/849,541 patent/US20140169757A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20140169757A1 (en) | 2014-06-19 |
TW201424386A (zh) | 2014-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8792639B2 (en) | Extensible disc player | |
US20080077550A1 (en) | Electronic apparatus having data playback function, database creation method for the apparatus, and database creation program | |
JP2009500770A (ja) | Non−execute−in−placeフラッシュメモリ内の持続性ファイルにアクセスするための装置、システムおよび方法 | |
US11750784B2 (en) | Automatic video file repair method and system | |
EP2399256A2 (en) | Recognizing a disc | |
US7657562B2 (en) | Data processing apparatus and data processing method | |
US8044290B2 (en) | Method and apparatus for reproducing first part of music data having plurality of repeated parts | |
TWI521945B (zh) | 快速判斷影音檔案的壓縮格式的方法及其相關的播放裝置 | |
CN102014214A (zh) | 一种手持终端开关机及其存储卡识别方法 | |
US10705738B2 (en) | Method, apparatus, storage medium, and terminal for optimizing memory card performance | |
US8583862B2 (en) | Recording medium, drive device, and mounting method | |
CN110310673B (zh) | 一种音乐播放器及音乐播放方法 | |
JP6407417B2 (ja) | コンテンツ再生装置及びコンテンツ再生装置の制御方法 | |
JP2010283707A (ja) | 車載用電子装置および車載用電子装置の画像更新システム | |
JP2007094195A (ja) | ID3v2タグの読み出し方法 | |
JP4812109B2 (ja) | コンテンツデータ再生装置、コンテンツリスト作成方法及びコンテンツリスト検索方法 | |
KR101070748B1 (ko) | 휴대형 재생장치의 파일정보 제공방법 | |
US20120130518A1 (en) | Music data reproduction apparatus | |
CN103871440A (zh) | 快速判断影音档案的压缩格式的方法及其相关的播放装置 | |
JP4953304B2 (ja) | コンテンツデータ再生装置、コンテンツリスト作成方法及びコンテンツデータ検索方法 | |
JP5083074B2 (ja) | コンテンツ処理装置、方法及びプログラム | |
JP2006065505A (ja) | メモリーカード及び再生装置 | |
JPWO2007080675A1 (ja) | 追記型ファイル対応ディスク再生装置および追記型ファイル対応ディスク再生方法 | |
JP2020028094A (ja) | 文字列情報蓄積装置 | |
JP2008191814A (ja) | コンテンツデータ再生装置、コンテンツリスト作成方法及びコンテンツリスト検索方法 |