專利名稱:編輯影音檔案的方法及系統的制作方法
技術領域:
本發明涉及一種編輯影音檔案的方法的系統,特別是指一種能有效避免重復編輯時的流錯誤(Stream error)累積與擴散的編輯影音檔案的方法及系統。
背景技術:
MPEG(運動圖像專家組)是國際標準組織(International StandardsOrganization,簡稱ISO)專為壓縮數字視頻(video)與音頻(audio)所制定的系統。當比特流(bit streams)被編碼時,此系統要求編碼時所需遵守的最少規則,以使接收者能清楚地譯碼其接收的經編碼比特流。一個比特流大致包含一個視頻組件、一個音頻組件與一個系統組件。此系統組件定義單一比特流內的各視頻與音頻組件如何組合與同步的信息。因此,MPEG標準定義了用于壓縮編碼視頻與音頻比特流的系統。
然而,當一個復制影音區段(audiovisual segment)與另一個復制影音區段連結時,其音頻難以同步。依據MPEG音頻層的類型(type),各音頻圖框在尺寸上可能有所變動。因此,同步問題部分是因為音頻圖框與視頻圖框間鮮有一對一的對應關系所引起的。所以,當從一個檔案中辨識出一個視頻圖框區段以進行復制時,則與此辨識視頻圖框對應的音頻圖框數量將不是預定的數值。
因此,當一個視頻區段從一個檔案中被復制并且連結至另一個復制區段時,此復制區段的音頻組件可能不再與對應視頻圖框同步。一旦視頻與音頻圖框不再同步,代表視頻與音頻圖框同步誤差的錯誤會被引入最后生成的比特流中,此錯誤可以用音頻圖框的數量或百分比來表示。舉例來說,從兩個比特流區段連結而被引入的同步錯誤可能小至一個音頻圖框的幾分之一或大至幾個音頻圖框。
雖然與僅連結兩個比特流區段相關的錯誤在特定情況下僅是數個音頻圖框,但當多數個比特流區段在一個更復雜的編輯工作中被連結時,各連結區段之錯誤會被累積。所以,生成的錯誤可能非常巨大,及生成音頻圖框可能嚴重不同步或無法播放。再者,不同步音頻與視頻比特流一般在這些區段連結位置所產生的音頻會不連續,例如,產生爆音(popping)。因此,如果不連續的音頻被引入連結的比特流區段中,則會引入令人不舒服爆音會。這樣,不僅導致生成的音頻比特流不同步,其播放結果也是令人難以容忍。
因此,美國專利第6,262,777號揭露一種常用的同步化編輯影音檔案的方法。在連續復制操作后無論被連結的區段數量多少,此方法能預防比特流錯誤超過半個音頻圖框,使視頻圖框實際上與音頻圖框同步。
參看圖1(對應美國專利第6,262,777號的圖13)來說明常規方法在多數個音頻與視頻區段被連結時的標記處理流程,以確保超過半個音頻圖框錯誤不會被產生。一般將各影音區段的起始音頻圖框706、710、714、718稱為開始標記(tab-in)音頻圖框,結束音頻圖框708、712、716、720稱為結束標記(tab-out)音頻圖框(如圖2)。標記處理是在每個開始標記tab-in與結束標記tab-out音頻圖框被執行的,在符合特定條件時,開始標記tab-in與結束標記tab-out的音頻圖框可能被拋棄或保留。在下文中將開始標記音頻圖框與結束標記圖框簡稱為標記。為了方便說明,結合圖2與圖3(對應美國專利第6,262,777號的圖14、圖15)之一的范例來說明圖1的標記處理流程。圖2的范例中是預備將4個區段SEGMENT A、SEGMENT B、SEGMENT C、SEGMENT D連結在一起。
首先,在步驟602中,在處理標記706前判定所存在的現有流錯誤(existing stream error)。如圖2所示,區段SEGMENT A是第一個區段,而無先前標記來引入一現有流錯誤,因此現有流錯誤是0。一旦在步驟602中判斷現有流錯誤為0時,繼續執行步驟604,以判斷標記706的標記錯誤(tab error)。如圖3,假設標記706之標記錯誤為0.2(指一音頻圖框的20%)。
其次,在步驟606,判斷現有流錯誤與標記錯誤相加(在此稱之為累積錯誤)后是否大于半個圖框(如0.5)。若步驟606中判斷為是時,執行步驟610,以拋棄前述步驟604處理的標記。反之,若步驟606判斷為否時,執行步驟610,以保留前述步驟604處理的標記。步驟608與步驟610結束后執行步驟612。在步驟606中,由于標記706的累積錯誤為0.2小于0.5,因此執行步驟608,以保留標記706。
然后,在步驟612中,判斷是否有其它標記。若步驟612判斷為有,返回步驟603。若步驟612判斷為無,結束標記處理流程。在本例中,前述步驟僅處理標記706,因此步驟612會判斷為有而返回步驟602。
在步驟602中判定標記708的現有流錯誤為0.2,而在步驟604中判定標記708之標記錯誤0.5,其后在步驟606會因為標記708的累積錯誤為0.7而轉至步驟610,拋棄標記708。在標記708被拋棄后,新流錯誤變成-0.3(0.7-1=-0.3)。而后重復執行步驟602至612,以繼續處理標記710、712、714、716、718與720,直至所有標記都被處理過為止。經標記處理后,可將所有區段SEGMENT A、SEGMENT B、SEGMENT C、SEGMENTD連結在一起。
該常規方法中利用前述標記處理流程,使現有流錯誤不超過0.5音頻圖框,如此在復制操作時不論被連結的數量有多少,皆可讓視頻圖框實際上與音頻圖框同步。然而,雖然常規方法能有效預防影音區段單次編輯時錯誤累積,倘若重復編輯這些經編輯的影音區段仍難以避免累積流錯誤的成長與擴散。
舉例來說,將如圖4的原始影音區段s連結至另一影音區段X。按照常規方法,為避免累積流錯誤成長,將音頻圖框a拋棄,并假設現在存在的流錯誤為-0.5音頻圖框。因此,如圖5所示,將經標記處理之影音區段s連結至影音區段X,所有音頻圖框會自b開始左移0.5個音頻圖框,以形成一新影音區段s’。
其次,開始第二次編輯,將自影音區段s’截取一從視頻圖框2開始的影音區段以連結至另一影音區段Y。自影音區段s’截取的影音區段經標記處理時,音頻圖框d會被拋棄,并設定現在存在的流錯誤為-0.5音頻圖框。如圖6所示,將截取影音區段連結至影音區段Y時,所有音頻圖框會自音頻圖框e開始左移0.5個音頻圖框,以形成一新影音區段s”。因此,重復編輯后的影音區段的錯誤變成一個音頻圖框,|-0.5-0.5|=1。
緊接著,再次編輯,以自影音區段s”中截取一自視頻圖框3開始的影音區段,以連結至另一影音區段Z。當自影音區段S”中截取的影音區段經標記處理時,會將音頻圖框g拋棄并假設現在的流錯誤為-0.5。如圖7所示,將經標記處理之影音區段連結至影音區段Z時,所有的音頻圖框會自音頻圖框h開始左移0.5個影音圖框,以形成一新影音區段s。因此,經三次編輯所累積流錯誤為1.5,|-0.5-0.5-0.5|=1.5。
如果執行第四次編輯,自影音區段s中截取一自視頻圖框4開始的影音區段,而經標記處理時,音頻圖框j會被拋棄與設定現在的流錯誤為-0.5。如圖8,將經處理的影音區段連結至另一影音區段V時,整體音頻圖框自5開始左移0.5個影音圖框,以形成一新影音區段s””。如此,經四次編輯所累積的流錯誤增加為2,|-0.5-0.5-0.5-0.5|=2。例如,未經編輯的影音區段s的視頻圖框5下方的音頻圖框為3個音頻圖框5,然而,在經過四次編輯后,影音檔案s””的3個音頻圖框5中的2個已左移至視頻圖框4的下方。
依據前述可知,常規方法在重復編輯時仍難以抑制流錯誤的成長與擴散,導致重復編輯的比特流中的音頻組件可能不再與適當視頻組件同步。
發明內容
鑒于現有技術在重復編輯時無法避免流錯誤累積,因此本申請的發明人考慮到如果能紀錄連結時的音頻圖框位移量,而在重復編輯時,先依據紀錄的音頻圖框位移量將音頻圖框回復成先前未連結時的位置,再進行標記處理與連結,則可避免重復編輯時的流錯誤累積。
因此,本發明的目的是提供一種有效避免重復編輯時的流錯誤累積與擴散的影音檔案編輯的方法及系統。
根據本發明的編輯影音檔案的方法,依照復制任務處理輸入比特流,該輸入比特流具有多個視頻圖框與多個音頻圖框,該方法包含以下步驟A)依照該復制任務以自該多個視頻圖框中識別出開始記號視頻圖框與結束記號視頻圖框;B)當判斷出與該輸入比特流對應的同步錯誤表存在時,依照該同步錯誤表來校正該等視頻圖框與該等音頻圖框間的位置關系,該同步錯誤表紀錄該多個音頻圖框的流錯誤;C)從該多個音頻圖框中識別出與該開始記號視頻圖框相關的開始標記音頻圖框及與該結束記號視頻圖框相關的結束標記音頻圖框;及D)從該輸入比特流復制一個影音區段,該影音區段含有在該開始記號視頻圖框與該結束記號視頻圖框間的多個視頻圖框以及在該開始標記音頻圖框及該結束標記音頻圖框間的多個音頻圖框。
本發明的功效能利用同步錯誤表來校正視頻與音頻圖框間位置關系,再進行標記處理與連結,以達到有效避免重復編輯時的流錯誤累積與擴散之功效。
圖1是美國專利第6,262,777號中的標記處理的流程圖;圖2是根據美國專利第6,262,777號的方法將多個影音區段連結在一起的一個范例的示意圖;圖3是顯示圖2中的多個標記處理的計算結果的表;圖4至圖8是根據美國專利第6,262,777號的方法重復編輯影音區段時的影音區段的示意圖;圖9是根據本發明的編輯影音檔案的系統的優選實施例的示意圖;圖10是根據本發明的一個比特流的示意圖;圖11是根據本發明的編輯影音檔案的方法的優選實施例的流程圖;圖12是圖11中的復制操作的流程圖;圖13是圖10的比特流按照圖12來切割的比特流之一的示意圖;圖14是依據圖12中的復制操作的影音區段的復制示意圖;圖15是圖11中的標記處理的流程圖;圖16是在本實施例的標記處理中將數個影音區段連結在一起的示意圖;及圖17至22是依據本發明重復編輯影音區段的示意圖。
具體實施例方式
通過以下結合參考附圖的優選實施例的詳細說明中,可以清楚地理解本發明的上述及其它技術內容、特點與功能。
如圖9所示,本發明中用以編輯影音檔案的系統主要具有用于執行影音檔案編輯的編輯引擎11與一個諸如硬盤之類的存儲媒體12。編輯引擎11用以編輯一個或多個輸入比特流。為便于說明,本例中編輯引擎11以編輯兩個輸入比特流A.MPEG、B.MPEG為例來說明。本領域技術人員應該理解,編輯引擎11也可編輯一個或更多個輸入比特流,并不限于本實施例所揭露的內容。如圖10所示,通常,比特流13具有視頻比特流131和音頻比特流132。視頻比特流131具有多個視頻圖框,各視頻圖框具有專屬序號。音頻比特流132具有多個音頻圖框。存儲媒體12存儲編輯表121,此編輯表121內記載多個由操作者輸入的復制任務。各復制任務內容含有指定的輸入比特流、開始序號與結束序號,如COPY 10…25A.MPEG。存儲媒體12用以供編輯引擎11存取資料。
其次,先結合圖11來簡要說明本實施例中的編輯引擎11的操作。首先要說明的是,本實施例中的編輯影音檔案系統是一個開放系統,而自外界接收前述輸入比特流,并將編輯完成的輸出比特流輸出至外界。因此,在步驟21中,編輯引擎11接收由操作者輸入的編輯表121,而將編輯表121暫存于存儲媒體12中。其次,在步驟22中,編輯引擎11產生一全新的同步錯誤表122,以供后續處理使用。而后,在步驟23中,編輯引擎11依序執行編輯表121中的每一個復制任務,以分別對應產生一個諸如一個對象(object)的復制操作111,來決定復制的音頻圖框數量,指示含有開始標記tab-in與結束標記tab-out的音頻圖框數量,以產生一影音區段,進而形成輸出比特流。當影音區段輸出時,需要使影音區段中的第一個音頻圖框(指開始標記tab-in音頻圖框)對齊第一個視頻圖框(指開始記號MARK-IN視頻圖框),則需要執行標記處理并更新同步錯誤表122。最后,執行步驟24,將同步錯誤表122插入到輸出比特流中。在本實施例中,同步錯誤表122用以記載經標記處理后的音頻圖框的流錯誤。
因此,編輯引擎11所產生的復制操作111執行的工作大致包含復制與標記處理。在下文中,先結合圖12來詳細來說明步驟23中的復制操作的工作流程。
首先在步驟31中,復制操作111分別依照復制任務中指定開始序號與結束序號來從視頻比特流131中選定一開始記號MARK-IN位置與結束記號MARK-OUT位置,以識別一開始記號視頻圖框與一結束記號視頻圖框,進而決定將被復制的視頻圖框數量(指位于開始記號MARK-IN與結束記號MARK-OUT間的視頻圖框)。舉例來說,如圖10所示,如果指定開始序號為10和結束序號為25時,開始記號MARK-IN位置為視頻圖框10與結束記號MARK-OUT位置為視頻圖框25。因而視頻圖框10為開始記號視頻圖框與視頻圖框25為結束記號視頻圖框,將被復制的區段包含視頻圖框10至視頻圖框25。當然,將被復制影音區段也將包含與視頻圖框相關的音頻圖框,這些音頻圖框橫置在相關視頻圖框下。
為了避免經編輯過的流錯誤累積,因此在本實施例中,當影音圖框經編輯后會利用同步錯誤表122來紀錄流錯誤并將此同步錯誤表122插入比特流中的適當位置(如前述步驟24),諸如比特流中的系統組件中或影音區段的表頭之類的位置,如PES_header中PES_private_date。
因此,在步驟32中,會先判斷一同步錯誤表是否存在于輸入比特流中。如果步驟32判斷為有,則意味著此輸入比特流先前曾被編輯過,如輸入比特流A.MPEG,而音頻比特流132與視頻比特流131之間會有流錯誤,因此先執行步驟33。倘若步驟32判斷為無,意味著此輸入比特流先前未經過編輯,如輸入比特流B.MPEG,則徑自執行步驟36。
在步驟33中,復制操作111先加載存在于輸入比特流中的同步錯誤表,此同步錯誤表不同于先前步驟22產生的同步錯誤表122。本例中的同步錯誤表會記載先前編輯時位移的音頻圖框的序號與其位移后的流錯誤。本例中為了降低同步錯誤表中記載的音頻圖框數量,因此僅記載為標記音頻圖框的音頻圖框,因為一個被選定編輯的音頻區段是自標記音頻圖框開始整體音頻區段位移,如此整個音頻區段內的各音頻圖框的位移量會一致,因而僅需記載標記音頻圖框即可。
再者,若同步錯誤表存在,則意味著此影音比特流13已經被編輯,而可能是由多個影音區段連結而成,使同步錯誤表記載多筆音頻圖框及對應的流錯誤。為確保能正確地校正輸入比特流中視頻與音頻圖框的位置關系,因此在步驟34中,依照同步錯誤表記載的音頻圖框的序號來分隔視頻比特流131成數個子影音區段,將影音比特流13在同步錯誤表記載的音頻圖框位置執行切割。在切割時,令位于被記載的音頻圖框上方的視頻圖框與前一個視頻圖框分離,以形成子影音區段。如果音頻圖框上方有二個視頻圖框,則令這兩個視頻圖框分離。同時在切割時,復制操作111依據被切割開的兩相鄰視頻圖框來分別選擇一個相關的校正標記音頻圖框。
被切割開的兩相鄰視頻圖框是指位于記載在同步錯誤表內的音頻圖框上方的視頻圖框與此視頻圖框的前一個視頻圖框或者位于被記載的音頻圖框上方的兩個視頻圖框。同樣,由于音頻區段的長度最好超過或等于視頻區段的長度。如果是位于較早時間的視頻圖框,則被選擇的音頻圖框的結束時間必須等于或晚于較早時間的視頻圖框的結束時間。如果是位于較晚時間的視頻圖框,被選擇的音頻圖框的開始時間必須等于或早于較晚時間的視頻圖框的開始時間。當然,為了達到這個需求,則位于切割位置下方的音頻圖框則可能被重制,以使兩視頻圖框皆具有此音頻圖框。
然后,在步驟35中,分別依照各音頻圖框對應的流錯誤來分別校正各子影音區段中視頻與音頻圖框間的位置關系。步驟35結束后,還執行步驟36。
舉例來說,如果在步驟33中,加載的輸入比特流的同步錯誤表如下面的表1,則在步驟34中,如圖13所示,由于位于音頻圖框134上方是視頻圖框9及位于音頻圖框135上方是視頻圖框19、20,復制操作111會將影音比特流13自視頻圖框8與9及視頻圖框19與20間執行切割,以形成三個子影音區段136、137、138。為了讓區段中音頻區段長度不小于視頻區段長度,子影音區段136中開始位置的作為校正標記音頻圖框的音頻圖框是在音頻圖框134前的音頻圖框139;子影音區段136中結束位置中的音頻圖框是重制的音頻圖框135;子影音區段138中開始位置的音頻圖框也是音頻圖框135。如此,于此范例中,音頻圖框135被重制。
其次,在步驟35中,分別依各音頻圖框134、135對應的流錯誤來校正各子影音區段137、138中視頻與音頻圖框間的位置關系。具體地說,第一個子影音區段136并無對應的錯誤信息因而保持其視頻與音頻圖框間的關系;第二個子影音區段137中音頻比特流的第一個音頻圖框134的流錯誤為0.3音頻圖框,因此使子影音區段137中的音頻比特流整體左移0.3音頻圖框,以消除先前編輯時對此影音片段137造成的流錯誤;至于第三子影音區段138中音頻圖框135的流錯誤為-0.2音頻圖框,因而使子影音區段138中音頻比特流整體右移0.2音頻圖框,以校正視頻與音頻圖框間的位置關系。如此,在步驟33至35中藉由輸入比特流中的同步錯誤表中的流錯誤信息來校正視頻圖框與音頻圖框間的位置關系,將音頻圖框恢復成先前未經過編輯的位置。
然后,在步驟36中,依據開始記號視頻圖框與結束位置視頻圖框來選擇一開始標記(tab-in)音頻圖框與一結束標記(tab-out)音頻圖框,以決定將復制的音頻區段的大小。由于復制音頻區段的長度最好超過或等于復制視頻區段之長度,如圖14所示,作為起始音頻圖框143的開始標記音頻圖框的開始時間最好等于或早于開始記號視頻圖框10的開始時間141,與作為結束音頻圖框144的結束標記音頻圖框的開始時間最好等于或更早于結束記號圖框25的結束時間142。簡而言之,如果一個音頻圖框不能對齊開始記號視頻圖框10的開始時間141時或結束記號視頻圖框25的結束時間142時,則開始標記音頻圖框143相比于開始記號視頻圖框10的開始時間141具有一較早開始時間,以及結束標記音頻圖框144相比于結束記號視頻圖框25的結束時間142具有一較早的開始時間。
最后,在步驟37中,將含有選定的影音區段(指含選定視頻圖框10-25與音頻圖框143-144)經標記處理(容后詳述)后輸出至輸出比特流。當該復制操作111執行完步驟37時,則復制操作111不復存在。如此,利用存在輸入比特流的同步錯誤表以先校正視頻與音頻圖框間的位置關系,預先消除先前的編輯產生的流錯誤,以達到有效避免流錯誤因重復編輯而累積的功效。
應注意的是,雖然本實施例中,同步錯誤表的存在與否的判斷與對應的位置校正處理(如步驟32至35)是在將被復制的視頻圖框區段選定(如步驟31)后開始執行的,然而本領域技術人員應該知道,也可以先執行同步錯誤表的存在與否判斷與對應的位置校正處理再執行選擇復制的視頻圖框區段。另外,步驟34的選擇校正標記音頻圖框的操作,也可以在步驟36中與選擇音頻圖框時一并執行,并不受限于本實施例所揭示的情況。
而后,編輯引擎11可依據編輯表121的下一個復制任務,再產生一個新的復制操作111,以執行下一個復制任務。
再者,當復制操作111執行復制任務時,則會在復制的影音區段輸出后結束,以由編輯引擎11繼續產生的復制操作111來執行下一個復制任務,如果接下來的復制任務的影音區段需與先前復制任務的影音區段連結時,則接下來復制操作產生的影音區段進行標記處理時會考慮先前影音區段的流錯誤來進行標記處理。因而,在下文中,結合圖15與圖16的范例來說明前述復制操作中步驟37提及的標記處理,本實施例中的標記處理。圖16的范例中假設有四子影音區段15、16、17、18,其中子影音區段15、16屬于因第一次復制操作的復制影音區段,子影音區段17、18也同屬于第二次復制操作的復制影音區段,子影音區段15、17皆在音頻區段開始與結束處分別具有一開始標記音頻圖框(以下簡稱標記)151、171和一校正標記音頻圖框(以下簡稱標記)152、172,子影音區段16、18中的音頻區段也皆在其開始與結束處分別具有一校正標記音頻圖框161、181和一結束標記音頻圖框162、182(以下簡稱標記)。
首先,在步驟41中,先判定目前標記151的現有流錯誤(existing streamerror)。如圖15所示,目前標記音頻圖框151屬于第一個區段15,而無先前標記來引入現有流錯誤,因此現有流錯誤是0。
其次,在步驟42中,判定標記151的標記錯誤(tab error)。在本范例中,假設標記151的標記錯誤為0.3。
其次,在步驟43,判斷現有流錯誤與標記錯誤相加(在此稱累積錯誤)后是否大于半個圖框(如0.5)。如果在步驟43的判斷結果為是,則執行步驟45,以拋棄在前述步驟42處理的標記151。反之,如果在步驟43的判斷結果為否,則執行步驟44,以保留前述步驟42處理的標記151。依據本范例,在步驟43中,由于標記151的累積錯誤為0.3,小于0.5,因此執行步驟44,以保留標記151。另外,將此標記151的累積錯誤又稱為新流錯誤。步驟44與步驟44完成后,執行步驟46。
在步驟46中,將標記151的新流錯誤記載于前述步驟22中產生的同步錯誤表122中,以更新同步錯誤表122。在本范例中,如下面的表2所給出的,將記載標記151的新流錯誤記載在同步錯誤表122中。另外,由于連結時,位于同一影音區段位于開始與結束位置的兩標記的位移(指流錯誤)會相同,因此僅需紀錄兩個標記中的至少一個即可回復音頻區段與視頻區段間的位置關系。在本實施例中,選擇紀錄位于開始的標記151的流錯誤在同步錯誤表122中。每筆記錄流錯誤約占4~6字節(bytes)。
其次,在步驟47中,判斷是否有其它標記。如果步驟47的判斷結果為有,則返回步驟41。如果步驟47的判斷結果為無,則結束標記處理流程。在本范例中,前述步驟僅處理標記151,因此,步驟47會判斷為有而返回步驟41。
在步驟41中判定標記152的現有流錯誤為0.3,而在步驟42中判定標記152的標記錯誤0.5,其后在步驟會因為標記152的累積錯誤為0.8而跳至步驟45,拋棄標記152。在標記152被拋棄后,新流錯誤變成-0.2(0.8-1=-0.2)。
其次,在步驟47中,由于標記152是在區段結束位置的標記,因此不更新同步錯誤表122,繼續執行步驟47,以繼續判斷下一個標記161。而后,重復執行步驟41至47,直至處理完所有標記為止。另外,在處理第二個區段16的標記161時,在步驟41中標記161的現有流錯誤為-0.2,而設定于步驟42中判定標記161的標記錯誤為0.3,因標記161的累積錯誤為0.1,標記161會保留,且在步驟46中會記錄標記161的累積錯誤(指新流錯誤)0.1在同步錯誤表122中(如上表2);同樣地,第三、四個區段17、18中在開始位置的標記171、181也會記載在同步錯誤表122中。
最后,在完成標記處理后,可將所有子影音區段15、16、17、18連結在一起。如此,在標記處理時,同步更新同步錯誤表122,以使各子影音區段15、16、17、18中音頻圖框在連結時的位移量(指流錯誤)記錄在同步錯誤表122中,而后當編輯引擎11將處理后的要求比特流(如已連結之子影音區段15、16、17、18)輸出時,更會將同步錯誤表122插入輸出比特流中(如圖11中步驟24),使此比特流再次編輯時,可先以同步錯誤表122中的錯誤流信息來校正音頻與視頻圖框間的關系再進行編輯工作,以有效避免流錯誤累積與擴散。
應注意的是,復制操作111處理完因應復制任務產生的影音區段時即會將其輸出至輸出比特流。就前述圖16的范例而言,子影音區段15、16經標記處理后即會輸出至輸出比特流,而子影音區段17、18在下一次復制操作中經標記處理后才輸出至輸出比特流。
以下舉例說明本實施例如何可防止流錯誤累積。首先,將如圖17的原始影音區段19連結至另一影音區段X。為避免累積流錯誤增長,將音頻圖框a拋棄,并假設現在存在的流錯誤為-0.5音頻圖框。因此,如圖18所示,將經標記處理的影音區段19連結至影音區段X,所有音頻圖框會自b開始左移0.5個音頻圖框,以形成一新影音區段19’。同時,會將音頻圖框b的位移量(指流錯誤)-0.5記載在同步錯誤表122中,如b-0.5,而在含有影音區段19’之比特流輸出前,編輯引擎11會將同步錯誤表122插入此比特流中。
其次,開始第二次編輯,將自影音區段s’截取一從視頻圖框2開始的影音區段以連結至另一影音區段Y。在決定影音區段s’中的復制區段時,如圖19,會先加載存在于比特流中的同步錯誤表,以利用流錯誤信息來校正音頻與視頻間的位置關系,再選擇截取的影音區段。而后,將截取影音區段經標記處理時,音頻圖框c會被拋棄,并設定現在存在的流錯誤為0.4音頻圖框,如圖20所示,將截取影音區段連結至影音區段Y時,所有音頻圖框會從音頻圖框d開始右移0.4個音頻圖框,以形成一新影音區段19”,并紀錄音頻圖框d的流錯誤于同步錯誤表122中并將同步錯誤表122插入含有影音區段19”的比特流中,以連同影音區段19”一起輸出。在此,有別于常規的流錯誤的累積,本例中由于流錯誤信息保留于比特流中與校正中的位置校正動作,使得經兩次編輯的流錯誤僅為第二次編輯之流錯誤并非兩次編輯所累計流錯誤。
同樣地,若再進行第三次編輯,以自影音區段19”中截取一自視頻圖框3開始的影音區段,以連結至另一影音區段Z。同樣的,當自影音區段17”中截取的影音區段,如圖21所示,會先將利用同步錯誤表校正音頻與視頻圖框間的位置關系,而后在進行標記處理時,會保留音頻圖框f并假設現在的流錯誤為0.4。如圖22所示,將經過標記處理的影音區段連結至影音區段Z時,所有的音頻圖框會自音頻圖框f開始右移0.4個影音圖框,以形成一新影音區段19,并記錄音頻圖框f的流錯誤于同步錯誤表122中,及于輸出新影音區段19時將同步錯誤表122一起輸出。因此,經三次編輯的影音區段19的流錯誤僅為0.4而不會累積。
應注意的是,雖然前述實施例中編輯影音檔案系統為一開放系統而令同步錯誤表位于比特流中,以便于與外界溝通;然而,本領域技術人員應該知道,如果編輯影音檔案系統為一封閉系統時,則同步錯誤表可存儲于存儲媒體12中,而當影音檔案編輯時,僅需加載存儲媒體12中同步錯誤表122來校正視頻與音頻圖框間的位置關系,標記處理時亦可直接更新于存儲媒體12內的同步錯誤表122,使得與前述實施例不同,在封閉影音檔案編輯系統中,同步錯誤表122并無插入比特流中的必要。
綜前所述,本發明中將利用同步錯誤表122來記載流錯誤信息,以便在其再次編輯時,可利用流錯誤信息先行校正音頻與視頻圖框間的位置關系再進行編輯,且編輯后亦會將新流錯誤信息紀錄于新產生的同步錯誤表,以將紀錄有新流錯誤信息的同步錯誤表插入經編輯的輸出比特流或存儲于存儲媒體12中,以達到有效避免流錯誤因重復編輯而累積及擴散的功效。
以上所描述的僅為本發明的優選實施例,而不是以此限定本發明的實施范圍,在本申請范圍及發明說明書內容所作的簡單的等效變化與修飾,皆應仍屬本發明專利涵蓋的范圍內。
附圖標號說明11編輯引擎111復制操作
A.MPEG、B.MPEG輸入比特流12儲存媒體121編輯表122同步錯誤表123影音區段13比特流131影像比特流132音頻比特流136、137、138、15、16、17、18子影音區段10、25、19、20影像圖框141視頻圖框10的開始時間142視頻圖框25的結束時間134、135、139、143、145、144、146音頻圖框Mark-In開始記號Mark-Out結束記號21~24、31~37、41~47步驟19、19’、19”、19影音區段151、152、161、162、171、172、181、182標記
權利要求
1.一種編輯影音檔案的方法,用以依照復制任務來處理輸入比特流,該輸入比特流具有多個視頻圖框與多個音頻圖框,該方法包含以下步驟A)依照該復制任務以從該多個視頻圖框中識別出一個開始記號視頻圖框和一個結束記號視頻圖框;B)當判斷出與該輸入比特流對應的同步錯誤表存在時,依照該同步錯誤表來校正該等視頻圖框與該等音頻圖框間的位置關系,該同步錯誤表紀錄該等音頻圖框之流錯誤;C)從該多個音頻圖框中識別出與該開始記號視頻圖框相關的開始標記音頻圖框及與該結束記號視頻圖框相關的結束標記音頻圖框;和D)從該輸入比特流復制一影音區段,該影音區段含有在該開始記號視頻圖框與該結束記號視頻圖框間的多個視頻圖框以及在該開始標記音頻圖框與該結束標記音頻圖框之間的多個音頻圖框。
2.根據權利要求1所述的方法,其中,在所述步驟B)中,該同步錯誤表中記載該多個音頻圖框中的至少一各音頻圖框的流錯誤。
3.根據權利要求1或2所述的方法,其中,在所述步驟B)中,依據該同步錯誤表中的流錯誤來位移該多個音頻圖框,以校正該多個視頻圖框與該多個音頻圖框之間的位置關系。
4.根據權利要求2所述的方法,其中,在所述步驟B)中,若該同步錯誤表存在時,對應記載在該同步錯誤表中的該至少一個音頻圖框的位置將該輸入比特流切割成多個子影音區段,再依照該至少一個音頻圖框的流錯誤來校正對應的子影音區段中視頻與音頻圖框之間的關系。
5.根據權利要求4所述的方法,其中,在所述步驟B)中,當該輸入比特流被切割成該多個子影音區段時,使該多個子影音區段中每一個的音頻區段長度不小于視頻區段長度。
6.根據權利要求1所述的方法,還包含步驟E),以執行標記處理并將該影音區段的流錯誤記載于該同步錯誤表中。
7.根據權利要求1所述的方法,其中,在所述步驟B)中,當所述同步錯誤表存在時,該同步錯誤表位于該輸入比特流中。
8.根據權利要求6所述的方法,其中,在所述步驟E)中,將該同步錯誤表插入一含有該經過標記處理的影音區段的輸出比特流后,開始將該輸出比特流輸出。
9.一種編輯影音檔案的系統,用以依照復制任務來處理輸入比特流,該輸入比特流具有多個視頻圖框與多個音頻圖框,所述系統包括編輯引擎,用于依據該復制任務編輯該輸入比特流;及存儲媒體,用于供該編輯引擎存取資料;其中,依據該復制任務,該編輯引擎在判斷出一個與該輸入比特流對應的同步錯誤表存在時,依照該同步錯誤表來校正該多個視頻圖框與該多個音頻圖框之間的位置關系,以及自該多個視頻圖框中識別出開始記號視頻圖框與結束記號視頻圖框以及自該多個音頻圖框中識別出與該開始記號視頻圖框相關的開始標記音頻圖框和與該結束記號視頻圖框相關的結束標記音頻圖框,復制一影音區段,該影音區段含有在該開始記號視頻圖框與該結束記號視頻圖框之間的多個視頻圖框以及在該開始標記音頻圖框及該結束標記音頻圖框之間的復數音頻圖框。
10.根據權利要求9所述的系統,其中,該同步錯誤表中記載該多個音頻圖框中的至少一個音頻圖框的流錯誤。
11.根據權利要求9和10所述的系統,其中,該編輯引擎依據該同步錯誤表中的流錯誤來位移該多個音頻圖框,以校正該多個視頻圖框與該多個音頻圖框之間的位置關系。
12.根據權利要求10所述的系統,其中,當該同步錯誤表存在時,該編輯引擎對應記載于該同步錯誤表中的該至少一個音頻圖框的位置將該輸入比特流切割成多個子影音區段,再依照該至少一個音頻圖框的流錯誤來校正對應的子影音區段中視頻與音頻圖框之間的關系。
13.根據權利要求12所述的系統,其中,當該輸入比特流被切割成該多個子影音區段時,該編輯引擎使該子影音區段中每一個的該音頻區段長度不小于該視頻區段長度。
14.根據權利要求9所述的系統,該編輯引擎還執行標記處理并將該影音區段的流錯誤記載在該同步錯誤表中。
15.根據權利要求14所述的系統,其中,當該系統是一開放系統時,該同步錯誤表位于該輸入比特流中。
16.根據權利要求9所述的系統,其中,當該系統是一封閉系統時,該同步錯誤表位于該存儲媒體中。
17.根據權利要求15所述的系統,其中,該編輯引擎在將該同步錯誤表插入含有該經過標記處理的影音區段的輸出比特流后,開始將該輸出比特流輸出。
18.根據權利要求9所述的系統,其中,該編輯引擎對應該復制任務產生一個復制操作來執行該復制影音區段的工作。
19.一種用于使電子裝置執行影音檔案編輯步驟的計算機程序產品,該電子裝置用于依照復制任務來處理輸入比特流,該輸入比特流具有多個視頻圖框和多個音頻圖框,所述影音檔案編輯步驟包含A)依照該復制任務以從該多個視頻圖框中識別出一個開始記號視頻圖框和一個結束記號視頻圖框;B)當判斷出與該輸入比特流對應的同步錯誤表存在時,依照該同步錯誤表來校正該多個視頻圖框與該多個音頻圖框間的位置關系,該同步錯誤表紀錄該多個音頻圖框的流錯誤;C)從該多個音頻圖框中識別出與該開始記號視頻圖框相關的開始標記音頻圖框和與該結束記號視頻圖框相關的結束標記音頻圖框;和D)從該輸入比特流復制一影音區段,該影音區段含有在該開始記號視頻圖框與該結束記號視頻圖框間的多個視頻圖框以及在該開始標記音頻圖框與該結束標記音頻圖框之間的多個音頻圖框。
全文摘要
一種編輯影音檔案的方法,該方法依照至少一個復制任務來編輯輸入比特流。該輸入比特流具有多數個視頻圖框及多數個音頻圖框。該方法的特征在于執行復制任務時先以一同步錯誤表來校正多個音頻圖框與視頻圖框間的位置關系,然后進行選擇復制,以達到有效地避免重復編輯時的流錯誤累積與擴散之功能。
文檔編號G11B27/036GK1725360SQ20041006991
公開日2006年1月25日 申請日期2004年7月19日 優先權日2004年7月19日
發明者許丕中, 彭鴻文 申請人:松下電器產業株式會社