TW201419872A - 影像處理裝置及方法 - Google Patents

影像處理裝置及方法 Download PDF

Info

Publication number
TW201419872A
TW201419872A TW102135324A TW102135324A TW201419872A TW 201419872 A TW201419872 A TW 201419872A TW 102135324 A TW102135324 A TW 102135324A TW 102135324 A TW102135324 A TW 102135324A TW 201419872 A TW201419872 A TW 201419872A
Authority
TW
Taiwan
Prior art keywords
unit
file
data
video
image
Prior art date
Application number
TW102135324A
Other languages
English (en)
Other versions
TWI652938B (zh
Inventor
Teruhiko Suzuki
Mitsuhiro Hirabayashi
Takehiko Nakano
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of TW201419872A publication Critical patent/TW201419872A/zh
Application granted granted Critical
Publication of TWI652938B publication Critical patent/TWI652938B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • H04N19/427Display on the fly, e.g. simultaneous writing to and reading from decoding memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本揭露係有關於,能夠減輕串流生成之際之處理負擔的影像處理裝置及方法。檔案生成部,係以含有影像編碼而成之位元串流的檔案為對象,設定startcode與filler data,並控制startcode與filler data的設定,以使得已被設定之startcode與filler data,於檔案的media data中,保持著管理解碼器緩衝區之參數的特性而構成檔案。本揭露係可適用於例如影像處理裝置。

Description

影像處理裝置及方法
本揭露係有關於影像處理裝置及方法,尤其是有關於,可以減輕傳輸之際所使用的串流或儲存在檔案之際所使用的串流在生成之際之處理的負擔的影像處理裝置及方法。
在影像編碼方式的標準規格之1的H.264/AVC中,為了儲存影像之編碼及解碼所需使用之參數,而定義有序列參數集(SPS)及圖像參數集(PPS)這2種類的參數集。各切片的影像資料是被分類成VCL(Video Coding Layer)NAL(Network Abstraction Layer)單元,同時,這些參數集係被分配成非VCL NAL單元。通常,以H.264/AVC方式而被編碼的編碼串流被儲存在含有標頭領域及資料領域的檔案中的時候,SPS及PPS係被插入至標頭領域,影像資料係被插入至資料領域。
H.264/AVC後繼的次世代影像編碼方式的HEVC(High Efficiency Video Coding)之標準化作業中,提出了導入與SPS及PPS不同的新的參數集,亦即適應參 數集(APS:Adaptation Parameter Set)(參照下記非專利文獻1、2)。
APS也是一種參數集。因此,若依據既存的手法,就和SPS及PPS同樣地,APS也會被插入至檔案的標頭領域中。作為含有標頭領域及資料領域的檔案格式之一例,舉出MPEG-4 Part14(ISO/IEC14496-14:2003、以下簡稱MP4)格式、MPEG-4 Part15(ISO/IEC14496-15:2004、AVC檔案)格式。
[先前技術文獻]
[非專利文獻]
[非專利文獻1]Stephan Wenger, Jill Boyce, Yu-Wen Huang, Chia-Yang Tsai, Ping Wu, Ming Li, “Adaptation Parameter Set (APS)”, JCTVC-F747r3, July 2011
[非專利文獻2]Benjamin Bross, Woo-Jin Han, Jens-Rainer Ohm, Gary J. Sullivan, Thomas Wiegand, “High efficiency video coding (HEVC) text specification draft 6”, JCTVC-H1003 ver20, February 2012
然而,傳輸之際所使用的串流或儲存在檔案之際所使用的串流在生成時,有些格式是不容許將 startcode和filler data等資料當作串流而含有。因此,在讀取串流的資料之際,會成為處理負荷的主因。
本揭露係有鑑於此種狀況而研發,目的在於減輕傳輸之際的串流或儲存在檔案之際的串流在生成之際之處理的負擔。
本揭露之第1側面的影像處理裝置,係具備:設定部,係以含有影像編碼而成之位元串流的檔案為對象,設定startcode與filler data;和控制部,係控制前記設定部,以使得前記設定部中所設定之startcode與filler data,於檔案的media data中,保持著管理解碼器緩衝區之參數的特性而構成檔案。
前記管理解碼器緩衝區之參數,係為VUI(Video Usability Information)中所含之參數、或buffering period SEI(Supplemental Enhancement Information)中所含之參數、或是picture timing SEI中所含之參數。
前記設定部,係可將filler data,設定成為VCL資料。
本揭露之第1側面的影像處理方法,係由影像處理裝置,以含有影像編碼而成之位元串流的檔案為對象,設定startcode與filler data;控制startcode與filler data的設定,以使得已被設定之startcode與filler data, 於檔案的media data中,保持著管理解碼器緩衝區之參數的特性而構成檔案。
本揭露之第2側面的影像處理裝置,係具備:收取部,係收取檔案,該檔案係為含有影像編碼而成之位元串流,且被控制而設定成,startcode與filler data是於檔案的media data中,保持管理解碼器緩衝區之參數的特性而構成檔案;和解碼部,係從前記收取部所收取到的檔案中,讀取前記startcode與filler data,使用前記管理解碼器緩衝區之參數,將前記位元串流予以解碼。
前記管理解碼器緩衝區之參數,係為VUI(Video Usability Information)中所含之參數、或buffering period SEI(Supplemental Enhancement Information)中所含之參數、或是picture timing SEI中所含之參數。
前記filler data,係被當成VCL資料而被設定。
本揭露之第2側面的影像處理方法,係由影像處理裝置,收取檔案,該檔案係為含有影像編碼而成之位元串流,且被控制而設定成,startcode與filler data是於檔案的media data中,保持管理解碼器緩衝區之參數的特性而構成檔案;從所收取到的檔案中,讀取前記startcode與filler data,使用前記管理解碼器緩衝區之參數,將前記位元串流予以解碼。
本揭露之第3側面的影像處理裝置,係具備 :設定部,係於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已被從位元串流中刪除時,則將管理解碼器緩衝區之參數的特性,加以設定;和生成部,係使用已被前記設定部所設定的特性,來生成前記檔案。
前記設定部,係可將用來識別管理解碼器緩衝區之參數的特性已被變更之事實的識別參數,加以設定。
前記設定部,係可將前記識別參數,當作前記檔案的樣本條目中的選用箱盒而加以設定。
本揭露之第3側面的影像處理方法,係由影像處理裝置,於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已被從位元串流中刪除時,則將管理解碼器緩衝區之參數的特性,加以設定;和使用已被設定的特性,來生成前記檔案。
本揭露之第4側面的影像處理裝置,係具備:收取部,係收取檔案,該檔案係為,於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已刪除時,則管理解碼器緩衝區之參數的特性會被設定,使用已被設定的特性而生成者;和解碼部,係從前記收取部所收取到的檔案中,讀取前記管理解碼器緩衝區之參數,並使用所讀取到的參數,將前記位元串流予以解碼。
前記檔案中係被設定有,用來識別管理解碼 器緩衝區之參數的特性已被變更之事實的識別參數。
本揭露之第4側面的影像處理方法,係由影像處理裝置,收取檔案,該檔案係為,於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已被從位元串流中刪除時,則管理解碼器緩衝區之參數的特性會被設定,使用已被設定的特性而生成者;和從所收取到的檔案中,讀取前記管理解碼器緩衝區之參數,並使用所讀取到的參數,將前記位元串流予以解碼。
於本揭露之第1側面中,以含有影像編碼而成之位元串流的檔案為對象,startcode與filler data會被設定。然後,startcode與filler data的設定會被控制,以使得已被設定之startcode與filler data會在檔案的media data中,保持著管理解碼器緩衝區之參數的特性而構成檔案。
於本揭露之第2側面中,含有影像編碼而成之位元串流的檔案,且被控制而設定成,startcode與filler data是於檔案的media data中,保持管理解碼器緩衝區之參數的特性而構成檔案,會被收取。然後,從所收取到的檔案中,讀取前記startcode與filler data,使用前記管理解碼器緩衝區之參數,將前記位元串流予以解碼。
於本揭露之第3側面中,係於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已被從位元串流中刪除時,則將管理解碼器 緩衝區之參數的特性,會被設定。然後,使用已被設定的特性,來生成前記檔案。
於本揭露之第4側面中,係於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已被從位元串流中刪除時,則管理解碼器緩衝區之參數的特性會被設定,使用已被設定的特性而生成的檔案,會被收取。然後,從所收取到的檔案中,讀取前記管理解碼器緩衝區之參數,並使用所讀取到的參數,將前記位元串流予以解碼。
此外,上述的影像處理裝置,係可為獨立的裝置,也可為構成1台影像編碼裝置或影像解碼裝置的內部區塊。
若依據本揭露之第1及第3側面,則可將影像予以編碼。尤其是,可以減輕位元串流傳輸之際所使用的串流或儲存在檔案之際所使用的串流在生成之際之處理的負擔。
若依據本揭露之第2及第4側面,則可將影像予以解碼。尤其是,可以減輕傳輸之際所使用的串流或儲存在檔案之際所使用的串流在解碼之際之處理的負擔。
1‧‧‧編碼器
2‧‧‧檔案生成部
11‧‧‧A/D轉換部
12‧‧‧畫面排序緩衝區
13‧‧‧演算部
14‧‧‧正交轉換部
15‧‧‧量化部
16‧‧‧可逆編碼部
17‧‧‧積存緩衝區
18‧‧‧逆量化部
19‧‧‧逆正交轉換部
20‧‧‧加算部
21‧‧‧去區塊濾波器
22‧‧‧畫格記憶體
23‧‧‧開關
24‧‧‧畫面內預測部
25‧‧‧運動預測.補償部
26‧‧‧預測影像選擇部
27‧‧‧速率控制部
31‧‧‧控制部
32‧‧‧設定部
33‧‧‧檔案寫出部
41‧‧‧適應偏置濾波器
42‧‧‧適應迴圈濾波器
51‧‧‧檔案讀取部
52‧‧‧解碼器
71‧‧‧檔案收取部
72‧‧‧參數取得部
73‧‧‧解碼控制部
74‧‧‧資料讀出部
101‧‧‧積存緩衝區
102‧‧‧可逆解碼部
103‧‧‧逆量化部
104‧‧‧逆正交轉換部
105‧‧‧加算部
106‧‧‧去區塊濾波器
107‧‧‧畫面排序緩衝區
108‧‧‧D/A轉換部
109‧‧‧畫格記憶體
110‧‧‧開關
111‧‧‧畫面內預測部
112‧‧‧運動補償部
113‧‧‧開關
141‧‧‧適應偏置濾波器
142‧‧‧適應迴圈濾波器
151‧‧‧HEVC檔案
201‧‧‧影像編碼裝置
211‧‧‧編碼部
212‧‧‧VCL緩衝區
213‧‧‧非VCL緩衝區
214‧‧‧檔案生成部
215‧‧‧控制部
251‧‧‧影像解碼裝置
261‧‧‧VCL緩衝區
262‧‧‧非VCL緩衝區
263‧‧‧參數記憶體
264‧‧‧解碼部
265‧‧‧控制部
300‧‧‧檔案轉換裝置
311‧‧‧視訊串流解析部
401‧‧‧編碼器
451‧‧‧解碼器
800‧‧‧電腦
801‧‧‧CPU
802‧‧‧ROM
803‧‧‧RAM
804‧‧‧匯流排
805‧‧‧輸出入介面
806‧‧‧輸入部
807‧‧‧輸出部
808‧‧‧記憶部
809‧‧‧通訊部
810‧‧‧驅動機
821‧‧‧可移除式媒體
900‧‧‧電視裝置
901‧‧‧天線
902‧‧‧選台器
903‧‧‧解多工器
904‧‧‧解碼器
905‧‧‧映像訊號處理部
906‧‧‧顯示部
907‧‧‧聲音訊號處理部
908‧‧‧揚聲器
909‧‧‧外部介面
910‧‧‧控制部
911‧‧‧使用者介面
912‧‧‧匯流排
920‧‧‧行動電話機
921‧‧‧天線
922‧‧‧通訊部
923‧‧‧聲音編解碼器
924‧‧‧揚聲器
925‧‧‧麥克風
926‧‧‧攝影機部
927‧‧‧影像處理部
928‧‧‧多工分離部
929‧‧‧記錄再生部
930‧‧‧顯示部
931‧‧‧控制部
932‧‧‧操作部
933‧‧‧匯流排
940‧‧‧記錄再生裝置
941‧‧‧選台器
942‧‧‧外部介面
943‧‧‧編碼器
944‧‧‧HDD
945‧‧‧碟片驅動機
946‧‧‧選擇器
947‧‧‧解碼器
948‧‧‧OSD
949‧‧‧控制部
950‧‧‧使用者介面
960‧‧‧攝像裝置
961‧‧‧光學區塊
962‧‧‧攝像部
963‧‧‧訊號處理部
964‧‧‧影像處理部
965‧‧‧顯示部
966‧‧‧外部介面
967‧‧‧記憶體
968‧‧‧媒體驅動機
969‧‧‧OSD
970‧‧‧控制部
971‧‧‧使用者介面
972‧‧‧匯流排
1300‧‧‧視訊套組
1311‧‧‧視訊模組
1312‧‧‧外部記憶體
1313‧‧‧電力管理模組
1314‧‧‧前端模組
1321‧‧‧連接性構件
1322‧‧‧攝影機
1323‧‧‧感測器
1331‧‧‧應用程式處理器
1332‧‧‧視訊處理器
1333‧‧‧寬頻數據機
1334‧‧‧RF模組
1341‧‧‧虛線
1351‧‧‧天線部
1352‧‧‧濾波器
1353‧‧‧增幅部
1361‧‧‧視訊單元
1401‧‧‧視訊輸入處理部
1402‧‧‧第1影像放大縮小部
1403‧‧‧第2影像放大縮小部
1404‧‧‧視訊輸出處理部
1405‧‧‧畫格記憶體
1406‧‧‧記憶體控制部
1407‧‧‧編碼.解碼引擎
1408A、1408B‧‧‧視訊ES緩衝區
1409A、1409B‧‧‧音訊ES緩衝區
1410‧‧‧音訊編碼器
1411‧‧‧音訊解碼器
1412‧‧‧多工化部
1413‧‧‧逆多工部
1414‧‧‧串流緩衝區
1511‧‧‧控制部
1512‧‧‧顯示器介面
1513‧‧‧顯示引擎
1514‧‧‧影像處理引擎
1515‧‧‧內部記憶體
1516‧‧‧編解碼器引擎
1517‧‧‧記憶體介面
1518‧‧‧多工.逆多工部
1519‧‧‧網路介面
1520‧‧‧視訊介面
1531‧‧‧CPU
1532‧‧‧副CPU
1533‧‧‧系統控制器
1541‧‧‧MPEG-2 Video
1542‧‧‧AVC/H.264
1543‧‧‧HEVC/H.265
1544‧‧‧HEVC/H.265(Scalable)
1545‧‧‧HEVC/H.265(Multi-view)
1551‧‧‧MPEG-DASH
[圖1]適用了本技術之編碼裝置的第1實施形態之構成例的區塊圖。
[圖2]編碼器之構成例的區塊圖。
[圖3]檔案生成部之構成例的區塊圖。
[圖4]檔案生成處理的說明用流程圖。
[圖5]檔案生成處理之另一例的說明用流程圖。
[圖6]先前的mdat資料之生成處理的說明用流程圖。
[圖7]本技術的mdat資料之生成處理的說明用流程圖。
[圖8]適用了本技術之解碼裝置的第1實施形態之構成例的區塊圖。
[圖9]檔案讀取部之構成例的區塊圖。
[圖10]解碼器之構成例的區塊圖。
[圖11]檔案解碼處理的說明用流程圖。
[圖12]檔案解碼處理之另一例的說明用流程圖。
[圖13]適用了本技術之編碼裝置的第2實施形態之構成例的區塊圖。
[圖14]適用了本技術之解碼裝置的第2實施形態之構成例的區塊圖。
[圖15]先前的MP4視訊樣本結構之例子的圖示。
[圖16]AVC串流的1存取單元之構成例的圖示。
[圖17]本技術的MP4視訊樣本結構之例子的圖示。
[圖18]本技術的MP4視訊樣本結構之另一例子的圖示。
[圖19]HRD Conformance Box擴充之例子的圖示。
[圖20]本技術的MP4視訊樣本結構之再另一例子的圖示。
[圖21]Sample table中所被追加之BOX之例子的圖示。
[圖22]圖20的MP4視訊樣本結構之另一例子的圖示。
[圖23]圖20的MP4視訊樣本結構之再另一例子的圖示。
[圖24]樣本輔助資訊機能的格式之例子的圖示。
[圖25]樣本輔助資訊機能的格式之另一例子的圖示。
[圖26]本技術的MP4視訊樣本結構之例子的比較圖。
[圖27]圖23的MP4視訊樣本結構之另一例子的圖示。
[圖28]位元組串流格式資訊盒之例子的圖示。
[圖29]位元組串流格式資訊盒之另一例子的圖示。
[圖30]各樣本條目中所儲存之位元組串流格式資訊之資料結構例的說明圖。
[圖31]模態1之情況下的MP4視訊樣本結構之例子的圖示。
[圖32]模態2之情況下的MP4視訊樣本結構之例子的圖示。
[圖33]模態3之情況下的MP4視訊樣本結構之例子的圖示。
[圖34]各樣本條目中所儲存之位元組串流格式資訊之 資料結構的另一例的說明圖。
[圖35]適用了本技術之檔案轉換裝置之構成例的圖示。
[圖36]檔案轉換處理的說明用流程圖。
[圖37]適用了本技術之編碼裝置的第3實施形態之構成例的區塊圖。
[圖38]編碼器之構成例的區塊圖。
[圖39]適用了本技術之解碼裝置的第3實施形態之構成例的區塊圖。
[圖40]解碼器之構成例的區塊圖。
[圖41]電腦之構成例的區塊圖。
[圖42]電視裝置之概略構成之一例的區塊圖。
[圖43]行動電話機之概略構成之一例的區塊圖。
[圖44]記錄再生裝置之概略構成之一例的區塊圖。
[圖45]攝像裝置之概略構成之一例的區塊圖。
[圖46]視訊套組之概略構成之一例的區塊圖。
[圖47]視訊處理器之概略構成之一例的區塊圖。
[圖48]視訊處理器之概略構成之另一例的區塊圖。
以下,說明用以實施本揭露的形態(以下稱作實施形態)。此外,說明係用以下順序來進行。
1.第1實施形態(HEVC方式的編碼裝置、解碼裝置)
2.第2實施形態(影像編碼裝置、影像解碼裝置)
3.第3實施形態(MP4視訊樣本結構)
4.第4實施形態(位元組串流格式資訊盒)
5.第5實施形態(檔案轉換裝置)
6.第6實施形態(AVC方式的編碼裝置、解碼裝置)
7.應用例
8.第7實施形態(套組、單元、模組、處理器)
<1.第1實施形態>
[編碼裝置的第1實施形態的構成例]
圖1係作為適用了本技術之影像處理裝置的編碼裝置的第1實施形態之構成例的區塊圖。
圖1的編碼裝置,係由編碼器1及檔案生成部2所構成,將攝影(Captured)影像等之影像以HEVC方式進行編碼,生成儲存有已被編碼之串流的檔案。
具體而言,對編碼裝置的編碼器1,係有畫格單位的攝影影像等之影像,被當成輸入訊號而輸入。又,在未圖示之編碼器1的前段中所被設定的SPS(Sequence Parameter Set)、PPS(Picture Parameter Set)、將編碼資料所對應之影像之特性(易用性)以每一序列地加以表示的VUI(Video Usability Information)、SEI(Supplemental Enhancement Information)等,也會被輸入。
編碼器1,係使用SPS、PPS、VUI、SEI中所含之參數,將輸入訊號以HEVC方式進行編碼。然後,編碼器1係從SPS、PPS、VUI、SEI,和其結果所得之編碼資料,生成MPEG-2 TS(Transport Stream)等之編碼串流, 將已生成之編碼串流,供給至檔案生成部2。編碼器1的細節,將參照圖2而於後述。
檔案生成部2,係生成將來自編碼器1之編碼串流(已被編碼之一連串影像資料)予以儲存的檔案(例如,MPEG-4 Part14(ISO/IEC14496-14:2003,以下簡稱MP4)之檔案)。檔案生成部2的細節,將參照圖3而於後述。
[編碼器之構成例]
圖2係圖1的編碼器1之構成例的區塊圖。編碼器1的各部,係使用來自未圖示之前段的SPS、PPS、VUI、SEI中所含之參數,將輸入訊號的影像進行編碼,生成編碼串流。
圖2的編碼器1,係含有:A/D轉換部11、畫面排序緩衝區12、演算部13、正交轉換部14、量化部15、可逆編碼部16、積存緩衝區17、逆量化部18、逆正交轉換部19、加算部20、去區塊濾波器21、畫格記憶體22、開關23、畫面內預測部24、運動預測.補償部25、預測影像選擇部26、及速率控制部27所構成。
再者,在去區塊濾波器21及畫格記憶體22之間,係具備有適應偏置濾波器41和適應迴圈濾波器42。
具體而言,編碼器1的A/D轉換部11,係將作為輸入訊號而被輸入之畫格單位的影像,進行A/D轉換,輸出至畫面排序緩衝區12而記憶之。畫面排序緩衝區12係將已記憶之顯示順序的畫格單位的影像,隨應於 GOP(Group of Picture)構造,排序成編碼所需之順序,輸出至演算部13、畫面內預測部24、及運動預測.補償部25。
演算部13係藉由演算出,從預測影像選擇部26所供給之預測影像、與從畫面排序緩衝區12所輸出之編碼對象之影像的差分,以進行編碼。具體而言,演算部13係將從畫面排序緩衝區12所輸出之編碼對象之影像,減去從預測影像選擇部26所供給之預測影像,以進行編碼。演算部13係將其結果所得之影像,當作殘差資訊而輸出至正交轉換部14。此外,若沒有從預測影像選擇部26供給預測影像時,演算部13係將從畫面排序緩衝區12所讀出之影像,直接當作殘差資訊而輸出至正交轉換部14。
正交轉換部14,係對來自演算部13的殘差資訊,實施正交轉換,將正交轉換之結果所得之係數,供給至量化部15。
量化部15,係將從正交轉換部14所供給之係數,進行量化。已被量化之係數,係被輸入至可逆編碼部16。
可逆編碼部16,係從畫面內預測部24取得表示最佳畫面內預測模式之資訊(以下稱作畫面內預測模式資訊)。又,從運動預測.補償部25取得表示最佳畫面間預測模式之資訊(以下稱作畫面間預測模式資訊)、運動向量、用來特定參照影像所需之資訊等。又,可逆編碼部16係從適應偏置濾波器41將儲存旗標、索引或偏置、及種類資訊,當作偏置濾波器資訊而加以取得,並從適應迴圈濾波器42取得濾波器係數。
可逆編碼部16,係對從量化部15所供給之已被量化之係數,進行可變長度編碼(例如CAVLC(Context-Adaptive Variable Length Coding)等)、算術編碼(例如CABAC(Context-Adaptive Binary Arithmetic Coding)等)等之可逆編碼。
又,可逆編碼部16係將畫面內預測模式資訊、或者,畫面間預測模式資訊、運動向量、用來特定參照影像之資訊、偏置濾波器資訊、及濾波器係數等,當作關於編碼之編碼資訊而進行可逆編碼。可逆編碼部16,係從已被可逆編碼之編碼資訊和係數,生成編碼串流,然後供給至積存緩衝區17而積存之。此外,已被可逆編碼之編碼資訊,係亦可被視為已被可逆編碼之係數的標頭資訊。
積存緩衝區17,係將從可逆編碼部16所供給之編碼串流,予以暫時記憶。又,積存緩衝區17係將所記憶的編碼串流,供給至圖1的檔案生成部2。
又,從量化部15所輸出的已被量化之係數,係亦被輸入至逆量化部18,被逆量化後,供給至逆正交轉換部19。
逆正交轉換部19,係對於從逆量化部18所供給之係數,實施逆正交轉換,將其結果所得之殘差資訊,供給至加算部20。
加算部20,係將從逆正交轉換部19所供給的作為解碼對象之影像的殘差資訊、和從預測影像選擇部 26所供給的預測影像,進行加算,獲得局部性解碼之影像。此外,當沒有從預測影像選擇部26供給預測影像時,則加算部20係將從逆正交轉換部19所供給之殘差資訊,當作已被局部性解碼之影像。加算部20,係將已被局部性解碼之影像,供給至去區塊濾波器21,並且供給至畫格記憶體22而積存之。
去區塊濾波器21,係藉由將從加算部20所供給之局部性解碼之影像進行過濾,以去除區塊失真。去區塊濾波器21,係將其結果所得之影像,供給至適應偏置濾波器41。
適應偏置濾波器41,係對去區塊濾波器21進行過適應去區塊濾波處理後的影像,進行主要用來去除漣波現象的適應偏置濾波(SAO:Sample adaptive offset)處理。
更詳言之,適應偏置濾波器41,係以最大的編碼處理亦即每一LCU(Largest Coding Unit)地決定適應偏置濾波處理之種類,求出該適應偏置濾波處理中所使用的偏置。適應偏置濾波器41係使用所求出的偏置,對適應去區塊濾波處理後的影像,進行已被決定之種類的適應偏置濾波處理。然後,適應偏置濾波器41係將適應偏置濾波處理後之影像,供給至適應迴圈濾波器42。
又,適應偏置濾波器41,係具有用來儲存偏置的緩衝區。適應偏置濾波器41,係每一LCU地,判定適應去區塊濾波處理中所使用之偏置,是否已經被保存在 緩衝區中。
適應偏置濾波器41係在判定為,適應去區塊濾波處理中所使用之偏置是已經被保存在緩衝區中的時候,則將表示偏置已被儲存在緩衝區中的儲存旗標,設定成表示偏置已被儲存在緩衝區中的值(此處係為1)。
然後,適應偏置濾波器41係每一LCU地,將已被設定成1的儲存旗標、表示偏置在緩衝區中之儲存位置的索引、及表示所進行過之適應偏置濾波處理之種類的種類資訊,供給至可逆編碼部16。
另一方面,適應偏置濾波器41係在適應去區塊濾波處理中所使用之偏置尚未被儲存在緩衝區中的時候,則將該偏置依序儲存至緩衝區。又,適應偏置濾波器41係將儲存旗標,設定成表示偏置尚未被儲存在緩衝區中的值(此處係為0)。然後,適應偏置濾波器41係每一LCU地,將已被設定成0的儲存旗標、偏置、及種類資訊,供給至可逆編碼部16。
適應迴圈濾波器42,係對於從適應偏置濾波器41所供給之適應偏置濾波處理後的影像,例如,每一LCU地,進行適應迴圈濾波器(ALF:Adaptive Loop Filter)處理。作為適應迴圈濾波處理,係可使用例如2維的維納濾波器(Wiener Filter)所致之處理。當然,也可使用維納濾波器以外的濾波器。
具體而言,適應迴圈濾波器42,係每一LCU地,使得從畫面排序緩衝區12所輸出之影像亦即原影像 和適應迴圈濾波處理後之影像的殘差會是最小的方式,算出適應迴圈濾波處理中所使用的濾波器係數。然後,適應迴圈濾波器42,係對適應偏置濾波處理後之影像,使用所算出的濾波器係數,每一LCU地進行適應迴圈濾波處理。
適應迴圈濾波器42,係將適應迴圈濾波處理後之影像,供給至畫格記憶體22。又,適應迴圈濾波器42,係將濾波器係數,供給至可逆編碼部16。
此外,此處雖然假設為,適應迴圈濾波處理是每一LCU地進行,但適應迴圈濾波處理的處理單位係不限定於LCU。但是,藉由配合適應偏置濾波器41與適應迴圈濾波器42之處理單位,就可有效率地進行處理。
被積存在畫格記憶體22中的影像,係成為參照影像而透過開關23而被輸出至畫面內預測部24或運動預測.補償部25。
畫面內預測部24係使用從畫格記憶體22透過開關23而被讀出之未被去區塊濾波器21進行濾波的參照影像,以瓷磚及切片單位,進行候補之所有畫面內預測模式的畫面內預測處理。
又,畫面內預測部24係基於從畫面排序緩衝區12所讀出之影像、和畫面內預測處理之結果所生成之預測影像,而對候補之所有畫面內預測模式,算出成本函數值(細節將於後述)。然後,畫面內預測部24係將成本函數值最小的畫面內預測模式,決定成最佳畫面內預測模 式。
畫面內預測部24係將以最佳畫面內預測模式所生成之預測影像、及對應之成本函數值,供給至預測影像選擇部26。畫面內預測部24,係當從預測影像選擇部26通知了在最佳畫面內預測模式下所生成之預測影像之選擇時,則將畫面內預測模式資訊,供給至可逆編碼部16。
此外,成本函數值係亦稱作RD(Rate Distortion)成本,例如,基於如H.264/AVC方式中的參照軟體亦即JM(Joint Model)所制定的High Complexity模式或Low Complexity模式之任一手法而被算出。
具體而言,作為成本函數值的算出手法是採用High Complexity模式時,對於候補的所有預測模式,會嘗試進行到可逆編碼為止,對各預測模式算出下式(1)所表示的成本函數值。
Cost(Mode)=D+λ.R...(1)
D係為原影像與解碼影像之差分(失真),R係為計算到正交轉換之係數為止的發生編碼量,λ係為作為量化參數QP之函數而被給予的拉格朗日乘數。
另一方面,當作為成本函數值之算出手法是採用Low Complexity模式時,對於候補的所有預測模式,進行解碼影像之生成、及表示預測模式之資訊等的標頭位元之算出,對各預測模式算出下式(2)所表示之成本函數值。
Cost(Mode)=D+QPtoQuant(QP).Header_Bit...(2)
D係為原影像與解碼影像之差分(失真),Header_Bit係為相對於預測模式的標頭位元,QPtoQuant係為作為量化參數QP之函數而被給予之函數。
在Low Complexity模式下,對所有的預測模式,只需生成解碼影像即可,不須進行可逆編碼,因此演算量可以減少。
運動預測.補償部25,係以瓷磚及切片單位,進行候補之所有畫面間預測模式的運動預測.補償處理。具體而言,運動預測.補償部25,係以瓷磚及切片單位,基於從畫面排序緩衝區12所供給之影像、和從畫格記憶體22透過開關23而被讀出之已被濾波的參照影像,來偵測出候補之所有畫面間預測模式的運動向量。然後,運動預測.補償部25係以瓷磚及切片單位,基於該運動向量而對參照影像實施補償處理,生成預測影像。
此時,運動預測.補償部25,係基於從畫面排序緩衝區12所供給之影像和預測影像,對於身為候補之所有畫面間預測模式,算出成本函數值,將成本函數值為最小的畫面間預測模式,決定成最佳畫面間預測模式。然後,運動預測.補償部25,係將最佳畫面間預測模式的成本函數值、和對應之預測影像,供給至預測影像選擇部26。又,運動預測.補償部25,係若從預測影像選擇部26通知了以最佳畫面間預測模式所生成之預測影像的 選擇時,則將畫面間預測模式資訊、對應之運動向量、用來特定參照影像之資訊等,輸出至可逆編碼部16。
預測影像選擇部26,係基於從畫面內預測部24及運動預測.補償部25所供給之成本函數值,來將最佳畫面內預測模式和最佳畫面間預測模式當中、對應之成本函數值為較小者,決定成最佳預測模式。然後,預測影像選擇部26係將最佳預測模式的預測影像,供給至演算部13及加算部20。又,預測影像選擇部26係將最佳預測模式之預測影像的選擇,通知給畫面內預測部24或運動預測.補償部25。
速率控制部27,係基於積存緩衝區17中所積存之編碼資料,以不會發生溢位或下溢之方式,控制量化部15的量化動作之速率。
[背景和問題點]
在ISO/IEC 14496-15中所規定之AVC檔案格式下,並不容許把startcode與filler data,包含在位元串流(Elementary Stream)中。然而,這卻是ISO base media file format及MPEG-2 TS(Transport Stream)等之資料操作之際造成處理負荷增大的主因。
又,為了從位元串流(Elementary Stream)來生成(轉換)出MPEG-2 TS,有時候會因為startcode與filler data(為了調整資料大小所需的空白資料)被去除,而導致管理解碼器緩衝區之參數的值會有所不同。因此,例如, buffering period SEI(Supplemental enhancement information)就必須要再度設定,導致位元串流轉換之際的處理負荷之增大。
[檔案生成部之動作]
於是,檔案生成部2,係傳輸之際所使用的串流或儲存在檔案之際所使用的串流在生成時,以含有影像編碼而成之位元串流的檔案為對象,設定startcode與filler data,使已被設定之startcode與filler data,於檔案的media data中,保持著管理解碼器緩衝區之參數的特性而構成檔案的方式,來控制startcode與filler data之設定。
又,檔案生成部2,係若在含有影像編碼而成之位元串流的檔案之media data中,startcode與filler data已被刪除的情況下,則設定管理解碼器緩衝區之參數的特性,使用已被設定之特性,來生成檔案。
此外,管理解碼器緩衝區之參數係為HRD parameter(Hypothetical Reference Decoder Parameter),亦即係為用來管理假想參照解碼器的參數。此管理解碼器緩衝區之參數,係為位於VUI中之參數、位於buffering period SEI中之參數、或者,位於picture timing SEI中之參數。
藉由如以上之設計,在傳輸之際、或儲存至檔案之際的串流被生成(轉換)時,就不需要再度設定startcode與filler data,可減輕處理的負擔。
此外,關於filler data,係亦可如以下所示般地對應之。亦即,在AVC或HEVC方式中,就像是位於NAL unit type codes、NAL unit type classes的表格中,filler data係為non-VCL。具體而言,nal_unit_type為31,Name of nal_unit_type為FD_NUT,Content of NAL unit and RBSP syntax structure為filler data、filler_data_rbsp()之時,NAL nuit type class係為non-VCL。藉由將此non-VCL,變更成VCL資料,就可在檔案的media data中,包含有filler data,因此在往傳輸用串流之轉換時,就可抑制filler data被去除這件事情。
更具體而言,檔案生成部2係如以下般地,進行startcode與filler data之設定。
.Startcode和filler data
因此,本建議試圖允許在元素串流中含有startcode和filler data,以僅給新的規格使用。
在原本版本的ISO/IEC 14496-15,SPS/PPS中,SPS/PPS不能被包含在元素串流中。現在在ISO/IEC 14496-16 PDAM2中,已允許包含SPS/PPS。如果能夠允許包含startcode和filler data,那麼位元串流轉換器的負擔可以顯著減輕。在本情況下,並不需要重寫HRD參數,例如buffering period SEI和picture timing SEI。
為了保持向下相容能力,此改變應該被套用在新的規格中。(新AVC規格和HEVC)
.指出HDR參數錯誤
當startcode、filler data等被從元素串流中移除而儲存ISOMFF,HRD參數,例如buffering period SEI和picture timing SEI等,就會不正確。然而,解碼器並不知道元素串流中的HRD參數是否正確。應該有個id去表示元素串流中的HRD參數可能錯誤。
.在HEVC或AVC中改變filler data成為VCL資料
目前在HEVC和AVC中,filler data是被歸類成non-VCL。這意味著,filler data的位元是被當成non-VCL而計數(標頭資訊)。然而,如果我們指定filler data成為VCL資料,filler data的位元就會被視為視訊位元串流本身而被計數。此時,filler data就不需要被從元素串流中移除而HRD參數也不會改變。HEVC用的表格會被附加。
再者,若管理解碼器緩衝區之參數係為不同(不正確)時,則解碼器係無法判別管理解碼器緩衝區之參數是相同(正確)。於是,若startcode與filler data是已被從位元串流中刪除時,則設定用來識別管理解碼器緩衝區之參數的特性是否已被變更的識別參數。作為一例,表示儲存在檔案格式之選用箱盒中的情形。
例如,在AVC的情況下,此id可以被定義成一個選用箱盒在AVCSampleEntry中如下。(類似手法也可被應用 在其他AVC樣本條目和HEVCSampleEntry。)
識別參數,係例如被設定如下。
HRDConformanceFlag係為識別元,表示HRD特性是否已經因為startcode、filler data等被從元素串流中移除而改變。HRDConformanceFlag等於1時,表示HRD參數,例如buffering period SEI和picture timing SEI等,已經因為startcode、filler data等被從元素串流中移除而改變。
進行以上之處理的圖1的檔案生成部2,係被 構成如以下圖3所示。
[檔案生成部之構成例]
圖3係進行上述處理的檔案生成部之構成例的區塊圖。
於圖3的例子中,檔案生成部2係含有控制部31、設定部32、及檔案寫出部33所構成。
控制部31,係隨著是否要保持管理解碼器緩衝區之參數亦即HRD參數之特性,來控制設定部32所進行的檔案之VCL資料部分亦即mdat資料的生成處理。又,控制部31係隨著,在已被設定部32所設定的mdat資料中,startcode與filler data是否被刪除,來控制HRD參數之特性的設定、或檔案之管理資訊部分亦即moov中的HRD之識別參數的設定。
設定部32係使用來自編碼器1的編碼串流,基於控制部31所做的控制,生成檔案的mdat資料,將已生成之mdat資料,供給至檔案寫出部33。此外,於先前之手法中,startcode與filler data會被刪除,但於本技術之手法中,編碼串流中所被設定之startcode與filler data係維持被設定的狀態,而生成mdat資料。
又,設定部32係基於控制部31所做的控制,進行HRD參數之特性的設定、或檔案之moov中的HRD之識別參數的設定。然後,設定部32係生成檔案的moov,將已生成之moov,供給至檔案寫出部33。
檔案寫出部33,係將來自設定部32的moov寫出至檔案,然後將mdat寫出至檔案。藉由檔案寫出部33而被寫出的MP4之檔案,係被傳輸至後述的解碼裝置等,於解碼裝置中會被讀取、解碼。
[檔案生成處理之例子]
接著,參照圖4的流程圖,說明檔案生成部2的檔案生成處理。
步驟S1中,控制部31係判定,是否保持管理解碼器緩衝區之參數亦即HRD參數之特性。於步驟S1中,若判定為不保持HRD參數之特性,則處理係前進至步驟S2。於步驟S2中,設定部32係基於控制部31之控制,進行先前的mdat資料之生成處理。此處理係參照圖6而於後述。
藉由步驟S2之處理,startcode會被測出,NAL資料會被取得,startcode會被刪除。然後,隨應於已被取得之資料是否為VCL資料、還是filler data、或者是管理資訊等,而進行Unit size之附加及往緩衝區之積存、或是丟棄,生成mdat資料。已被生成之mdat資料,係被供給至檔案寫出部33,處理係前進至步驟S4。
另一方面,於步驟S1中,若判定為要保持HRD參數之特性,則處理係前進至步驟S3。於步驟S3中,設定部32係基於控制部31之控制,進行本技術的mdat資料之生成處理。此處理係參照圖7而於後述。
藉由步驟S3之處理,startcode會被測出,NAL資料會被取得,已被取得之資料會被設定成VCL資料,Unit Size會被附加,而被積存在緩衝區中,藉此而生成mdat資料。已被生成之mdat資料,係被供給至檔案寫出部33,處理係前進至步驟S4。
於步驟S4中,控制部31係於步驟S2或S3所生成之mdat資料中,判定startcode與filler data是否被刪除。
於步驟S4中,若判定為startcode與filler data是被刪除,則處理係前進至步驟S5。於步驟S5中,設定部32係設定HRD參數之特性。亦即,由於HRD參數之特性係不同,因此HRD參數之特性係被再度計算、再度設定。然後,以已被設定之HRD參數,改寫mdat資料的SEI及VUI。
於步驟S4中,若判定為startcode與filler data未被刪除,則步驟S5係被略過,處理係前進至步驟S6。
於步驟S6中,設定部32係使用步驟S2或S3之處理所得到之資料的大小資訊,生成檔案的moov。此外,當步驟S3被進行時,moov用的緩衝區中所積存之管理資訊等,也會被使用。已被生成之moov,係被供給至檔案寫出部33。
於步驟S7中,檔案寫出部33係將步驟S6所生成之moov,寫出至檔案。
於步驟S8中,檔案寫出部33係將步驟S2或S3所生成之mdat,寫出至檔案。
如以上所述,藉由檔案寫出部33而被寫出的MP4之檔案,係被發送至後述的解碼裝置等,於解碼裝置中會被讀取、解碼。此時,可不改變HRD參數之特性,就生成檔案。又,HRD參數係就算startcode與filler data已被刪除也會被再度設定,因此藉由參照HRD參數,可正確地進行解碼處理。
此外,於圖4的說明中,係說明了若startcode與fillerdata被刪除,則將HRD參數之特性予以再度設定之例子,但亦可如以下所說明,設定一用來表示HRD參數之特性是否正確還是有所不同的識別參數。
[檔案生成處理之另一例子]
接著,參照圖5的流程圖,說明檔案生成部2的檔案生成處理。
步驟S11中,控制部31係判定,是否保持管理解碼器緩衝區之參數亦即HRD參數之特性。於步驟S11中,若判定為不保持HRD參數之特性,則處理係前進至步驟S12。於步驟S12中,設定部32係基於控制部31之控制,進行先前的mdat資料之生成處理。此處理係參照圖5而於後述。
藉由步驟S12之處理,startcode會被測出,NAL資料會被取得,startcode會被刪除。然後,隨應於 已被取得之資料是否為VCL資料、還是filler data、或者是管理資訊,而進行Unit size之附加及往緩衝區之機能、或是丟棄,生成mdat資料。已被生成之mdat資料,係被供給至檔案寫出部33,處理係前進至步驟S14。
另一方面,於步驟S11中,若判定為要保持HRD參數之特性,則處理係前進至步驟S13。於步驟S13中,設定部32係基於控制部31之控制,進行本技術的mdat資料之生成處理。此處理係參照圖6而於後述。
藉由步驟S13之處理,startcode會被測出,NAL資料會被取得,已被取得之資料會被設定成VCL資料,Unit Size會被附加,而被積存在緩衝區中,藉此而生成mdat資料。已被生成之mdat資料,係被供給至檔案寫出部33,處理係前進至步驟S14。
於步驟S14中,控制部31係於步驟S12或S13所生成之mdat資料中,判定startcode與filler data是否被刪除。
於步驟S14中,若判定為startcode與filler data未被刪除,則處理係前進至步驟S15。於步驟S15中,設定部32係將moov之HRD的識別參數設定成1,處理係前進至步驟S17。藉此,在解碼側,可判別HRD參數係為正確。
於步驟S14中,若判定為startcode與fillerdata是被刪除,則處理係前進至步驟S16。於步驟S16中,設定部32係將moov之HRD的識別參數設定成 0,處理係前進至步驟S17。藉此,在解碼側,可判別HRD參數係為錯誤(不正確)。
於步驟S17中,設定部32係使用步驟S12或S13之處理所得到之資料的大小資訊,生成檔案的moov。此外,當步驟S13被進行時,moov用的緩衝區中所積存之管理資訊等,也會被使用。已被生成之moov,係被供給至檔案寫出部33。
於步驟S18中,檔案寫出部33係將步驟S17所生成之moov,寫出至檔案。
於步驟S19中,檔案寫出部33係將步驟S12或S13所生成之mdat,寫出至檔案。
如以上所述,藉由檔案寫出部33而被寫出的MP4之檔案,係被發送至後述的解碼裝置等,於解碼裝置中會被讀取、解碼。此時,可不改變HRD參數之特性,就生成檔案。又,因為設定了用來識別HRD參數是否正確的識別參數,因此可以明確地判別,是否參照HRD參數來解碼。
[先前的mdat資料之生成處理例]
接著,參照圖6的流程圖,說明圖4的步驟S2(或圖5的步驟S12)中的先前的mdat資料之生成處理。
設定部32係於步驟S21中,從來自編碼器1的編碼串流偵測出startcode,於步驟S22中,從步驟S21所測出的startcode,取得到下個startcode之前的NAL資 料。
設定部32係於步驟S23中,將步驟S21所測出的startcode予以刪除。於步驟S24中,判定步驟S22所取得之資料,是否為VCL資料。
於步驟S24中,若判定為步驟S22所取得之資料是VCL資料,則處理係前進至步驟S25。於步驟S25中,設定部32係對步驟S22所取得的資料,附加上對應之Unit size,當作存取單元。然後,設定部32係於步驟S26中,將已被附加Unit size的存取單元,積存在內建的mdat緩衝區中,處理係前進至步驟S30。
於步驟S24中,若判定為步驟S22所取得之資料不是VCL資料,則處理係前進至步驟S27。於步驟S27中,設定部32係判定步驟S22所取得之資料,是否為filler data。
於步驟S27中,若判定為步驟S22所取得之資料是filler data,則處理係前進至步驟S28。於步驟S28中,設定部32係將filler data予以丟棄,處理係前進至步驟S30。
於步驟S27中,若判定為步驟S22所取得之資料不是filler data,則處理係前進至步驟S29。此情況下,由於已被取得之資料係為SPS或PPS等之管理資訊,因此於步驟S29中,設定部32係將已被取得之資料,積存在內建的moov緩衝區中,處理係前進至步驟S30。
於步驟S30中,設定部32係從來自編碼器1 的編碼串流偵測出startcode。
於步驟S31中,設定部32係判定現在的資料是否為檔案最後的資料。若藉由步驟S30而未測出startcode,則於步驟S31中,判定係為檔案最後的資料,mdat資料之生成處理就被結束,處理係返回圖4的步驟S2(或圖5的步驟S12)。
若藉由步驟S30而有測出startcode,則於步驟S31中,若判定為並非檔案最後的資料,則處理係前進至步驟S22,重複其以後之處理。
[本技術的mdat資料之生成處理例]
相對於此,參照圖7的流程圖,說明圖4的步驟S3(圖5的步驟S13)中的本技術的mdat資料之生成處理。
設定部32係於步驟S41中,從來自編碼器1的編碼串流偵測出startcode,於步驟S42中,從步驟S41所測出的startcode,取得到下個startcode之前的NAL資料。此外,在圖7的例子中,startcode係未被刪除。
設定部32係於步驟S43中,判定步驟S42所取得之資料,是否為filler data。於步驟S43中,若判定為步驟S42所取得之資料是filler data,則處理係前進至步驟S44。於步驟S44中,設定部32係將filler data,設定成VCL資料。
於步驟S43中,若判定為步驟S42所取得之資料不是filler data,則步驟S44係被略過,處理係前進 至步驟S45。
於步驟S45中,對步驟S42所取得的資料,附加上對應之Unit size,當作存取單元,於步驟S46中,將已被附加Unit size的存取單元,積存在內建的mdat緩衝區中。此處,若已被取得之資料係為SPS或PPS等之管理資訊,則也會被積存在內建的moov緩衝區中,於圖4的步驟S6或圖5的步驟S17中,在moov的Sample Description裡,當作預設之SPS或PPS而被儲存。
此外,若已被取得之資料係為SPS或PPS等之管理資訊,則亦可如先前那樣,不積存在mdat緩衝區,而是僅積存在內建的moov緩衝區中。
於步驟S47中,設定部32係從來自編碼器1的編碼串流偵測出startcode。
於步驟S48中,設定部32係判定現在的資料是否為檔案最後的資料。若藉由步驟S47而未測出startcode,則於步驟S48中,判定係為檔案最後的資料,mdat資料之生成處理就被結束,處理係返回圖4的步驟S3(圖5的步驟S13)。
若藉由步驟S47而有測出startcode,則於步驟S48中,若判定為並非檔案最後的資料,則處理係前進至步驟S42,重複其以後之處理。
如以上,於本技術中,係保持著管理解碼器緩衝區之參數的特性而構成檔案的方式,來控制startcode與filler data之設定。亦即,startcode與filler data係不 會被刪除,以含有startcode與filler data的方式來構成檔案,因此可保持管理解碼器緩衝區之參數的特性。
又,由於是將filler data,變更成VCL資料,因此可在檔案的media data中,含有Filler data,可以抑制被轉換成傳輸用串流時,filler data被刪除的情形。
甚至,於檔案的media data中,若startcode與filler data是已刪除時,則會設定管理解碼器緩衝區之參數的特性,使用已被設定之參數,來生成檔案。藉此,就可正確地進行解碼。
或者,於檔案的media data中,若startcode
與filler data是已刪除時,則將用來識別管理解碼器緩衝區之參數的特性已被變更之事實的識別參數,加以設定,使用已被設定之識別參數,來生成檔案。藉此,就可正確地進行解碼。
[解碼裝置的第1實施形態的構成例]
圖8係將從圖1之編碼裝置所傳輸之編碼串流予以解碼,適用了本技術的作為影像處理裝置之解碼裝置的第1實施形態之構成例的區塊圖。
圖8的解碼裝置,係由檔案讀取部51、及解碼器52所構成。
解碼裝置的檔案讀取部51,係收取由圖1之編碼裝置所生成的MP4之檔案,從所收取之檔案中,讀取將已被圖1之編碼器1所編碼的編碼串流予以構成的 SPS、PPS、VUI、SEI、編碼資料等。檔案讀取部51,係將SPS、PPS、VUI、SEI、編碼資料,供給至解碼器52。
更具體而言,檔案讀取部51係收取檔案,該檔案係為含有影像編碼而成之位元串流,且被控制而設定成,startcode與filler data是於檔案的media data中,保持管理解碼器緩衝區之參數的特性而構成檔案。或者,檔案讀取部51係收取檔案,該檔案係為,於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已被刪除時,則管理解碼器緩衝區之參數的特性會被設定,使用已被設定的特性而生成者。然後,檔案讀取部51係讀取已被收取之檔案,令解碼器52將位元串流之編碼資料予以解碼。
解碼器52係基於檔案讀取部51之控制,參照從檔案讀取部51所供給之SPS,PPS,VUI,SEI等(尤其是HRD參數之特性),將從檔案讀取部51所供給之編碼資料,以HEVC方式進行解碼。解碼器52,係將解碼結果所得之影像,當作輸出訊號而供給至後段。
[檔案讀取部之構成例]
圖9係檔案讀取部51之構成例的區塊圖。
於圖9的例子中,檔案讀取部51係含有:檔案收取部71、參數取得部72、解碼控制部73、及資料讀出部74所構成。
檔案收取部71,係收取圖1之檔案生成部2 所生成的MP4之檔案,將所收取到的檔案,供給至參數取得部72。
參數取得部72,係從MP4之檔案取得管理資訊moov,供給至資料讀出部74。又,參數取得部72係基於已取得之moov,令資料讀出部74,從mdat讀出資料。
此外,若是藉由圖5之檔案生成處理所生成之檔案,則參數取得部72係從moov取得用來判別HRD參數之特性是否正確的識別參數,向解碼控制部73供給該識別參數。
解碼控制部73係若有來自參數取得部72的HRD之識別參數,則隨應於HRD之識別參數,決定是否依照HRD參數,控制解碼器52,進行解碼處理。
另一方面,若是藉由圖4之檔案生成處理所生成之檔案,則moov中係沒有HRD之識別參數,但即使該MP4之檔案的startcode與filler data被刪除,HRD參數之特性仍會被再度設定,因此是正確的。因此,此情況下,解碼控制部73係不特別進行動作。
資料讀出部74,係基於參數取得部72之控制,從檔案的moov或mdat,讀出SPS、PPS、VUI、SEI等,又,從檔案的mdat讀出編碼資料。然後,資料讀出部74係將已讀出之SPS、PPS、VUI、SEI、編碼資料等,供給至解碼器52。
[解碼部之構成例]
圖10係圖8的解碼器52之構成例的區塊圖。解碼器52的各部,係使用來自檔案讀取部51的SPS、PPS、VUI、SEI中所含之參數,將編碼資料予以解碼,生成影像。
圖10的解碼器52係由:積存緩衝區101、可逆解碼部102、逆量化部103、逆正交轉換部104、加算部105、去區塊濾波器106、畫面排序緩衝區107、D/A轉換部108、畫格記憶體109、開關110、畫面內預測部111、運動補償部112、及開關113所構成。
又,在去區塊濾波器106、畫面排序緩衝區107及畫格記憶體109之間,係具備有適應偏置濾波器141和適應迴圈濾波器142。
解碼器52的積存緩衝區101,係從圖8的檔案讀取部51收取編碼資料,並積存之。積存緩衝區101,係將所積存的編碼資料,供給至可逆解碼部102。
可逆解碼部102,係對來自積存緩衝區101的編碼資料,實施可變長度編碼、算術解碼部等之可逆解碼,以獲得已被量化之係數和編碼資訊。可逆解碼部102,係將已被量化之係數,供給至逆量化部103。又,可逆解碼部102係將作為編碼資訊的畫面內預測模式資訊等,供給至畫面內預測部111,將運動向量、用來特定參照影像所需之資訊、畫面間預測模式資訊等,供給至運動補償部112。然後,可逆解碼部102係將作為編碼資訊的畫面內預測模式資訊或畫面間預測模式資訊,供給至開關113。
可逆解碼部102係將作為編碼資訊的偏置濾波器資訊,供給至適應偏置濾波器141,將濾波器係數供給至適應迴圈濾波器142。
逆量化部103、逆正交轉換部104、加算部105、去區塊濾波器106、畫格記憶體109、開關110、畫面內預測部111、及、運動補償部112,係分別進行和圖2的逆量化部18、逆正交轉換部19、加算部20、去區塊濾波器21、畫格記憶體22、開關23、畫面內預測部24、及、運動預測.補償部25同樣的處理,藉此,影像就被解碼。
具體而言,逆量化部103,係將來自可逆解碼部102的已被量化之係數予以逆量化,將其結果所得之係數,供給至逆正交轉換部104。
逆正交轉換部104,係對於來自逆量化部103的係數,實施逆正交轉換,將其結果所得之殘差資訊,供給至加算部105。
加算部105,係將從逆正交轉換部104所供給的作為解碼對象之影像的殘差資訊、和從開關113所供給的預測影像,進行加算,以進行解碼。加算部105,係將解碼結果所得之影像,供給至去區塊濾波器106,並且供給至畫格記憶體109。此外,當沒有從開關113供給預測影像時,則加算部105係將從逆正交轉換部104所供給之殘差資訊亦即影像,當作解碼結果所得之影像而供給至去區塊濾波器106,並且供給至畫格記憶體109而積存之。
去區塊濾波器106,係藉由將從加算部105所供給之影像進行過濾,以去除區塊失真。去區塊濾波器106,係將其結果所得之影像,供給至適應偏置濾波器141。
適應偏置濾波器141係具有,將從可逆解碼部102所供給之偏置依序儲存的緩衝區。又,適應偏置濾波器141係每一LCU地,基於從可逆解碼部102所供給之偏置濾波器資訊,而對去區塊濾波器106進行過適應去區塊濾波處理後之影像,進行適應偏置濾波處理。
具體而言,當偏置濾波器資訊中所含之儲存旗標為0時,適應偏置濾波器141係對LCU單位的去區塊濾波處理後之影像,使用該偏置濾波器資訊中所含之偏置,來進行種類資訊所示之種類的適應偏置濾波處理。
另一方面,當偏置濾波器資訊中所含之儲存旗標為1時,適應偏置濾波器141係對LCU單位的去區塊濾波處理後之影像,將該偏置濾波器資訊中所含之索引所示之位置上所儲存的偏置,予以讀出。然後,適應偏置濾波器141係使用已被讀出之偏置,進行種類資訊所示之種類的適應偏置濾波處理。適應偏置濾波器141,係將適應偏置濾波處理後之影像,供給至適應迴圈濾波器142。
適應迴圈濾波器142,係對從適應偏置濾波器141所供給之影像,使用從可逆解碼部102所供給之濾波係數,而每一LCU地進行適應迴圈濾波處理。適應迴圈濾波器142,係將其結果所得之影像,供給至畫格記憶體 109及畫面排序緩衝區107。
被積存在畫格記憶體109中的影像,係成為參照影像而透過開關110而被讀出,供給至運動補償部112或畫面內預測部111。
畫面排序緩衝區107,係將從去區塊濾波器106所供給之影像,以畫格單位加以記憶。畫面排序緩衝區107,係將記憶之編碼所需順序的畫格單位之影像,排序成原本的顯示順序,供給至D/A轉換部108。
D/A轉換部108,係將從畫面排序緩衝區107所供給之畫格單位的影像,進行D/A轉換,當作輸出訊號而輸出至未圖示的後段。
畫面內預測部111係以瓷磚及切片單位,使用從畫格記憶體109透過開關110而被讀出之未被去區塊濾波器106進行濾波的參照影像,進行從可逆解碼部102所供給之畫面內預測模式資訊所示的畫面內預測模式的畫面內預測處理。畫面內預測部111,係將其結果所生成的預測影像,供給至開關113。
運動補償部112,係以瓷磚及切片單位,基於從可逆解碼部102所供給之用來特定參照影像所需之資訊,而從畫格記憶體109透過開關110,讀出已被去區塊濾波器106過濾的參照影像。運動補償部112,係使用運動向量和參照影像,進行畫面間預測模式資訊所示之最佳畫面間預測模式的運動補償處理。運動補償部112,係將其結果所生成的預測影像,供給至開關113。
開關113,係從可逆解碼部102供給了畫面內預測模式資訊時,將從畫面內預測部111所供給之預測影像,供給至加算部105。另一方面,從可逆解碼部102供給了畫面間預測模式資訊時,開關113,係將從運動補償部112所供給之預測影像,供給至加算部105。
[檔案解碼處理之例子]
接著,參照圖11的流程圖,說明圖8之解碼裝置的檔案解碼處理。此外,此檔案解碼處理係,針對圖4之檔案生成處理所生成之檔案的處理。亦即,此檔案中的HRD參數之特性係為,即使startcode與filler data被刪除,仍會被再度設定。
於步驟S71中,檔案收取部71,係收取MP4之檔案,將所收取到的檔案,供給至參數取得部72。
於步驟S72中,參數取得部72係從MP4之檔案取得管理資訊moov,將已取得之moov,供給至資料讀出部74。資料讀出部74,係於步驟S73中,從moov取得SPS及PPS。於步驟S74中,參數取得部72係基於步驟S72中所取得之moov,取得mdat之解碼對象的Unit size。
於步驟S75中,參數取得部72係基於步驟S74中所取得之Unit size,而偵測出NAL。此時,隨著參照圖17及圖18而後述的檔案結構,例如,startcode也會被取得而參照。
於步驟S76中,資料讀出部74,係從步驟S75所測出的NAL讀出資料,供給至解碼器52。此外,此處,若NAL是SPS或PPS,則步驟S73所取得的moov的SPS或PPS,係為預設值,會使用NAL的SPS或PPS。
於步驟S77中,解碼器52係進行解碼處理。此時,解碼器52係依照HRD參數,進行解碼處理。
此處,於本技術中,為了保持HRD參數之特性,startcode與filler data係維持著被設定的狀態而不被刪除,就構成了檔案,因此可正確地進行解碼處理。
此外,假設,此HRD參數,係即使startcode與filler data被刪除,仍會於圖4的檔案生成處理中被再度設定,因此可正確地進行解碼處理。
例如,MP4檔案的情況下,有時候會從外部指定VBR或CBR的傳輸速率。VBR的情況下,從資料讀出部74,對解碼器52,串流係被直接輸出,但CBR的情況下,於資料讀出部74中,為了變成CBR,而會被追加Filler data或stuffing bit,HRD參數會被改寫。此時也是,MP4檔案的HRD參數係為正常,因此於解碼側也可正常地改寫。
[檔案解碼處理之另一例子]
接著,參照圖12的流程圖,說明圖8之解碼裝置的檔案解碼處理。此外,此檔案解碼處理係,針對圖5之檔案生成處理所生成之檔案的處理。亦即,此檔案的moov 中係被設定有,用來識別HRD參數之特性是否正確還是不同的識別參數。
於步驟S91中,檔案收取部71,係收取MP4之檔案,將所收取到的檔案,供給至參數取得部72。
於步驟S92中,參數取得部72係從MP4之檔案取得管理資訊moov,將已取得之moov,供給至資料讀出部74。資料讀出部74,係於步驟S93中,從moov取得SPS及PPS。於步驟S94中,參數取得部72係從步驟所取得之moov,取得HRD之識別參數,將已取得之HRD之識別參數,供給至解碼控制部73。於步驟S95中,參數取得部72係基於步驟S92中所取得之moov,取得mdat之解碼對象的Unit size。
於步驟S96中,參數取得部72係基於步驟S95中所取得之Unit size,而偵測出NAL。此時,隨著參照圖17及圖18而後述的檔案結構,例如,startcode也會被取得而參照。
於步驟S97中,資料讀出部74,係從步驟S96所測出的NAL讀出資料,供給至解碼器52。此外,此處,若NAL是SPS或PPS,則步驟S93所取得的moov的SPS或PPS,係為預設值,會使用NAL的SPS或PPS。
於步驟S98中,解碼控制部73係判定來自參數取得部72的HRD之識別參數是否為1。於步驟S98中,若判定HRD之識別參數為1,則處理係前進至步驟S99。
於步驟S99中,解碼器52係基於解碼控制部 73之控制,依照HRD參數,進行解碼處理。
另一方面,於步驟S98中,若判定HRD之識別參數不是1,則處理係前進至步驟S100。
於步驟S100中,解碼器52係基於解碼控制部73之控制,忽視HRD參數,進行解碼處理。
此處,於本技術中,為了保持HRD參數之特性,startcode與filler data係維持著被設定的狀態而不被刪除,就構成了檔案,因此可正確地進行解碼處理。
此外,假設,此HRD參數,係即使startcode與filler data被刪除,仍會於圖5的檔案生成處理中,用來識別正確與否之識別參數會被設定,因此可正確地進行解碼處理。
<2.第2實施形態>
[編碼器之構成例]
圖13係為了生成上述MP4之檔案所需的,一實施形態所述之影像編碼裝置201之構成之一例的區塊圖。參照圖13,影像編碼裝置201係具備:編碼部211、VCL緩衝區212、非VCL緩衝區213、檔案生成部214及控制部215。
此外,圖13的編碼部211,係對應於圖1的編碼器1。圖13的VCL緩衝區212、非VCL緩衝區213、檔案生成部214及控制部215,係對應於圖1的檔案生成部2。
編碼部211,係為依照HEVC方式而動作的編碼器。編碼部211,係從被連接在影像編碼裝置201上的攝影機或電視選台器等之動畫來源,依序取得應編碼之影像。然後,編碼部211係將已取得之影像,使用SPS、PPS及APS中所含之參數來進行編碼,生成影像資料的位元串流。又,編碼部211係將SPS及PPS,當作非VCL NAL單元而予以生成。另一方面,編碼部211係將filler data及影像資料的位元串流,當作VCL NAL單元而予以生成。另一方面,編碼部211係將filler data及影像資料的位元串流,透過VCL緩衝區212而輸出至檔案生成部214。又,編碼部211係將SPS及PPS,透過非VCL緩衝區213而輸出至檔案生成部214。VCL緩衝區212係將VCL NAL單元予以緩衝。非VCL緩衝區213係將非VCL NAL單元予以緩衝。檔案生成部214係生成,將已被編碼之一連串影像資料加以儲存的HEVC檔案151。更具體而言,檔案生成部214,係在HEVC檔案151的資料領域(例如mdat箱盒)中,將filler data及影像資料的位元串流,當作VCL NAL單元而按照解碼順序(decoding order)予以插入。又,檔案生成部214係在HEVC檔案151的標頭領域(例如moov箱盒)中,將SPS及PPS,當作非VCL NAL單元而予以插入。控制部215,係控制影像編碼裝置201中所被執行的編碼處理。
此外,控制部215係使用一種稱作HRD(Hypothetical Reference Decoder;假想參照解碼器的 假想之解碼器的模型,以使得解碼器之緩衝區不會發生破綻的方式,控制編碼串流之生成。在HEVC方式中,係作為編碼串流所應滿足的符合點(規格適合性的檢查點),定義有類型1及類型2這2種類的符合點。類型1的符合點,係被適用於VCL NAL單元及濾波器資料NAL單元,不被適用於非VCL NAL單元。類型2的符合點,係被適用於VCL NAL單元、濾波器資料NAL單元及非VCL NAL單元。在本實施形態中,filler data係不是非VCL NAL單元而被定義成VCL NAL單元。因此,控制部215係不只影像資料的位元串流,就連filler data也滿足類型1之符合點的方式,來控制編碼串流之生成即可。
[解碼器之構成例]
圖14係為了從上述的MP4之檔案解碼出影像所需的,一實施形態所述之影像解碼裝置之構成之一例的區塊圖。參照圖14,影像解碼裝置251係具備:VCL緩衝區261、非VCL緩衝區262、參數記憶體263、解碼部264及控制部265。
此外,圖14的VCL緩衝區261、非VCL緩衝區262、參數記憶體263、及控制部265,係對應於圖8的檔案讀取部51。又,圖14的解碼部264係對應於圖8的解碼器52。
VCL緩衝區261,係將從檔案之資料領域(例如mdat箱盒)所讀出的影像資料的位元串流及filler data ,予以緩衝。非VCL緩衝區262,係將從檔案的標頭領域(例如moov箱盒)所讀出的參數集,予以緩衝。參數記憶體263,係將透過非VCL緩衝區262而取得的檔案的標頭領域內的參數集,予以整批記憶。解碼部264,係為依照HEVC方式而動作的解碼器。解碼部264,係從透過VCL緩衝區261而從檔案之資料領域而逐次取得的位元串流,解碼出影像。解碼部264係在將影像予以解碼之際,會使用被參數記憶體263所記憶的SPS及PPS內的參數。控制部265,係控制影像解碼裝置251中所被執行的解碼處理。
<3.第3實施形態>
[先前的MP4視訊樣本結構]
圖15係先前的MP4視訊樣本結構之例子的圖示。構成視訊樣本的NAL單元,係被規定成如圖15所示。
於圖15的例子中,圖示了由複數NAL單元所構成的AVC串流。於AVC串流中,1圖像係視為1存取單元。作為構成存取單元的NAL單元之種類,係有:SPS、PPS、存取單元定界符(access unit delimiter)、SEI、IDR圖像、non IDR圖像、序列結尾(end of sequence)、及filler data等之單元。
在先前的MP4之規定中,1視訊樣本中係儲存有1存取單元。亦即,構成1存取單元的NAL單元,係分別被附加有Unit size,而儲存在1視訊樣本中。然而 ,構成存取單元的NAL單元中,若存在有SPS、PPS、filler data的NAL單元,則SPS、PPS、filler data的NAL單元係被從視訊樣本中排除。
例如,左邊第1個存取單元,係由存取單元定界符、SPS、PPS、SEI、IDR圖像的NAL單元所構成,但將該存取單元儲存至樣本之際,SPS、PPS的NAL單元係被排除。
左邊第2個存取單元,係由存取單元定界符、SPS、SEI、nonIDR圖像、及filler data的NAL單元所構成,但將該存取單元儲存至樣本之際,SPS及filler data的NAL單元係被排除。
左邊第3個存取單元,係由存取單元定界符、SPS、SEI、及nonIDR圖像的NAL單元所構成,但將該存取單元儲存至樣本之際,SPS的NAL單元係被排除。
[AVC串流的1存取單元的構成例]
圖16係AVC串流的1存取單元之構成例的圖示。
如圖16所示,實際上,在AVC串流的1存取單元中,係在各NAL單元之前是被附加有識別元(startcode),但在先前技術中,在儲存至樣本之際,該識別元也會被排除。
一旦該識別元(startcode)或filler data的NAL單元被排除,則如上述,HRD參數之特性就無法被保持。於是,在本技術中,係在MP4的樣本中,直接將存取 單元予以儲存。
[本技術的存取單元的儲存例]
圖17及圖18係本技術的MP4視訊樣本結構之例子的圖示。
於圖17的A的例子中,係在存取單元的開頭,附加有描述存取單元之大小的單元大小,在MP4樣本中,存取單元係被直接儲存。所謂直接,是指startcode保持被附加的狀態,而且有filler data的情況下,filler data不會被刪除的狀態。亦即,所謂直接,係指startcode與filler data之設定都維持不變。
在圖17的A的情況中,於上述的圖11的步驟S75或圖12的步驟S96中,Unit size份量的存取單元會被測出,在其中,基於startcode,偵測出NAL。然後,於圖11的步驟S76或圖12的步驟S97中,到下個startcode之前的NAL資料,會被取得。在圖17的A的情況中,係為非常簡單的構造。
於圖17的B的例子中,係在構成存取單元的各NAL單元之開頭,附加有包含startcode的描述各NAL單元之大小的單元大小,在MP4樣本中,存取單元係被直接儲存。
在圖17的B的情況中,於上述的圖11的步驟S75或圖12的步驟S96中,Unit size份量的startcode+NAL會被測出。然後,於圖11的步驟S76或圖12的步 驟S97中,startcode會從其中被拋棄,取得NAL之資料。此情況下,雖然和先前的size+data此種結構相近,實作也是和目前為止的狀況差不多,但必須要從所獲得的資料結構中,解譯出startcode。
於圖18的C的例子中,係在構成存取單元的各NAL單元之開頭,附加有描述各NAL單元之大小的單元大小,然後還被附加有包含0data的startcode之大小,亦即NAL之前的偏置大小。然後,在MP4樣本中,被附加有單元大小和偏置大小的NAL單元,係被直接儲存。
在圖18的C的情況中,於上述的圖11的步驟S75或圖12的步驟S96中,偏置大小會被取得,從跳過不讀之偏置份量之後的位置起,偵測出NAL。然後,於圖11的步驟S76或圖12的步驟S97中,單元大小份量的NAL之資料,會被取得。
此外,圖18的C係後述的圖19所示之HRD Conformance Box的FixedStartCodeSizeFlag為0時的例子。FixedStartCodeSizeFlag為0的情況下,start code size並非固定,因此offset size field中會儲存有startcode的大小。
相對於此,HRD Conformance Box的FixedStartCodeSizeFlag為1的情況下,MP4樣本係變成圖18的C’所示之結構。
於圖18的C’的例子中,係在構成存取單元的各NAL單元之開頭,附加有描述各NAL單元之大小的單 元大小,在MP4樣本中,NAL單元係被直接儲存。
亦即,FixedStartCodeSizeFlag為1的情況下,start code size=4bytes而為固定,因此offset size field係不需要放在startcode之前。
此時,就變成新的剖析結構。
於圖18的D的例子中,係在構成存取單元的各NAL單元之開頭,附加有描述各NAL單元之大小、startcode之大小、及startcode的單元大小,然後還被附加有包含0data的startcode之大小,亦即NAL之前的偏置大小。然後,在MP4樣本中,被附加有單元大小和偏置大小的NAL單元,係被直接儲存。
在圖18的D的情況中,於上述的圖11的步驟S75或圖12的步驟S96中,單元大小份量的偏置大小+startcode+NAL會被測出,偏置大小會被取得,從跳過不讀之偏置份量之後的位置起,偵測出NAL。然後,於圖11的步驟S76或圖12的步驟S97中,Unit size-(偏置大小+startcode)之份量的NAL之資料,會被取得。
此外,圖18的D係為,HRD Conformance Box的FixedStartCodeSizeFlag為0時的例子。FixedStartCodeSizeFlag為0的情況下,start code size並非固定,因此offset size field中會儲存有startcode的大小。
相對於此,HRD Conformance Box的FixedStartCodeSizeFlag為1的情況下,MP4樣本係變成 圖18的D’所示之結構。
於圖18的D’的例子中,係在構成存取單元的各NAL單元之開頭,附加有含startcode的描述各NAL單元之大小的單元大小,在MP4樣本中,NAL單元係被直接儲存。
亦即,FixedStartCodeSizeFlag為1的情況下,start code size=4bytes而為固定,因此offset size field係不需要放在startcode之前,圖18的D’之結構,是和上述圖17的B的結構相同。
此情況下,雖然和先前的size+data此種結構相近,實作也是和目前為止的狀況差不多,但變成位於所獲得之資料結構之開頭的偏置大小部分會被跳過不讀的剖析結構。又,此情況下,必須要解譯startcode。
[HRD Conformance Box擴充之例子]
圖19係HRD Conformance Box擴充之例子的圖示。以下也同樣表示HRD Conformance Box擴充之例子。
HRDCpnformanceFlag係為識別元,表示HRD特性是否已經因為startcode、filler data等被從元素串流中移除而改變。HRDConformanceFlag等於1時,表示HRD參數,例如buffering period SEI和picture timing SEI等,已經因為startcode、filler data等被從元素串流中移除而改變。
FixedStartCodeSizeFlag係為識別元,表示startcode在每一NAL中是固定4位元組大小。FixedStartCodeSizeFlag等於1時,沒有偏置欄位是給每 一NAL在樣本資料中去指出Start Code的大小。
OffsetSizeMinusOne係表示,在視訊樣本中的StartcodeLength欄位的位元組長度減1。例如,值0係表示大小為1位元組。此欄位的值係分別對應於1、2、或4位元組的碼長而為0、1、或3的其中之一。
HRDConformanceBox係可有效指出HRD一致性,即使在其他的選項中。
於圖19及上述的例子中,在HRD Conformance Box中,追加定義有用來識別有無startcode之大小資訊的旗標,亦即FixedStartCodeSizeFlag。藉此,如圖18的C’及圖18的D’所示,startcode之大小為固定的情況下,檔案結構就可變得簡單。
[本技術的存取單元的另一儲存例]
圖20係本技術的MP4視訊樣本結構之另一例子的圖示。
於圖20的E的例子中,係從mdat中刪除單元大小,然後,含有startcode的元素串流,係沒有變更而被直接儲存。
在圖20的E的情況中,為了維持各存取單元之偏置而用的新box,係如圖21及以下所示,被加進sample table。
sample_count是一個整數,它給出了後續表格中的條目數。
offset_count是一個整數,它給出了後續子表格中的條目數。
offset_size是一個整數,它給出了後續子表格中的偏置欄位的位元組大小。
offset是一個整數,它給出了NAL單元之開頭到它所包含之樣本的偏置。
此外,作為圖20的E之例子的取代,亦可不要加入上述的box,而是如圖22的E’的例子所示,在各樣本的開頭,含入該偏置的清單。
於圖22的E’的例子中,係在樣本的開頭,例如,含入5個存取單元的5個偏置的清單。
此外,圖17及圖18的MP4視訊樣本之檔案,係藉由上述圖3之構成的檔案生成部2,以圖4或圖5的檔案生成處理而加以生成。圖20及圖22的MP4視訊樣本的檔案也是,藉由上述圖3之構成的檔案生成部2,以圖4或圖5的檔案生成處理而加以生成。
又,圖17及圖18的MP4視訊樣本之檔案,係藉由上述圖9之構成的檔案讀取部51,以圖11或圖12的檔案解碼處理而被解碼。圖20及圖22的MP4視訊樣本之檔案也是,藉由上述圖9之構成的檔案讀取部51,以圖11或圖12的檔案解碼處理而被解碼。
[本技術的存取單元的再另一儲存例]
圖23係本技術的MP4視訊樣本結構之再另一例子的圖示。
於圖23的F的例子中,係從mdat中刪除單元大小,然後,含有startcode的元素串流,係沒有變更而被直接儲存。又,為了儲存各開始碼(startcode)及NAL單元(NAL unit)之長度,會適用ISO/IEC 14496-12中所規定的樣本輔助資訊機能。
對各開始碼及NAL單元之長度,作為樣本輔助資訊機能,而被附加有aux_info_type='nalz'和aux_info_type_parameter=0。樣本輔助資訊機能,係被所使用之樣本輔助資訊機能大小箱盒(SampleAuxiliaryInformationSizesBox)的'saiz'、和樣本輔助資訊機能偏置箱盒的'saio'所參照。
[樣本輔助資訊機能的格式例]
圖24係樣本輔助資訊機能的格式之例子的圖示。以下也同樣表示樣本輔助資訊機能的格式之例子。
StartcodeSizeMinusOne indicates the length in bytes of the Startcode Size field minus one. For example, a size of one byte is indicated with a value of 0. The value of this field shall be one of 0, 1, or 3 corresponding to a length encoded with 1, 2, or 4 bytes, resp ectively. NALUnitSizeMinusOne indicates the length in bytes of the NALUnit Size field minus one. For example, a size of one byte is indicated with a value of 0. The value of this field s hall be one of 0, 1, or 3 corresponding to a length encoded with 1, 2, or 4 bytes, respe ctively. StartcodeSize indicates the length in bytes of the Startcode of subsample in a sampleNAL UnitSize indicates the length in bytes of the Startcode of subsample in a sample
StartcodeSizeMinusOne係表示,開始碼大小欄位(Startcode Size field)的位元組長度減1而得的值。例如,若開始碼大小欄位的位元組長度是1位元組,則StartcodeSizeMinusOne的值係為0。StartcodeSizeMinusOne之值係分別對應於1位元組、2位元組、或4位元組的碼長而為0、1、或3。
NALUnitSizeMinusOne係表示,NAL單元大小欄位(NALUnit Size field)的位元組長度減1而得的值。例如,若NAL單元大小欄位的位元組長度是1位元組,則NALUnitSizeMinusOne的值係為0。NALUnitSizeMinusOne之值係分別對應於1位元組、2位元組、或4位元組的碼長而為0、1、或3。
StartcodeSize係表示,樣本(sample)之中的子樣本(subsample)的開始碼(Startcode)的位元組長度。
NALUnitSize係表示,樣本(sample)之中的子樣本(subsample)的NAL單元(NAL unit)的位元組長度。
只要設計成如上即可。又,樣本輔助資訊機能的格式亦可設計成如下。
[樣本輔助資訊機能的格式之另一例]
圖25係樣本輔助資訊機能的格式之另一例子的圖示。以下也同樣表示樣本輔助資訊機能的格式之另一例子。
FixedStartCodeSizeFlag is the identifier when startcode before each NAL unit has fixed si ze of 4 bytes. When FixedStartCodeSizeFlag is equal to 1. StartcodeSizeMinusOne indicates the length in bytes of the Startcode Size field minus one. For example, a size of one byte is indicated with a value of 0. The value of this field shall be one of 0, 1, or 3 corresponding to a length encoded with 1, 2, or 4 bytes, resp ectively. NALUnitSizeMinusOne indicates the length in bytes of the NALUnit Size field minus one. For example, a size of one byte is indicated with a value of 0. The value of this field s hall be one of 0, 1, or 3 corresponding to a length encoded with 1, 2, or 4 bytes, respe ctively. StartcodeSize indicates the length in bytes of the Startcode of subsample in a sample NALUnitSize indicates the length in bytes of the Startcode of subsample in a sample
FixedStartCodeSizeFlag係為旗標資訊,是用來表示各NAL單元(NAL unit)之前的開始碼(startcode)的大小是否為4位元組的旗標資訊。各NAL單元(NAL unit)之前的開始碼(startcode)的大小是4位元組時,此FixedStartCodeSizeFlag之值係被設定成1,其他的情況下則被設定成0。換言之,FixedStartCodeSizeFlag之值為1時,表示各NAL單元(NAL unit)之前的開始碼(startcode)的大小是4位元組,FixedStartCodeSizeFlag之值為0時,表示各NAL單元(NAL unit)之前的開始碼(startcode)的大小不是4位元組。
StartcodeSizeMinusOne、NALUnitSizeMinusOne、StartcodeSize、及NALUnitSize之各參數,係和圖24的情況相同。
HRDConformanceData box的FixedStartCodeSizeFlag為1時,若帶有每個start code的大小,則資料量有可能會無謂地增大。於是,藉由設計成如圖25的例子,此時,可變成只具有NALunit之大小的結構,可抑制資料量無謂的增大。此外,此情況下,HRDConformanceBox係變 成只具有HRDConformanceFlag。
此外,圖23的MP4視訊樣本之檔案,係藉由上述圖3之構成的檔案生成部2,以圖4或圖5的檔案生成處理而加以生成。
又,圖23的MP4視訊樣本之檔案,係藉由上述圖9之構成的檔案讀取部51,以圖11或圖12的檔案解碼處理而被解碼。
在此選項中,從mdat中刪除單元大小,然後,含有startcode的元素串流,係沒有變更而被直接儲存。為了儲存各startcode和NAL單元的長度,我們建議使用ISO/IEC 14496-12中所規定的樣本輔助資訊機能。圖23表示了這個選項之一例。
對各startcode和NAL單元之長度,作為樣本輔助資訊機能,而被附加有aux_info_type='nalz'和aux_info_type_parameter=0。樣本輔助資訊機能,係被所使用之SampleAuxiliaryInformationSizesBox('saiz')、和SampleAuxiliaryInformationOffsetsBox('saio')所參照。
這種類型之樣本的樣本輔助資訊機能的格式應為:
FixedStartCodeSizeFlag係為識別元,表示各NAL單元之前的startcode的大小是否為固定4位元組。若是則FixedStartCodeSizeFlag等於1。
SatartcodeSizeMinusOne係表示,Startcode Size欄位的位元組長度減1。例如,值0係表示大小為1位元組。此欄位的值係分別對應於1、2、或4位元組的碼長而為0 、1、或3的其中之一。
NALUnitSizeMinusOne係表示,NALUnit Size欄位的位元組長度減1。例如,值0係表示大小為1位元組。此欄位的值係分別對應於1、2、或4位元組的碼長而為0、1、或3的其中之一。
StartcodeSize係表示,樣本(sample)之中的子樣本(subsample)的開始碼(Startcode)的位元組長度。
NALUnitSize係表示,樣本(sample)之中的子樣本(subsample)的NAL單元(NAL unit)的位元組長度。
[本技術的MP4視訊樣本結構之比較]
於圖26的例子中,圖示了用來和上述的MP4視訊樣本結構做比較的表。
於圖17的B的存取單元之儲存例中,具有和先前(現行)的size+data之結構相近的優點。
於圖18的C或圖18的C’的存取單元之儲存例中,具有和先前(現行)的size+data之結構相近、單元大小的語意未被變更的優點。又,startcode之大小被固定時,其資料結構係具有和先前(現行)的檔案格式設計相同的優點。
於圖18的D或圖18的D’的存取單元之儲存例中,具有和先前(現行)的size+data之結構相近的優點。
於圖20的E或圖22的E’的存取單元之儲存 例中,具有對元素串流之儲存變得簡單(亦即不需要去除startcode,不需要加入單元大小或startcode大小)之優點。
此外,若樣本的設計一貫性(design consistency)是很重要的因素,則圖18的C或圖18的C’係為最佳的提案。然而,圖20的E或圖22的E’係為,為了不須任何變更就能儲存元素串流的最佳方法。
以上,上述的存取單元的儲存例子,全部都是為了在mdat中儲存startcode而提案(In this contribution,the following options are proposed to store startcode in mdat.(for both AVC and HEVC file format))。
此外,上述圖23的MP4視訊樣本結構,係亦可構成如以下圖27所示。
[本技術的存取單元的另一儲存例]
圖27係圖23的MP4視訊樣本結構之另一例子的圖示。
於圖27的G的例子中,係和圖23的F的例子同樣地,從mdat中刪除單元大小,然後,含有startcode的元素串流,係沒有變更而被直接儲存。其中,與圖23的F的例子不同,於元素串流中,各開始碼(startcode)係被包含在NAL單元(NAL unit)中,為了儲存已包含了開始碼之NAL單元的長度,會適用ISO/IEC 14496-12中所規定的樣本輔助資訊機能。
對各NAL單元之長度,作為樣本輔助資訊機 能,而被附加有aux_info_type='nalz'和aux_info_type_parameter=0。樣本輔助資訊機能,係被所使用之樣本輔助資訊機能大小箱盒(SampleAuxiliaryInformationSizesBox)的'saiz'、和樣本輔助資訊機能偏置箱盒的'saio'所參照。
亦即,於圖27的G的例子中,係作為樣本輔助資訊機能,而不儲存開始碼之長度,僅儲存已包含了開始碼之NAL單元的長度。因此,關於圖27的G的例子,係除了開始碼之長度未被儲存這點以外,其餘係和圖23的F的例子相同。
此外,圖27的MP4視訊樣本之檔案,係藉由上述圖3之構成的檔案生成部2,以圖4或圖5的檔案生成處理而加以生成。
又,圖27的MP4視訊樣本之檔案,係藉由上述圖9之構成的檔案讀取部51,以圖11或圖12的檔案解碼處理而被解碼。
<4.第4實施形態>
此處,先前,欲將MP4之元素串流儲存成MPEG2-PS時,必須拔除單元大小,放入開始碼而作成之。反之,欲將MPEG2-PS的元素串流儲存成MP4時,必須拔除開始碼,放入單元大小而作成之。亦即,至少會有2種類的串流存在,在進行檔案化之際,串流的變更係為必要,必須要有表示是否依循HRD conformance的旗標。
又,若隨著startcode的有無而使串流具有各種變化,則有可能喪失相容性。
對此,定義了儲存至MPEG2-PS的檔案中,含startcode的串流亦即位元組串流格式。藉由設計成使得往MP4檔案之儲存成為可能,就可提升兩檔案間的相容性。
於本技術中,係在樣本之中,為了能夠識別是否為位元組串流,而定義了用來儲存位元組串流格式之資訊所需的位元組串流格式資訊盒。
[位元組串流格式資訊盒]
接著,參照圖28來說明位元組串流格式資訊盒。位元組串流格式資訊盒,係為針對能夠放入參數集等的樣本條目,而被選用性地定義。能夠放入參數集等的樣本條目,係亦可當作位元組串流而儲存。此外,此時,為了將這是位元組串流之事實予以傳訊,該箱盒會被儲存。
於圖28的例子中,圖示了位元組串流格式資訊盒的樣式。
位元組串流格式資訊盒係被儲存在,媒體軌的樣本條目箱盒中的’avc3’,’avc4’,’mvc3’,’mvc4’,或’hevc1’之樣本條目中。’avc3’,’avc4’,’mvc3’,’mvc4’,或’hevc1’之樣本條目,係為可以放入參數集等的樣本條目。
此箱盒係為,當樣本資料是藉由ISO/IEC 14496-10中所制定的位元組串流格式而被構成時,就會被儲存。
子樣本資訊箱盒,係亦可被使用來儲存,含有1或更多之連續startcode的NAL單元大小。
子樣本係被定義成為,ISO/IEC 14496-10中所制定之1或更多之連續的位元組串流NAL單元。
箱盒類型(Box Type)係為’bsfi’,其中所含之(Container)係為’avc3’,’avc4’,’mvc3’,’mvc4’,或’hevc1’之樣本條目。並非必須事項(Mandatory),量 (Quantity)係為0或1。
位元組串流格式資訊盒,係將描述有位元組串流格式資訊的’bsfi’之箱盒予以擴充。
如以上所被構成的位元組串流格式資訊盒中,係如圖29所示,只需要將新格式的’avc5’,’avc6’,’mvc5’,’mvc6’,或’hevc2’之樣本條目予以放入,就可擴充樣本條目。
圖29係位元組串流格式資訊盒之另一例子的圖示。
此外,’avc3’,’avc4’,’mvc3’,’mvc4’,或’hevc1’係為可放入參數集的編解碼器的類型,但’avc3’,’avc4’,’mvc3’,’mvc4’,或’hevc1’的情況下,係會有放入startcode的時候和不放入的時候。
相對於此,如圖29所示,將樣本條目,例如,視為全部都放入有startcode的編解碼器之類型,而擴充成‘avc5’,‘avc6’,‘mvc5’,‘mvc6’or‘hev2‘等,藉由參照該樣本條目,就可識別樣本之中是否有位元組串流存在。
又,若樣本條目是’avc3’,’avc4’,’mvc3’,’mvc4’,或’hevc1’的情況下,藉由如以下所示般地構成位元組串流格式資訊,就可識別樣本之中是否有位元組串流存在(亦即是否有放入startcode)。
然後,還可表示子樣本的位元組串流之結構。
又,若是‘avc5’,‘avc6’,‘mvc5’,‘mvc6’or‘hev2‘的情況下,藉由如以下所示般地構成位元組串流格式資訊,就可表示子樣本的位元組串流之結構。
[位元組串流格式資訊的資料結構例]
圖30係各樣本條目中所儲存之位元組串流格式資訊之資料結構例的說明圖。
StartcodePresentFlag,係為表示樣本中是否存 在有Startcode的旗標。樣本之中的所有子樣本是在NAL單元之前都含有3位元組的Startcode的情況下,StartcodePresentFlag係設成1。ZeroBytePresentFlag係為表示在Startcode之前是否有1byte之零資料存在的旗標,此Flag為1時,表示Startcode是4位元組。
此外,亦可取代StartcodePresentFlag和ZeroBytePresentFlag,改成使用2位元的旗標,來表示Startcode是3位元組還是4位元組。
LeadingZeroBytePresentFlag,係為表示樣本中是否存在有0資料的旗標。在樣本中的子樣本之中,至少在1個子樣本的3位元組或4位元組之前,含有複數個1位元組之0x00的情況下,則LeadingZeroBytePresentFlag會設成1。LeadingZeroBytePresentFlag為0時,可得知子樣本之開頭係為固定長度開始碼。
TrailingZeroBytePresentFlag,係為表示樣本中是否存在有0資料的旗標。在樣本中的子樣本之中,至少在1個子樣本的3位元組的NAL單元之後,含有複數個1位元組之0x00的情況下,則TrailingZeroBytePresentFlag會設成1。
此外,雖然可有這些旗標當中的全部,但並非必須,又,亦可追加其他旗標。
[本技術的NAL單元的儲存例]
接著說明,使用上述位元組串流格式資訊時的NAL 單元之儲存例。圖31係在NAL單元之前後有0x00(0資料)的模態1時的MP4視訊樣本結構之例子的圖示。亦即,於圖31的例子中,圖示了上述的位元組串流格式資訊之旗標StartcodePresentFlag、ZeroBytePresentFlag、LeadingZeroBytePresentFlag、及TrailingZeroBytePresentFlag全部都是1時的MP4視訊樣本結構之例子。
圖31的例子中係表示了,樣本是由5個子樣本所構成的例子,5子樣本的大小,係被當成樣本大小,而被儲存在樣本大小箱盒中。
子樣本係由開頭的0資料(LeadingZeroBytes)、Startcode(4位元組)、NAL單元、及後尾的0資料(TrailingZeroBytes)所構成,從開頭的0資料起、至後尾的0資料為止的大小係被當成子樣本的大小,而被儲存在子樣本資訊箱盒中。亦即,因為在子樣本資訊箱盒中有子樣本的大小,所以可得知子樣本的交界。
亦可取代此子樣本資訊箱盒,改成和圖27的G的例子相同的結構來實施。作為樣本輔助資訊機能,而被附加有aux_info_type='bsfi'和aux_info_type_parameter=0。樣本輔助資訊機能,係被所使用之樣本輔助資訊機能大小箱盒(SampleAuxiliaryInformationSizesBox)的'saiz'、和樣本輔助資訊機能偏置箱盒的'saio'所參照。
此外,在業務用的CBR(constant bitrate:固 定碼率)中,有時候會有如此運用。因此,此模態1係適合被使用於,例如,業務用的全部都是以畫面內圖像所構成之串流。
又,LeadingZeroBytes與TrailingZeroBytes之區隔,係亦可例如隨著應用程式之運用而被設定。
圖32係為,子樣本是從Startcode起開始,沒有0x00(0資料)的模態2時的MP4視訊樣本結構之例子的圖示。亦即,於圖32的例子中係圖示了,StartcodePresentFlag與ZeroBytePresentFlag為1,LeadingZeroBytePresentFlag、及TrailingZeroBytePresentFlag為0時的MP4視訊樣本結構之例子。
圖32的例子中係表示了,樣本是由5個子樣本所構成的例子,5子樣本的大小,係被當成樣本大小,而被儲存在樣本大小箱盒中。
子樣本係由Startcode(4位元組)、及NAL單元所構成,從Startcode至NAL單元為止的大小係被當成子樣本的大小,而被儲存在子樣本資訊箱盒中。亦即,因為在子樣本資訊箱盒中有子樣本的大小,所以可得知子樣本的交界。
此模態2係為最簡單的例子。
圖33係為,子樣本是從Startcode起開始,在NAL之後有0x00(0資料)的模態3時的MP4視訊樣本結構之例子的圖示。亦即,於圖33的例子中係圖示了, StartcodePresentFlag、ZeroBytePresentFlag、及TrailingZeroBytePresentFlag為1,LeadingZeroBytePresentFlag為0時的MP4視訊樣本結構之例子。
圖33的例子中係表示了,樣本是由5個子樣本所構成的例子,5子樣本的大小,係被當成樣本大小,而被儲存在樣本大小箱盒中。
子樣本係由Startcode(4位元組)、NAL單元、及後尾的0資料(TrailingZeroBytes)所構成,從Startcode至後尾的0資料為止的大小係被當成子樣本的大小,而被儲存在子樣本資訊箱盒中。亦即,因為在子樣本資訊箱盒中有子樣本的大小,所以可得知子樣本的交界。
此外,此模態3的情況下,例如,在業務用的全部都是以畫面內圖像所構成之串流的剪接機中,藉由TrailingZero可知設成固定長度,因此具有容易剪接的優點。又,3byte start code也可被使用於電視會議系統等。
如以上所述,將位元組串流格式資訊予以箱盒化,定義了位元組串流格式資訊。例如,子樣本係被構成為,參照圖31乃至圖33而上述過之模態1至3之任一者,因此可在樣本內識別是否為位元組串流。
此外,圖31乃至圖33的各MP4視訊樣本之檔案,係藉由上述圖3之構成的檔案生成部2,以圖4或圖5的檔案生成處理而加以生成。
又,圖31乃至圖33的各MP4視訊樣本之檔案,係藉由上述圖9之構成的檔案讀取部51,以圖11或 圖12的檔案解碼處理而被解碼。
[位元組串流格式資訊的資料結構的另一例]
圖34係各樣本條目中所儲存之位元組串流格式資訊之資料結構例的說明圖。亦即,圖34的例子中係圖示了,參照圖30而上述過的資料結構的另一例。
StartcodePresentFlag,係為表示所有子樣本的Startcode之結構的2bit之旗標。
StartcodePresentFlag=00b係表示reserved。
StartcodePresentFlag=01b係表示,樣本中的所有子樣本係為在NAL單元之前,含有3byte之Startcode。
StartcodePresentFlag=10b係表示,樣本中的所有子樣本係為在NAL單元之前,含有3byte之Startcode、和1byte之ZeroByte(亦即是以4byte所構成)。
StartcodePresentFlag=11b係表示,樣本中的所有子樣本係為在NAL單元之前,含有3byte之Startcode、有時候含有1byte之ZeroByte資料。亦即,此情況下,由於會有3byte與4byte之Startcode混合存在的可能性,因此無法保證是01b還是10b。
此外,此例係為參照圖30所說明過之結構例的另一例子,是Startcode之大小為已知的例子。又,藉由2bits的旗標,表示係為3byte、4byte、或兩者混合存在。
LeadingZeroBytePresentFlag係表示,樣本中的子樣本之中,在至少1個子樣本的3byte或4byte的Startcode之前,含有複數個1byte之0x00。
TrailingZeroBytePresentFlag係表示,樣本中的子樣本之中,在至少1個子樣本的NAL單元之後,含有複數個1byte之0x00。
此外,於圖34的例子中也是,雖然可有這些旗標當中的全部,但並非必須,又,亦可追加其他旗標。
<5.第5實施形態>
[檔案轉換裝置之構成例]
圖35係適用了本技術的作為影像處理裝置的檔案轉換裝置之構成例之區塊圖。圖35的檔案轉換裝置300係為,例如,將MPEG-2 TS轉換成MP4檔案。
於圖35的例子中,檔案轉換裝置300係被構成為含有視訊串流解析部311、及圖1的檔案生成部2。
視訊串流解析部311,係將所被輸入之視訊串流的格式予以解析,若解析認為是MPEG-2 TS,則將視訊串流供給至檔案生成部2。
檔案生成部2,係進行將MPEG-2 TS轉換成 MP4檔案的處理。亦即,檔案生成部2係和圖1的例子同樣地,生成用來儲存MPEG-2 TS的MP4檔案。
[檔案轉換處理之例子]
接著,參照圖36的流程圖,說明圖35的檔案轉換裝置300的檔案轉換處理。
視訊串流解析部311,係於步驟S311中,將所被輸入之視訊串流的格式予以解析,若解析認為是MPEG-2 TS,則將視訊串流供給至檔案生成部2。
檔案生成部2係於步驟S312中,生成用來儲存MPEG-2 TS的MP4檔案。此外,此檔案生成處理,係和參照圖5而上述過的檔案生成處理為相同之處理,因此其說明係重複故省略之。
亦可如以上所述般地構成檔案轉換裝置300。
此外,於上記說明中,雖然是針對HEVC方式的編碼裝置及解碼裝置來說明,但本技術係如以下說明,亦可適用於AVC方式的編碼裝置及解碼裝置。
<6.第6實施形態>
[編碼裝置的構成例]
圖37係適用了本技術的作為影像處理裝置的編碼裝置之另一構成例之區塊圖。
在圖37所示的構成當中,和圖1之構成相同的構成係標示相同符號。至於重複的說明則會適宜省略。
圖37的編碼裝置之構成,係取代了編碼器1,改為設置編碼器401這點,是與圖1的構成不同。圖37的編碼裝置之構成,係設置有檔案生成部2這點,是與圖1的構成共通。
亦即,對編碼器401,係有畫格單位的攝影影像等之影像,被當成輸入訊號而輸入。又,在未圖示之編碼器401的前段中所被設定的SPS、將編碼資料所對應之影像之特性以每一序列地加以表示的VUI、SEI等,也會被輸入。
編碼器401,係使用SPS、PPS、VUI、SEI中所含之參數,將輸入訊號以AVC方式進行編碼。然後,編碼器401係從SPS、PPS、VUI、SEI,和其結果所得之編碼資料,生成MPEG-2 TS等之編碼串流,將已生成之編碼串流,供給至檔案生成部2。編碼器401的細節,將參照圖38而於後述。
檔案生成部2,係生成用來儲存,來自編碼器401之編碼串流(已被編碼之一連串影像資料)的檔案
亦即,於圖36的編碼裝置中,只有進行AVC方式所致之編碼處理這點,是和圖1的編碼裝置不同。
[編碼部的構成例]
圖38係圖37的編碼器401之構成例的區塊圖。
在圖38所示的構成當中,和圖2之構成相同的構成係標示相同符號。至於重複的說明則會適宜省略。
圖38的編碼器401,係含有:A/D轉換部11、畫面排序緩衝區12、演算部13、正交轉換部14、量化部15、可逆編碼部16、積存緩衝區17、逆量化部18、逆正交轉換部19、加算部20、去區塊濾波器21、畫格記憶體22、開關23、畫面內預測部24、運動預測.補償部25、預測影像選擇部26、及速率控制部27所構成。
亦即,圖38的編碼器401之構成,係適應偏置濾波器141和適應迴圈濾波器142被除外這點,以及可逆編碼部16不是HEVC方式而是以AVC方式進行編碼這點,是和圖2的構成不同。因此,於編碼器401中,不是以CU單位,而是以區塊單位進行編碼處理。
可逆編碼部16的編碼處理之對象,係除了適應偏置濾波器及適應迴圈濾波器的參數以外,基本上是和圖2的可逆編碼部16的情形相同。亦即,可逆編碼部16係和圖2的可逆編碼部16同樣地,將畫面內預測模式資訊,從畫面內預測部24加以取得。又,將畫面間預測模式資訊、運動向量、用來特定參照影像所需之資訊等,從運動預測.補償部25加以取得。
可逆編碼部16,係和圖2的可逆編碼部16同樣地,對從量化部15所供給之已被量化之係數,進行可變長度編碼(例如CAVLC等)、算術編碼(例如CABAC等)等之可逆編碼。
又,可逆編碼部16係和圖2的可逆編碼部16同樣地,將畫面內預測模式資訊、或者,畫面間預測模式 資訊、運動向量、用來特定參照影像之資訊、偏置濾波器資訊、及濾波器係數等,當作關於編碼之編碼資訊而進行可逆編碼。可逆編碼部16,係將已被可逆編碼之編碼資訊和係數,當成編碼資料而供給至積存緩衝區17並積存之。此外,已被可逆編碼之編碼資訊,係亦可被視為已被可逆編碼之係數的標頭資訊。
去區塊濾波器21,係藉由將從加算部20所供給之局部性解碼之影像進行過濾,以去除區塊失真。去區塊濾波器21,係將其結果所得之影像,供給至畫格記憶體22並積存之。
被積存在畫格記憶體22中的影像,係成為參照影像而透過開關23而被輸出至畫面內預測部24或運動預測.補償部25。
本技術係可適用於此種AVC方式的編碼裝置。
[解碼裝置的構成例]
圖39係將從圖37之編碼裝置所生成的檔案加以讀取並解碼的,適用了本技術的解碼裝置的另一構成例的區塊圖。
在圖39所示的構成當中,和圖8之構成相同的構成係標示相同符號。至於重複的說明則會適宜省略。
圖39的解碼裝置251之構成,係取代了解碼器52改為設置解碼器451這點,是與圖8的構成不同。 解碼裝置251之構成,係設置有檔案讀取部51這點,是與圖8的構成共通。
解碼裝置的檔案讀取部51,係收取由圖37之編碼裝置所生成的MP4之檔案,從所收取之檔案中,讀取將已被圖37之編碼器401所編碼的編碼串流予以構成的SPS、PPS、VUI、SEI、編碼資料等。檔案讀取部51,係將SPS、PPS、VUI、SEI、編碼資料,供給至解碼器451。
解碼器451係基於檔案讀取部51之控制,參照從檔案讀取部51所供給之SPS,PPS,VUI,SEI等,將從檔案讀取部51所供給之編碼資料,以AVC方式進行解碼。解碼器451,係將解碼結果所得之影像,當作輸出訊號而供給至後段。
亦即,於圖39的解碼裝置中,只有進行AVC方式所致之解碼處理這點,是和圖8的解碼裝置不同。
[解碼部之構成例]
圖40係圖39的解碼部261之構成例的區塊圖。
在圖40所示的構成當中,和圖10之構成相同的構成係標示相同符號。至於重複的說明則會適宜省略。
圖40的解碼器451係由:積存緩衝區101、可逆解碼部102、逆量化部103、逆正交轉換部104、加算部105、去區塊濾波器106、畫面排序緩衝區107、D/A 轉換部108、畫格記憶體109、開關110、畫面內預測部111、運動補償部112、及開關113所構成。
圖40的解碼器451之構成,係適應偏置濾波器141和適應迴圈濾波器142被除外這點,以及可逆解碼部102不是HEVC方式而是以AVC方式進行解碼這點,是和圖10的構成不同。因此,於解碼部261中,不是以CU單位,而是以區塊單位進行解碼處理。
可逆解碼部102的解碼處理之對象,係除了適應偏置濾波器及適應迴圈濾波器的參數以外,基本上是和圖10的可逆解碼部102的情形相同。亦即,可逆解碼部102,係和圖10的可逆解碼部102同樣地,對來自積存緩衝區101的編碼資料,實施可變長度編碼、算術解碼部等之可逆解碼,以獲得已被量化之係數和編碼資訊。可逆解碼部102,係將已被量化之係數,供給至逆量化部103。
又,可逆解碼部102係和圖10的可逆解碼部102同樣地,將作為編碼資訊的畫面內預測模式資訊等,供給至畫面內預測部111,將運動向量、用來特定參照影像所需之資訊、畫面間預測模式資訊等,供給至運動補償部112。然後,可逆解碼部102係將作為編碼資訊的畫面內預測模式資訊或畫面間預測模式資訊,供給至開關113。
去區塊濾波器106,係藉由將從加算部105所供給之影像進行過濾,以去除區塊失真。去區塊濾波器106,係將其結果所得之影像,供給至畫格記憶體109及 畫面排序緩衝區107。
本技術係可適用於此種AVC方式的解碼裝置。
此外,於上記說明中,雖然說明了MP4檔案格式的例子,但檔案格式係不限定於MP4檔案格式或AVC檔案格式。只要是和本技術的課題、效果相同,則對於別的檔案格式、傳輸之際所使用的串流、儲存在檔案之際所使用的串流,都可同樣地適用。
又,本揭露係可適用於,例如,將像是HEVC方式等這類藉由離散餘弦轉換等之正交轉換與運動補償所壓縮而成的影像資訊(位元串流),透過衛星播送、有線電視、網際網路、或行動電話機等之網路媒介而收訊時所使用的影像編碼裝置及影像解碼裝置。又,本揭露係可適用於,在光、磁碟、及快閃記憶體這類記憶媒體上進行處理之際所使用的影像編碼裝置及影像解碼裝置。
此外,上述一連串處理,係可藉由硬體來執行,也可藉由軟體來執行。在以軟體來執行一連串之處理時,構成該軟體的程式,係可安裝至電腦。此處,電腦係包含:被組裝在專用硬體中的電腦、或藉由安裝各種程式而可執行各種機能的例如通用之個人電腦等。
圖41係以程式來執行上述一連串處理的電腦的硬體之構成例的區塊圖。
於電腦800中,CPU(Central Processing Unit)801、ROM(Read Only Memory)802、RAM(Random Access Memory)803,係藉由匯流排804而被彼此連接。
在匯流排804上係還連接有輸出入介面805。輸出入介面805上係連接有:輸入部806、輸出部807、記憶部808、通訊部809、及驅動機810。
輸入部806,係由鍵盤、滑鼠、麥克風等所成。輸出部807係由顯示器、揚聲器等所成。記憶部808,係由硬碟或非揮發性記憶體等所成。通訊部809係由網路介面等所成。驅動機810係驅動:磁碟、光碟、光磁碟、或半導體記憶體等之可移除式媒體811。
在如以上構成的電腦中,藉由CPU801而例如將記憶部808中所記憶之程式透過輸出入介面805及匯流排804,而載入至RAM803裡並加以執行,就可進行上述一連串處理。
電腦800(CPU801)所執行的程式,係可記錄在例如封裝媒體等之可移除式媒體811中而提供。又,程式係可透過區域網路、網際網路、數位衛星播送這類有線或無線的傳輸媒介而提供。
在電腦中,程式係藉由將可移除式媒體811裝著至驅動機810,就可透過輸出入介面805,安裝至記憶部808。又,程式係可透過有線或無線之傳輸媒體,以通訊部809接收之,安裝至記憶部808。除此以外,程式係可事前安裝在ROM802或記憶部808中。
此外,電腦所執行的程式,係可為依照本說明書所說明之順序而在時間序列上進行處理的程式,也可 平行地、或呼叫進行時等必要之時序上進行處理的程式。
此外,在本說明書中,雖然記述記錄媒體中所記錄之程式的步驟,是按照記載的順序而在時間序列上順序進行之處理,但當然並不一定要是時間序列上的處理,亦包含平行或個別執行之處理。
又,於本說明書中,所謂的系統,係指由複數設備(裝置)所構成之裝置全體。
又,於以上說明中,亦可將以1個裝置(或處理部)做說明的構成加以分割,成為複數裝置(或處理部)而構成之。反之,亦可將以上說明中以複數裝置(或處理部)做說明的構成總結成1個裝置(或處理部)而構成之。又,對各裝置(或各處理部)之構成,當然亦可附加上述以外之構成。再者,若系統全體的構成或動作是實質上相同,則亦可使某個裝置(或處理部)之構成的一部分被包含在其他裝置(或其他處理部)之構成中。亦即,本技術係不限定於上述的實施形態,在不脫離本技術主旨的範圍內可做各種變更。
此外,本技術的實施形態係不限定於上述實施形態,在不脫離本技術主旨的範圍內可做各種變更。
又,例如,本技術係亦可將1個機能透過網路而分擔給複數台裝置,採取共通進行處理的雲端運算之構成。
又,上述的流程圖中所說明的各步驟,係可由1台裝置來執行以外,亦可由複數台裝置來分擔執行。
甚至,若1個步驟中含有複數處理的情況下,該1個步驟中所含之複數處理,係可由1台裝置來執行以外,也可由複數台裝置來分擔執行。
上述實施形態所述之影像編碼裝置及影像解碼裝置,係可應用於衛星播送、有線TV等之有線播送、網際網路上的配送、及藉由蜂巢基地台通訊而對終端支配送等的送訊機或是收訊機,在光碟、磁碟及快閃記憶體等之媒體中記錄影像的記錄裝置、或從這些記憶媒體中再生出影像的再生裝置等各式各樣的電子機器。以下說明4個應用例。
<7.應用例>
[第1應用例:電視受像機]
圖42係圖示了適用上述實施形態的電視裝置的概略構成之一例。電視裝置900係具備:天線901、選台器902、解多工器903、解碼器904、映像訊號處理部905、顯示部906、聲音訊號處理部907、揚聲器908、外部介面部909、控制部910、使用者介面911、及匯流排912。
選台器902,係從透過天線901所接收之播送訊號中,抽出所望頻道之訊號,並將所抽出之訊號予以解調。然後,選台器902係將解調所得到之編碼位元串流,輸出至解多工器903。亦即,選台器902係將影像所被編碼而成的編碼串流予以接收,具有電視裝置900中的傳輸手段之功能。
解多工器903係從編碼位元串流中分離出視聽對象之節目的映像串流及聲音串流,將所分離之各串流,輸出至解碼器904。又,解多工器903,係從編碼位元串流中抽出EPG(Electronic Program Guide)等輔助性資料,將所抽出的資料,供給至控制部910。此外,解多工器903係當編碼位元串流是有被擾頻時,則亦可進行去擾頻。
解碼器904,係將從解多工器903所輸入的映像串流及聲音串流,予以解碼。然後,解碼器904係將解碼處理所生成之映像資料,輸出至映像訊號處理部905。又,解碼器904係將解碼處理所生成之聲音資料,輸出至聲音訊號處理部907。
映像訊號處理部905,係將從解碼器904所輸入之映像資料予以再生,在顯示部906上顯示出映像。又,映像訊號處理部905,係亦可將透過網路而供給之應用程式畫面,顯示在顯示部906。又,映像訊號處理部905,係亦可針對映像資料,隨應於設定,而進行例如雜訊去除等之追加的處理。甚至,映像訊號處理部905係亦可生成例如選單、按鈕或游標等之GUI(Graphical User Interface)的影像,將所生成之影像重疊至輸出影像。
顯示部906,係受從映像訊號處理部905所供給之驅動訊號所驅動,在顯示裝置(例如液晶顯示器、電漿顯示器或OELD(Organic ElectroLuminescence Display)(有機EL顯示器)等)之映像面上,顯示出映像或影像。
聲音訊號處理部907,係針對從解碼器904所 輸入的聲音資料,進行D/A轉換及增幅等之再生處理,使聲音從揚聲器908輸出。又,聲音訊號處理部907,係亦可針對聲音資料,進行雜訊去除等之追加的處理。
外部介面909,係為用來連接電視裝置900與外部機器或網路所需的介面。例如,透過外部介面909所接收之映像串流或聲音串流,係亦可被解碼器904所解碼。亦即,外部介面909係亦為將影像所被編碼而成的編碼串流予以接收,具有電視裝置900中的傳輸手段之功能。
控制部910係具有CPU等之處理器、以及RAM及ROM等之記憶體。記憶體係記憶著,被CPU所執行之程式、程式資料、EPG資料、及透過網路所取得之資料等。被記憶體所記憶的程式,係例如在電視裝置900啟動時被CPU讀取、執行。CPU係藉由執行程式,而隨應於從例如使用者介面911所輸入的操作訊號,來控制電視裝置900的動作。
使用者介面911,係和控制部910連接。使用者介面911係具有例如,用來讓使用者操作電視裝置900所需的按鈕及開關、以及遙控訊號的收訊部等。使用者介面911,係偵測透過這些構成要素而由使用者所做之操作,生成操作訊號,將所生成之操作訊號,輸出至控制部910。
匯流排912,係將選台器902、解多工器903、解碼器904、映像訊號處理部905、聲音訊號處理部907、外部介面909及控制部910,彼此連接。
在如此構成的電視裝置900中,解碼器904係具有上述實施形態所述之影像解碼裝置(例如由圖8的檔案讀取部51及解碼器52所成的解碼裝置)的機能。藉此,在電視裝置900中進行影像解碼之際,可以減輕傳輸之際所使用的串流或儲存在檔案之際所使用的串流在解碼之際之處理的負擔。
[第2應用例:行動電話機]
圖43係圖示了適用上述實施形態的行動電話機的概略構成之一例。行動電話機920係具備:天線921、通訊部922、聲音編解碼器923、揚聲器924、麥克風925、攝影機部926、影像處理部927、多工分離部928、記錄再生部929、顯示部930、控制部931、操作部932、及匯流排933。
天線921係被連接至通訊部922。揚聲器924及麥克風925係被連接至聲音編解碼器923。操作部932,係被連接至控制部931。匯流排933係將通訊部922、聲音編解碼器923、攝影機部926、影像處理部927、多工分離部928、記錄再生部929、顯示部930、及控制部931,彼此連接。
行動電話機920,係在包含語音通話模式、資料通訊模式、攝影模式及電視電話模式的各種動作模式下,進行聲音訊號之收送訊、電子郵件或影像資料之收送訊、影像之攝影、及資料之記錄等動作。
於語音通話模式中,由麥克風925所生成的類比聲音訊號,係被供給至聲音編解碼器923。聲音編解碼器923,係將類比聲音訊號轉換成聲音資料,將已被轉換之聲音資料,進行A/D轉換並壓縮。然後,聲音編解碼器923係將壓縮後的聲音資料,輸出至通訊部922。通訊部922,係將聲音資料進行編碼及調變,生成送訊訊號。然後,通訊部922係將已生成之送訊訊號,透過天線921而發送至基地台(未圖示)。又,通訊部922係將透過天線921所接收之無線訊號進行增幅及頻率轉換,取得收訊訊號。然後,通訊部922,係將收訊訊號進行解調及解碼而生成聲音資料,將已生成之聲音資料,輸出至聲音編解碼器923。聲音編解碼器923,係將聲音資料進行解壓縮及D/A轉換,生成類比聲音訊號。然後,聲音編解碼器923係將已生成之聲音訊號,供給至揚聲器924而輸出聲音。
又,在資料通訊模式下,例如,控制部931係隨應於使用者透過操作部932所做的操作,來生成構成電子郵件的文字資料。又,控制部931係將文字顯示在顯示部930。又,控制部931,係隨應於透過操作部932而從使用者下達的送訊指示而生成電子郵件資料,將已生成之電子郵件資料,輸出至通訊部922。通訊部922,係將電子郵件資料進行編碼及調變,生成送訊訊號。然後,通訊部922係將已生成之送訊訊號,透過天線921而發送至基地台(未圖示)。又,通訊部922係將透過天線921所接收之無線訊號進行增幅及頻率轉換,取得收訊訊號。然後
,通訊部922係將收訊訊號進行解調及解碼以復原出電子郵件資料,將已復原之電子郵件資料,輸出至控制部931。控制部931,係令顯示部930顯示出電子郵件的內容,同時,令電子郵件資料被記憶至記錄再生部929的記憶媒體。
記錄再生部929,係具有可任意讀寫的記憶媒體。例如,記憶媒體係可為RAM或快閃記憶體等之內建型的記憶媒體,亦可為硬碟、磁碟、光磁碟、光碟、USB(Universal Serial Bus)記憶體、或記憶卡等之外部裝著型的記憶媒體。
又,於攝影模式中,例如,攝影機部926係拍攝被攝體而生成影像資料,將已生成之影像資料,輸出至影像處理部927。影像處理部927,係將從攝影機部926所輸入之影像資料予以編碼,使編碼串流被記憶至記憶再生部929的記憶媒體中。
又,於電視電話模式中,例如,多工分離部928係將已被影像處理部927所編碼之映像串流、和從聲音編解碼器923所輸入之聲音串流,進行多工化,將已多工化之串流,輸出至通訊部922。通訊部922,係將串流進行編碼及調變,生成送訊訊號。然後,通訊部922係將已生成之送訊訊號,透過天線921而發送至基地台(未圖示)。又,通訊部922係將透過天線921所接收之無線訊號進行增幅及頻率轉換,取得收訊訊號。這些送訊訊號及收訊訊號中係可含有編碼位元串流。然後,通訊部922係 將收訊訊號進行解調及解碼以復原出串流,將已復原之串流,輸出至多工分離部928。多工分離部928係從所被輸入之串流中,分離出映像串流及聲音串流,將映像串流輸出至影像處理部927、將聲音串流輸出至聲音編解碼器923。影像處理部927,係將映像串流予以解碼,生成映像資料。映像資料係被供給至顯示部930,藉由顯示部930而顯示出一連串之影像。聲音編解碼器923,係將聲音串流進行解壓縮及D/A轉換,生成類比聲音訊號。然後,聲音編解碼器923係將已生成之聲音訊號,供給至揚聲器924而輸出聲音。
在如此構成的行動電話機920中,影像處理部927係具有:上述實施形態所述之影像編碼裝置(例如由圖1的編碼器1及檔案生成部2所成之編碼裝置)及影像解碼裝置(例如由圖8的檔案讀取部51及解碼器52所成之解碼裝置)之機能。藉此,在行動電話機920中進行影像編碼及解碼之際,可以減輕傳輸之際所使用的串流或儲存在檔案之際所使用的串流在解碼之際之處理的負擔。
[第3應用例:記錄再生裝置]
圖44係圖示了適用上述實施形態的記錄再生裝置的概略構成之一例。記錄再生裝置940係例如,將所接收之播送節目的聲音資料及映像資料進行編碼,而記錄至記錄媒體。又,記錄再生裝置940係亦可,例如,將從其他裝置所取得之聲音資料及映像資料進行編碼,而記錄至記錄 媒體。又,記錄再生裝置940係例如,隨應於使用者之指示,將記錄媒體中所記錄之資料,在監視器及揚聲器上進行再生。此時,記錄再生裝置940,係將聲音資料及映像資料予以解碼。
記錄再生裝置940係具備:選台器941、外部介面942、編碼器943、HDD(Hard Disk Drive)944、碟片驅動機945、選擇器946、解碼器947、OSD(On-Screen Display)948、控制部949、及使用者介面950。
選台器941,係從透過天線(未圖示)所接收之播送訊號中,抽出所望頻道之訊號,並將所抽出之訊號予以解調。然後,選台器941係將解調所得到之編碼位元串流,輸出至選擇器946。亦即,選台器941係具有記錄再生裝置940中的傳輸手段之功能。
外部介面942,係為用來連接記錄再生裝置940與外部機器或網路所需的介面。外部介面942係可為例如IEEE1394介面、網路介面、USB介面、或快閃記憶體介面等。例如,透過外部介面942所接收之映像資料及聲音資料,係被輸入至編碼器943。亦即,外部介面942係具有記錄再生裝置940中的傳輸手段之功能。
編碼器943,係當從外部介面942所輸入之映像資料及聲音資料是未被編碼的情況下,則將映像資料及聲音資料予以編碼。然後,編碼器943係將編碼位元串流,輸出至選擇器946。
HDD944,係將映像及聲音等之內容資料所被 壓縮而成的編碼位元串流、各種程式及其他資料,記錄在內部的硬碟裡。又,HDD944係在映像及聲音之再生時,將這些資料從硬碟中讀出。
碟片驅動機945,係對所裝著之記錄媒體,進行資料記錄及讀出。被裝著在碟片驅動機945的記錄媒體,係可為例如DVD碟片(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)或Blu-ray(註冊商標)碟片等。
選擇器946,係在映像及聲音之記錄時,係選擇從選台器941或編碼器943所輸入的編碼位元串流,將已選擇之編碼位元串流,輸出至HDD944或碟片驅動機945。又,選擇器946,係在映像及聲音之再生時,將從HDD944或碟片驅動機945所輸入之編碼位元串流,輸出至解碼器947。
解碼器947,係將編碼位元串流予以解碼,生成映像資料及聲音資料。然後,解碼器947係將已生成之映像資料,輸出至OSD948。又,解碼器904係將已生成之聲音資料,輸出至外部的揚聲器。
OSD948,係將從解碼器947所輸入之映像資料予以再生,顯示出映像。又,OSD948係亦可對所顯示之映像,重疊上例如選單、按鈕或游標等之GUI的影像。
控制部949係具有CPU等之處理器、以及RAM及ROM等之記憶體。記憶體係記憶著CPU所執行的程式、及程式資料等。被記憶體所記憶的程式,係例如 在記錄再生裝置940啟動時被CPU讀取、執行。CPU係藉由執行程式,而隨應於從例如使用者介面950所輸入的操作訊號,來控制記錄再生裝置940的動作。
使用者介面950,係和控制部949連接。使用者介面950係具有例如,用來讓使用者操作記錄再生裝置940所需的按鈕及開關、以及遙控訊號的收訊部等。使用者介面950,係偵測透過這些構成要素而由使用者所做之操作,生成操作訊號,將所生成之操作訊號,輸出至控制部949。
在如此構成的記錄再生裝置940中,編碼器943係具有上述實施形態所述之影像編碼裝置(例如由圖1的編碼器1及檔案生成部2所成之編碼裝置)之機能。又,解碼器947係具有上述實施形態所述之影像解碼裝置(例如由圖8的檔案讀取部51及解碼器52所成的解碼裝置)的機能。藉此,在記錄再生裝置940中進行影像編碼及解碼之際,可以減輕傳輸之際所使用的串流或儲存在檔案之際所使用的串流在解碼之際之處理的負擔。
[第4應用例:攝像裝置]
圖45係圖示了適用上述實施形態的攝像裝置的概略構成之一例。攝像裝置960係拍攝被攝體而生成影像,將影像資料進行編碼,而記錄至記錄媒體。
攝像裝置960係具備:光學區塊961、攝像部962、訊號處理部963、影像處理部964、顯示部965、外 部介面966、記憶體967、媒體驅動機968、OSD969、控制部970、使用者介面971、及匯流排972。
光學區塊961係被連接至攝像部962。攝像部962係被連接至訊號處理部963。顯示部965係被連接至影像處理部964。使用者介面971係被連接至控制部970。匯流排972係將影像處理部964、外部介面966、記憶體967、媒體驅動機968、OSD969、及控制部970,彼此連接。
光學區塊961,係具有對焦透鏡及光圈機構等。光學區塊961,係使被攝體的光學像,成像在攝像部962的攝像面。攝像部962,係具有CCD(Charge Coupled Device)或CMOS(Complementary Metal Oxide Semiconductor)等之影像感測器,將成像在攝像面的光學像,藉由光電轉換而轉換成電氣訊號的影像訊號。然後,攝像部962係將影像訊號,輸出至訊號處理部963。
訊號處理部963,係對從攝像部962所輸入的影像訊號進行KNEE補正、γ補正、色彩補正等各種相機訊號處理。訊號處理部963,係將攝影機訊號處理後的影像資料,輸出至影像處理部964。
影像處理部964,係將從訊號處理部963所輸入的影像資料予以編碼,生成編碼資料。然後,影像處理部964,係將已生成之編碼資料,輸出至外部介面966或媒體驅動機968。又,影像處理部964,係將從外部介面966或媒體驅動機968所輸入之編碼資料予以解碼,生成 影像資料。然後,影像處理部964係將已生成之影像資料,輸出至顯示部965。又,影像處理部964,係亦可將從訊號處理部963所輸入的影像資料,輸出至顯示部965而顯示出影像。又,影像處理部964,係亦可將從OSD969所取得之顯示用資料,重疊至對顯示部965輸出的影像上。
OSD969係生成例如選單、按鈕或游標等之GUI的影像,將所生成之影像,輸出至影像處理部964。
外部介面966,係被構成為例如USB輸出入端子。外部介面966,係例如在影像的列印時,將攝像裝置960與印表機做連接。又,外部介面966上係因應需要而連接有驅動機。驅動機上係裝著有例如磁碟或光碟等之可移除式媒體,從可移除式媒體所讀出的程式,係可被安裝至攝像裝置960。甚至,外部介面966係還可被構成為連接LAN或網際網路等之網路的網路介面。亦即,外部介面966係具有攝像裝置960中的傳輸手段之功能。
被裝著至媒體驅動機968的記錄媒體,係可為例如磁碟、光磁碟、光碟、或半導體記憶體等之可任意讀寫之可移除式媒體。又,亦可被構成為,記錄媒體是對媒體驅動機968固定裝著,例如,內建型硬碟機或SSD(Solid State Drive)這類非可移除式的記憶部。
控制部970係具有CPU等之處理器、以及RAM及ROM等之記憶體。記憶體係記憶著CPU所執行的程式、及程式資料等。被記憶體所記憶的程式,係例如在攝像裝置960啟動時被CPU讀取、執行。CPU係藉由 執行程式,而隨應於從例如使用者介面971所輸入的操作訊號,來控制攝像裝置960的動作。
使用者介面971,係和控制部970連接。使用者介面971係具有例如,用來讓使用者操作攝像裝置960所需的按鈕及開關等。使用者介面971,係偵測透過這些構成要素而由使用者所做之操作,生成操作訊號,將所生成之操作訊號,輸出至控制部970。
在如此構成的攝像裝置960中,影像處理部964係具有:上述實施形態所述之影像編碼裝置(例如由圖1的編碼器1及檔案生成部2所成之編碼裝置)及影像解碼裝置(例如由圖8的檔案讀取部51及解碼器52所成之解碼裝置)之機能。藉此,在攝像裝置960中進行影像編碼及解碼之際,可以減輕傳輸之際所使用的串流或儲存在檔案之際所使用的串流在解碼之際之處理的負擔。
<8.第7實施形態>
[其他實施例]
以上雖然說明了適用本技術的裝置或系統等之例子,但本技術係不限於此,亦可成為構成這類裝置或系統之裝置中所搭載的任意構成,例如,作為系統LSI(Large Scale Integration)等的處理器、使用複數處理器等的模組、使用複數模組等的單元、對單元再附加其他機能而成的套組等(亦即裝置之部分構成)而實施之。
[視訊套組]
將本技術以套組來實施之情形的例子,參照圖46來說明。圖46係圖示了適用了本技術之視訊套組的概略構成之一例。
近年來,隨著電子機器的多機能化的進展,在其開發或製造時,將其部分構成予以販售或提供等而實施的情況下,不只有以具有單一機能之構成來做實施的情況,還可將具有相關連之機能的複數構成加以組合,成為具有複數機能的1套組的方式來進行實施的情形,也是很常看到的。
圖46所示的視訊套組1300,係為此種被多機能化之構成,是對具有影像編碼或解碼(可為其中一方,亦可為雙方)之相關機能的裝置,組合具有與該機能相關連之其他機能的裝置而成者。
如圖46所示,視訊套組1300係具有:視訊模組1311、外部記憶體1312、電力管理模組1313、及前端模組1314等之模組群,和具有連接性構件1321、相機1322、及感測器1323等之關連機能的裝置。
模組係為,將彼此具有關連之數個零件性機能予以整合,成為具有整合性機能之零件而成者。具體的實體構成係為任意,但可想成例如,分別具有機能的複數處理器、電阻或電容器等之電子電路元件、將其他裝置等配置在配線基板等而一體化所成者。又,亦可考慮對模組組合其他模組或處理器等而變成新的模組。
圖46的例子中,視訊模組1311係為具有影像處理相關機能之構成加以組合而成,具有應用程式處理器、視訊處理器、寬頻數據機1333、及RF模組1334。
處理器係將具有所定機能之構成,藉由SOC(System On a Chip)而集縮在半導體晶片而成,有時也會被稱作例如系統LSI(Large Scale Integration)等。此具有所定機能之構成,係可為邏輯電路(硬體構成),也可為CPU、ROM、RAM等、和使用這些而被執行的程式(軟體構成),亦可為這兩者之組合。例如,亦可為,處理器係具有邏輯電路和CPU、ROM、RAM等,機能之一部分是藉由邏輯電路(硬體構成)來實現,其他機能則是藉由CPU中所執行之程式(軟體構成)來實現。
圖46的應用程式處理器1331,係為執行影像處理相關應用程式的處理器。此應用程式處理器1331中所被執行的應用程式,係為了實現所定之機能,而不只進行演算處理,還可因應需要而控制例如視訊處理器1332等、視訊模組1311內外之構成。
視訊處理器1332係為,具有影像編碼或解碼(其中一方或雙方)之相關機能的處理器。
寬頻數據機1333係為,透過網際網路或公眾電話線路網等寬頻線路所進行的有線或無線(或其兩者)之進行關於寬頻通訊之處理的處理器(或是模組)。例如,寬頻數據機1333,係將送訊之資料(數位訊號)進行數位調變等而轉換成類比訊號,或將所接收到之類比訊號予以解調 而轉換成資料(數位訊號)等。例如,寬頻數據機1333,係將視訊處理器1332所處理的影像資料或影像資料被編碼而成之串流、應用程式、設定資料等任意之資訊,進行數位調變、解調。
RF模組1334係為,對透過天線而收送之RF(Radio Frequency)訊號,進行頻率轉換、調變解調、增幅、濾波處理等之模組。例如,RF模組1334係對寬頻數據機1333所生成之基頻訊號,進行頻率轉換等,以生成RF訊號。又,例如,RF模組1334,係對透過前端模組1314而接收到的RF訊號,進行頻率轉換等,以生成基頻訊號。
此外,圖46中如虛線1341所示,亦可將應用程式處理器1331和視訊處理器1332一體化,構成為1個處理器。
外部記憶體1312,係被設置在視訊模組1311的外部,係為具有被視訊模組1311所利用之記憶裝置的模組。此外部記憶體1312的記憶裝置,係無論藉由何種實體構成來實現均可,但一般而言會被利用於畫格單位之影像資料這類大容量資料之儲存,因此以例如DRAM(Dynamic Random Access Memory)這類比較廉價且大容量的半導體記憶體來實現,較為理想。
電力管理模組1313,係管理、控制著對視訊模組1311(視訊模組1311內之各構成)的電力供給。
前端模組1314係為,對RF模組1334提供前 端機能(天線側之收送訊端的電路)的模組。如圖46所示,前端模組1314係具有,例如:天線部1351、濾波器1352、及增幅部1353。
天線部1351,係具有收送無線訊號的天線及其周邊之構成。天線部1351,係將從增幅部1353所供給之訊號,以無線訊號方式加以發送,並將所收到之無線訊號變成電氣訊號(RF訊號)而供給至濾波器1352。濾波器1352,係對透過天線部1351所接收到的RF訊號,進行濾波處理等,將處理後之RF訊號,供給至RF模組1334。增幅部1353,係將從RF模組1334所供給之RF訊號予以增幅,供給至天線部1351。
連接性構件1321係為,具有與外部連接之相關機能的模組。連接性構件1321的實體構成係為任意。例如連接性構件1321係具有,寬頻數據機1333所對應之通訊規格以外之通訊機能的構成、或外部輸出入端子等。
例如,連接性構件1321係可具有,依據Bluetooth(註冊商標)、IEEE 802.11(例如Wi-Fi(Wireless Fidelity、註冊商標))、NFC(Near Field Communication)、IrDA(InfraRed Data Association)等之無線通訊規格的通訊機能之模組、或用來收送依據該規格之訊號的天線等。又,例如,連接性構件1321係可具有,依據USB(Universal Serial Bus)、HDMI(註冊商標)(High-Definition Multimedia Interface)等之有線通訊規格的通訊機能之模組、或依據該規格之端子。甚至,例如,連接性構件1321還可具有類 比輸出入端子等其他資料(訊號)傳輸機能等。
此外,連接性構件1321亦可包含資料(訊號)之傳輸目標裝置。例如,連接性構件1321係亦可具有,對磁碟、光碟、光磁碟、或半導體記憶體等之記錄媒體進行資料讀出或寫入的驅動機(不只是可移除式媒體的驅動機,還包含有硬碟、SSD(Solid State Drive)、NAS(Network Attached Storage)等)。又,連接性構件1321係亦可具有影像或聲音之輸出裝置(監視器或揚聲器等)。
攝影機1322係為,具有拍攝被攝體、獲得被攝體之影像資料之機能的模組。攝影機1322拍攝所得到的影像資料,係例如被供給至視訊處理器1332而被編碼。
感測器1323係為具有,例如:聲音感測器、超音波感測器、光感測器、照度感測器、紅外線感測器、影像感測器、旋轉感測器、角度感測器、角速度感測器、速度感測器、加速度感測器、傾斜感測器、磁性識別感測器、衝擊感測器、溫度感測器等,任意之感測器機能的模組。被感測器1323所測出的資料,係例如被供給至應用程式處理器1331而被應用程式等所利用。
以上以模組方式來說明之構成,可以處理器方式來實現,反之,以處理器來說明之構成,可以模組方式來實現。
在如上構成的視訊套組1300中,如後述,可對視訊處理器1332適用本技術。因此,視訊套組1300係 可成為適用了本技術之套組而實施之。
[視訊處理器之構成例]
圖47係圖示了適用了本技術之視訊處理器1332(圖46)的概略構成之一例。
在圖47的例子中,視訊處理器1332係具有:接受視訊訊號及音訊訊號之輸入而將它們以所定方式進行編碼之機能、和將已被編碼之視訊資料及音訊資料予以解碼,將視訊訊號及音訊訊號予以再生輸出之機能。
如圖47所示,視訊處理器1332係具有:視訊輸入處理部1401、第1影像放大縮小部1402、第2影像放大縮小部1403、視訊輸出處理部1404、畫格記憶體1405、及記憶體控制部1406。又,視訊處理器1332係具有:編碼.解碼引擎1407、視訊ES(Elementary Stream)緩衝區1408A及1408B、以及音訊ES緩衝區1409A及1409B。再者,視訊處理器1332係還具有:音訊編碼器1410、音訊解碼器1411、多工化部(MUX(Multiplexer))1412、逆多工部(DMUX(Demultiplexer))1413、及串流緩衝區1414。
視訊輸入處理部1401,係取得從例如連接性構件1321(圖46)等所輸入之視訊訊號,轉換成數位影像資料。第1影像放大縮小部1402,係對影像資料進行格式轉換或影像之放大縮小處理等。第2影像放大縮小部1403,係對影像資料,隨應於透過視訊輸出處理部1404而輸出之目標的格式而進行影像的放大縮小處理,或進行 和第1影像放大縮小部1402相同的格式轉換或影像之放大縮小處理等。視訊輸出處理部1404,係對影像資料,進行格式轉換或往類比訊號之轉換等,成為已被再生之視訊訊號而輸出至例如連接性構件1321(圖46)等。
畫格記憶體1405係為被視訊輸入處理部1401、第1影像放大縮小部1402、第2影像放大縮小部1403、視訊輸出處理部1404、及編碼.解碼引擎1407所共用的影像資料用之記憶體。畫格記憶體1405,係以例如DRAM等之半導體記憶體而實現。
記憶體控制部1406係接受來自編碼.解碼引擎1407的同步訊號,依照存取管理表1406A中所被寫入之對畫格記憶體1405之存取排程,來控制對畫格記憶體1405的寫入、讀出之存取。存取管理表1406A,係隨著編碼.解碼引擎1407、第1影像放大縮小部1402、第2影像放大縮小部1403等中所被執行的處理,而被記憶體控制部1406所更新。
編碼.解碼引擎1407,係進行影像資料的編碼處理、以及影像資料所被編碼而成之資料亦即視訊串流的解碼處理。例如,編碼.解碼引擎1407係將從畫格記憶體1405所讀出的影像資料予以編碼,成為視訊串流而依序寫入視訊ES緩衝區1408A。又,例如,從視訊ES緩衝區1408B依序讀出視訊串流並解碼之,成為影像資料而依序寫入至畫格記憶體1405。編碼.解碼引擎1407,係於這些編碼或解碼中,把畫格記憶體1405當成作業領域 來使用。又,編碼.解碼引擎1407,係例如在每一巨集區塊的處理開始的時序上,對記憶體控制部1406輸出同步訊號。
視訊ES緩衝區1408A,係將編碼.解碼引擎1407所生成之視訊串流予以緩衝,供給至多工化部(MUX)1412。視訊ES緩衝區1408B,係將從逆多工部(DMUX)1413所供給之視訊串流予以緩衝,供給至編碼.解碼引擎1407。
音訊ES緩衝區1409A,係將音訊編碼器1410所生成之音訊串流予以緩衝,供給至多工化部(MUX)1412。音訊ES緩衝區1409B,係將從逆多工部(DMUX)1413所供給之音訊串流予以緩衝,供給至音訊解碼器1411。
音訊編碼器1410,係例如將從連接性構件1321(圖46)所輸入之音訊訊號予以例如數位轉換,以例如MPEG音訊方式或AC3(AudioCode number 3)方式等所定方式進行編碼。音訊編碼器1410,係將音訊訊號所被編碼而成之資料亦即音訊串流,依序寫入至音訊ES緩衝區1409A。音訊解碼器1411,係將從音訊ES緩衝區1409B所供給之音訊串流予以解碼,進行例如往類比訊號之轉換等,成為已被再生之音訊訊號而供給至例如連接性構件1321(圖46)等。
多工化部(MUX)1412,係將視訊串流和音訊串流予以多工化。此多工化之方法(亦即藉由多工化而所生成之位元串流的格式),係為任意。又,此多工化之際 ,多工化部(MUX)1412係亦可將所定之標頭資訊等,附加至位元串流。亦即,多工化部(MUX)1412係可藉由多工化而將串流的格式進行轉換。例如,多工化部(MUX)1412係藉由將視訊串流和音訊串流進行多工化,以轉換成傳輸用之格式的位元串流亦即傳輸串流。又,例如,多工化部(MUX)1412係藉由將視訊串流和音訊串流進行多工化,以轉換成記錄用之檔案格式的資料(檔案資料)。
逆多工部(DMUX)1413係以對應於多工化部(MUX)1412所做之多工化的方法,將視訊串流和音訊串流所被多工化而成的位元串流,進行逆多工化。亦即,逆多工部(DMUX)1413係從串流緩衝區1414所讀出之位元串流,抽出視訊串流和音訊串流(將視訊串流和音訊串流予以分離)。亦即,逆多工部(DMUX)1413,係可藉由逆多工化而將串流的格式進行轉換(多工化部(MUX)1412所致之轉換的逆轉換)。例如,逆多工部(DMUX)1413係可將從例如連接性構件1321或寬頻數據機1333等(均示於圖46)所供給之傳輸串流,透過串流緩衝區1414而加以取得,藉由逆多工化,轉換成視訊串流和音訊串流。又,例如,逆多工部(DMUX)1413係可將藉由例如連接性構件1321(圖46)而從各種記錄媒體所讀出之檔案資料,透過串流緩衝區1414而加以取得,藉由逆多工化,轉換成視訊串流和音訊串流。
串流緩衝區1414,係將位元串流予以緩衝。例如,串流緩衝區1414,係將從多工化部(MUX)1412所 供給之傳輸串流予以緩衝,於所定之時序上,或是基於來自外部的要求等,而供給至例如連接性構件1321或寬頻數據機1333(均示於圖46)等。
又,例如,串流緩衝區1414,係將從多工化部(MUX)1412所供給之檔案資料予以緩衝,於所定之時序上,或是基於來自外部的要求等,而供給至例如連接性構件1321(圖46)等,令其被記錄至各種記錄媒體。
然後,串流緩衝區1414,係將透過例如連接性構件1321或寬頻數據機1333等(均示於圖46)所取得之傳輸串流予以緩衝,於所定之時序上,或是基於來自外部的要求等,而供給至逆多工部(DMUX)1413。
又,串流緩衝區1414,係將藉由例如連接性構件1321(圖46)等中從各種記錄媒體所讀出之檔案資料予以緩衝,於所定之時序上,或是基於來自外部的要求等,而供給至逆多工部(DMUX)1413。
其次,說明如此構成之視訊處理器1332的動作例。例如,從連接性構件1321(圖46)輸入至視訊處理器1332的視訊訊號,係於視訊輸入處理部1401中被轉換成4:2:2Y/Cb/Cr方式等之所定方式的數位影像資料,依序被寫入至畫格記憶體1405。此數位影像資料係被讀出至第1影像放大縮小部1402或第2影像放大縮小部1403,進行往4:2:0Y/Cb/Cr方式等所定方式的格式轉換及放大縮小處理,再次被寫入至畫格記憶體1405。此影像資料,係被編碼.解碼引擎1407所編碼,成為視訊 串流而被寫入至視訊ES緩衝區1408A。
又,從連接性構件1321(圖46)輸入至視訊處理器1332的音訊訊號,係被音訊編碼器1410所編碼,成為音訊串流,而被寫入至音訊ES緩衝區1409A。
視訊ES緩衝區1408A的視訊串流、和音訊ES緩衝區1409A的音訊串流,係被多工化部(MUX)1412讀出而多工化,被轉換成傳輸串流或是檔案資料等。多工化部(MUX)1412所生成之傳輸串流,係被串流緩衝區1414緩衝後,透過例如連接性構件1321或寬頻數據機1333(均示於圖46)而被輸出至外部網路。又,多工化部(MUX)1412所生成之檔案資料,係被串流緩衝區1414緩衝後,被輸出至例如連接性構件1321(圖46)等,被記錄至各種記錄媒體。
又,透過例如連接性構件1321或寬頻數據機1333(均示於圖46)而從外部網路被輸入至視訊處理器1332的傳輸串流,係被串流緩衝區1414緩衝後,被逆多工部(DMUX)1413逆多工化。又,例如在連接性構件1321(圖46)等中從各種記錄媒體所讀出、被輸入至視訊處理器1332的檔案資料,係在被串流緩衝區1414緩衝後,被逆多工部(DMUX)1413逆多工化。亦即,被輸入至視訊處理器1332的傳輸串流或檔案資料,係被逆多工部(DMUX)1413分離成視訊串流和音訊串流。
音訊串流,係透過音訊ES緩衝區1409B而被供給至音訊解碼器1411,被解碼而再生出音訊訊號。又 ,視訊串流係被寫入至視訊ES緩衝區1408B後,被編碼.解碼引擎1407依序讀出而解碼,然後被寫入至畫格記憶體1405。已被解碼之影像資料,係藉由第2影像放大縮小部1403而被放大縮小處理,然後被寫入至畫格記憶體1405。然後,已被解碼之影像資料,係被讀出至視訊輸出處理部1404,被格式轉換成4:2:2Y/Cb/Cr方式等之所定方式,然後被轉換成類比訊號,視訊訊號就被再生輸出。
對如此所被構成的視訊處理器1332中適用本技術的時候,係只要對編碼.解碼引擎1407,適用上述各實施形態所述之本技術即可。亦即,例如,只要使編碼.解碼引擎1407係具有第1實施形態所述之編碼器1及檔案生成部2所成之編碼裝置(圖1)或檔案讀取部51及解碼器52所成之解碼裝置(圖8)之機能即可。藉由如此設計,視訊處理器1332係可獲得和參照圖1乃至圖36而上述過之效果同樣的效果。
此外,於編碼.解碼引擎1407中,本技術(亦即上述各實施形態所述之影像編碼裝置或影像解碼裝置之機能),係可藉由邏輯電路等之硬體來實現,亦可藉由內嵌程式等之軟體來實現,亦可藉由其雙方來實現。
[視訊處理器之另一構成例]
圖48係圖示了適用了本技術之視訊處理器1332(圖46)的概略構成之另一例。在圖48的例子的情況下,視訊 處理器1332係具有,將視訊資料以所定方式進行編碼.解碼之機能。
更具體而言,如圖48所示,視訊處理器1332係具有:控制部1511、顯示器介面1512、顯示引擎1513、影像處理引擎1514、及內部記憶體1515。又,視訊處理器1332係具有:編解碼器引擎1516、記憶體介面1517、多工.逆多工部(MUX DMUX)1518、網路介面1519、及視訊介面1520。
控制部1511係控制,顯示器介面1512、顯示引擎1513、影像處理引擎1514、及編解碼器引擎1516等,視訊處理器1332內的各處理部之動作。
如圖48所示,控制部1511係具有例如:主CPU1531、副CPU1532、及系統控制器1533。主CPU1531係執行用來控制視訊處理器1332內之各處理部之動作所需的程式等。主CPU1531,係依照該程式等而生成控制訊號,供給至各處理部(亦即控制各處理部之動作)。副CPU1532,係擔任主CPU1531的輔助性角色。例如,副CPU1532係執行主CPU1531所執行之程式等的子處理程序或副常式等。系統控制器1533係指定主CPU1531及副CPU1532所執行的程式等,控制主CPU1531及副CPU1532的動作。
顯示器介面1512,係在控制部1511的控制之下,將影像資料輸出至例如連接性構件1321(圖46)等。例如,顯示器介面1512,係將數位資料的影像資料轉換 成類比訊號,當作已被再生之視訊訊號,或直接以數位資料之影像資料的方式,輸出至連接性構件1321(圖46)的監視器裝置等。
顯示引擎1513,係在控制部1511的控制之下,對影像資料,以符合顯示該影像之監視器裝置等的硬體規格的方式,進行格式轉換、尺寸轉換、色域轉換等各種轉換處理。
影像處理引擎1514,係在控制部1511的控制之下,對影像資料,實施例如畫質改善所需的濾波處理等所定之影像處理。
內部記憶體1515,係被顯示引擎1513、影像處理引擎1514、及編解碼器引擎1516所共用,是被設在視訊處理器1332內部的記憶體。內部記憶體1515係被利用於,例如,顯示引擎1513、影像處理引擎1514、及編解碼器引擎1516之間所進行的資料收授。例如,內部記憶體1515,係將從顯示引擎1513、影像處理引擎1514、或編解碼器引擎1516所供給之資料予以儲存,因應需要(例如隨應於要求),而將該資料,供給至顯示引擎1513、影像處理引擎1514、或編解碼器引擎1516。此內部記憶體1515,係無論藉由何種記憶裝置來實現均可,但一般而言多會利用於區塊單位之影像資料或參數等這類小容量之資料的儲存,因此以例如SRAM(Static Random Access Memory)這類比較小容量(例如相較於外部記憶體1312)但反應速度較為高速的半導體記憶體來實現,較為理想。
編解碼器引擎1516,係進行影像資料之編碼或解碼相關之處理。此編解碼器引擎1516所對應的編碼.解碼方式係為任意,其數目可以是1個,也可為複數。例如,編解碼器引擎1516係可具備複數編碼.解碼方式的編解碼器機能,以從其中所選擇出來者,進行影像資料的編碼或是編碼資料的解碼。
於圖48所示的例子中,編解碼器引擎1516係作為關於編解碼器之處理的機能區塊,具有例如:MPEG-2 Video 1541、AVC/H.264 1542、HEVC/H.265 1543、HEVC/H.265(Scalable)1544、HEVC/H.265(Multi-view)1545、及MPEG-DASH 1551。
MPEG-2 Video 1541係為,將影像資料以MPEG-2方式進行編碼或解碼等之機能區塊。AVC/H.264 1542係為,將影像資料以AVC方式進行編碼或解碼等之機能區塊。HEVC/H.265 1543係為,將影像資料以HEVC方式進行編碼或解碼等之機能區塊。HEVC/H.265(Scalable)1544係為,將影像資料以HEVC方式進行可調式編碼或可調式解碼等之機能區塊。HEVC/H.265(Multi-view)1545係為,將影像資料以HEVC方式進行多視點編碼或多視點解碼等之機能區塊。
MPEG-DASH 1551,係將影像資料以MPEG-DASH(MPEG-Dynamic Adaptive Streaming over HTTP)方式進行收送訊的機能區塊。MPEG-DASH係為,使用HTTP(HyperText Transfer Protocol)來進行視訊串流化之技 術,從事先準備的解析度等彼此不同之複數編碼資料之中以區段單位選擇出適切者,並加以傳輸,為其特徵之1。MPEG-DASH 1551,係進行依據規格之串流的生成或該串流的傳輸控制等,關於影像資料的編碼.解碼,係利用上述的MPEG-2 Video 1541至HEVC/H.265(Multi-view)1545。
記憶體介面1517,係為外部記憶體1312用的介面。從影像處理引擎1514或編解碼器引擎1516所供給之資料,係透過記憶體介面1517而被供給至外部記憶體1312。又,從外部記憶體1312所讀出之資料,係透過記憶體介面1517而被供給至視訊處理器1332(影像處理引擎1514或是編解碼器引擎1516)。
多工.逆多工部(MUX DMUX)1518,係進行編碼資料的位元串流、影像資料、視訊訊號等,關於影像之各種資料的多工化或逆多工化。此多工.逆多工部之方法係為任意。例如,在多工化之際,多工.逆多工部(MUX DMUX)1518係不只是將複數資料整合成1個,還可將所定的標頭資訊等,附加至該資料。又,在逆多工化之際,多工.逆多工部(MUX DMUX)1518係不只是將1個資料分割成複數,還可對已分割之各資料,附加所定的標頭資訊等。亦即,多工.逆多工部(MUX DMUX)1518,係可藉由多工.逆多工化,而將資料的格式做轉換。例如,多工.逆多工部(MUX DMUX)1518係藉由將位元串流進行多工化,以轉換成傳輸用之格式的位元串流亦即傳輸串流、或是記錄用之檔案格式的資料(檔案資料)。當然, 藉由逆多工化,其逆轉換亦為可能。
網路介面1519,係為給例如寬頻數據機1333或連接性構件1321(均示於圖46)等使用的介面。視訊介面1520,係為給例如連接性構件1321或攝影機1322(均示於圖46)等使用的介面。
其次,說明如此之視訊處理器1332的動作例。例如,一旦透過例如連接性構件1321或寬頻數據機1333(均示於圖46)而從外部網路接收了傳輸串流,則該傳輸串流係透過網路介面1519而被供給至多工.逆多工部(MUX DMUX)1518而被逆多工化,被編解碼器引擎1516所解碼。藉由編解碼器引擎1516之解碼所得到的影像資料,係例如,被影像處理引擎1514實施所定之影像處理,被顯示引擎1513進行所定之轉換,透過顯示器介面1512而被供給至例如連接性構件1321(圖46)等,其影像就被顯示在監視器上。又,例如,藉由編解碼器引擎1516之解碼所得到的影像資料,係被編解碼器引擎1516再次編碼,被多工.逆多工部(MUX DMUX)1518進行多工化而轉換成檔案資料,透過視訊介面1520而被輸出至例如連接性構件1321(圖46)等,被記錄至各種記錄媒體。
甚至例如,藉由連接性構件1321(圖46)等而從未圖示之記錄媒體所讀出、由影像資料所被編碼而成之編碼資料的檔案資料,係透過視訊介面1520而被供給至多工.逆多工部(MUX DMUX)1518而被逆多工化,被編解碼器引擎1516所解碼。藉由編解碼器引擎1516之解碼 所得到的影像資料,係被影像處理引擎1514實施所定之影像處理,被顯示引擎1513進行所定之轉換,透過顯示器介面1512而被供給至例如連接性構件1321(圖46)等,其影像就被顯示在監視器上。又,例如,藉由編解碼器引擎1516之解碼所得到的影像資料,係被編解碼器引擎1516再次編碼,被多工.逆多工部(MUX DMUX)1518進行多工化而轉換成傳輸串流,透過網路介面1519而被供給至例如連接性構件1321或寬頻數據機1333(均示於圖46)而傳輸至未圖示的其他裝置。
此外,在視訊處理器1332內的各處理部之間的影像資料或其他資料之收授,係例如,利用內部記憶體1515或外部記憶體1312而進行。又,電力管理模組1313係控制例如對控制部1511之電力供給。
對如此所被構成的視訊處理器1332中適用本技術的時候,係只要對編解碼器引擎1516,適用上述各實施形態所述之本技術即可。亦即,例如,只要使編解碼器引擎1516係具有,實現第1實施形態所述之編碼器1及檔案生成部2所成之編碼裝置(圖1)或檔案讀取部51及解碼器52所成之解碼裝置(圖8)之機能區塊即可。藉由如此設計,視訊處理器1332係可獲得和參照圖1乃至圖36而上述過之效果同樣的效果。
此外,於編解碼器引擎1516中,本技術(亦即上述各實施形態所述之影像編碼裝置或影像解碼裝置之機能),係可藉由邏輯電路等之硬體來實現,亦可藉由內 嵌程式等之軟體來實現,亦可藉由其雙方來實現。
以上雖然例示了2個視訊處理器1332之構成,但視訊處理器1332之構成係為任意,亦可為上述2個例子以外的情形。又,此視訊處理器1332係亦可以1個半導體晶片的方式來構成,亦可以複數半導體晶片的方式來構成。例如,亦可為將複數半導體層積起來的3維層積LSI。又,亦可藉由複數LSI來實現。
[對裝置之適用例]
視訊套組1300,係可被組裝在處理影像資料的各種裝置中。例如,視訊套組1300係可被組裝在電視裝置900(圖42)、行動電話機920(圖43)、記錄再生裝置940(圖44)、攝像裝置960(圖45)等中。藉由組裝視訊套組1300,該裝置就可獲得和參照圖1乃至圖36而上述過之效果同樣的效果。
此外,即使是上述視訊套組1300之各構成的一部分,只要是含有視訊處理器1332者,都可成為適用了本技術之構成而實施之。例如,亦可僅將視訊處理器1332當作適用了本技術之視訊處理器來實施之。又,例如,亦可將上述虛線1341所示的處理器或視訊模組1311等,當作適用了本技術之處理器或模組等來實施之。甚至例如,亦可將視訊模組1311、外部記憶體1312、電力管理模組1313、及前端模組1314加以組合,成為適用了本技術之視訊單元1361來實施之。無論哪種構成,都可獲 得和參照圖1乃至圖36而上述過之效果同樣的效果。
亦即,只要是含有視訊處理器1332者,無論哪種構成,都可和視訊套組1300同樣地,被組裝在處理影像資料的各種裝置中。例如,可將視訊處理器1332、虛線1341所示的處理器、視訊模組1311、或、視訊單元1361,組裝在電視裝置900(圖42)、行動電話機920(圖43)、記錄再生裝置940(圖44)、攝像裝置960(圖45)等中。然後,藉由組裝適用了本技術之任一構成,該裝置就可和視訊套組1300同樣地,獲得和參照圖1乃至圖36而上述過之效果同樣的效果。
此外,在本說明書中係說明了,startcode與filler data、管理解碼器緩衝區之參數、識別參數、FixedStartCodeSizeFlag等之各種資訊,是被多工化至編碼串流,從編碼側往解碼側傳輸之例子。然而,這些資訊的傳輸手法係不限定於所述例子。例如,這些資訊係亦可不被多工化至編碼位元串流,而是以與編碼位元串流建立關連之個別資料的方式而被傳輸或記錄。此處,「建立關連」之用語係意味著,位元串流中所含之影像(切片或區塊等,亦可為影像之一部分)和該當影像所對應之資訊進行解碼時使其能夠彼此連結的意思。亦即,資訊係可有別於影像(或位元串流)而在另外的傳輸路上進行傳輸。又,資訊係亦可有別於影像(或位元串流)而被記錄在另外的記錄媒體(或是同一記錄媒體的其他記錄區域)。甚至,資訊和影像(或位元串流),係亦可以例如複數畫格、1畫格、 或畫格內之一部分等之任意單位,而彼此關連。
以上雖然一面參照添附圖面一面詳細說明了本揭露的理想實施形態,但本揭露並非限定於所述例子。只要是本揭露所屬技術領域中具有通常知識者,自然可於申請專利範圍中所記載之技術思想的範疇內,想到各種變更例或修正例,而這些當然也都屬於本揭露的技術範圍。
1‧‧‧編碼器
2‧‧‧檔案生成部

Claims (15)

  1. 一種影像處理裝置,其係具備:設定部,係以含有影像編碼而成之位元串流的檔案為對象,設定startcode與filler data;和控制部,係控制前記設定部,以使得前記設定部中所設定之startcode與filler data,於檔案的media data中,保持著管理解碼器緩衝區之參數的特性而構成檔案。
  2. 如請求項1所記載之影像處理裝置,其中,前記管理解碼器緩衝區之參數,係為VUI(Video Usability Information)中所含之參數、或buffering period SEI(Supplemental Enhancement Information)中所含之參數、或是picture timing SEI中所含之參數。
  3. 如請求項1所記載之影像處理裝置,其中,前記設定部,係將filler data,設定成為VCL資料。
  4. 一種影像處理方法,係由影像處理裝置,以含有影像編碼而成之位元串流的檔案為對象,設定startcode與filler data;控制startcode與filler data的設定,以使得已被設定之startcode與filler data,於檔案的media data中,保持著管理解碼器緩衝區之參數的特性而構成檔案。
  5. 一種影像處理裝置,其係具備:收取部,係收取檔案,該檔案係為含有影像編碼而成之位元串流,且被控制而設定成,startcode與filler data 是於檔案的media data中,保持管理解碼器緩衝區之參數的特性而構成檔案;和解碼部,係從前記收取部所收取到的檔案中,讀取前記startcode與filler data,使用前記管理解碼器緩衝區之參數,將前記位元串流予以解碼。
  6. 如請求項5所記載之影像處理裝置,其中,前記管理解碼器緩衝區之參數,係為VUI(Video Usability Information)中所含之參數、或buffering period SEI(Supplemental Enhancement Information)中所含之參數、或是picture timing SEI中所含之參數。
  7. 如請求項5所記載之影像處理裝置,其中,前記filler data,係被當成VCL資料而被設定。
  8. 一種影像處理方法,係由影像處理裝置,收取檔案,該檔案係為含有影像編碼而成之位元串流,且被控制而設定成,startcode與filler data是於檔案的media data中,保持管理解碼器緩衝區之參數的特性而構成檔案;從所收取到的檔案中,讀取前記startcode與filler data,使用前記管理解碼器緩衝區之參數,將前記位元串流予以解碼。
  9. 一種影像處理裝置,其係具備:設定部,係於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已被從位元串 流中刪除時,則將管理解碼器緩衝區之參數的特性,加以設定;和生成部,係使用已被前記設定部所設定的特性,來生成前記檔案。
  10. 如請求項9所記載之影像處理裝置,其中,前記設定部,係將用來識別管理解碼器緩衝區之參數的特性已被變更之事實的識別參數,加以設定。
  11. 如請求項10所記載之影像處理裝置,其中,前記設定部,係將前記識別參數,當作前記檔案的樣本條目中的選用箱盒而加以設定。
  12. 一種影像處理方法,係由影像處理裝置,於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已被從位元串流中刪除時,則將管理解碼器緩衝區之參數的特性,加以設定;和使用已被設定的特性,來生成前記檔案。
  13. 一種影像處理裝置,其係具備:收取部,係收取檔案,該檔案係為,於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已刪除時,則管理解碼器緩衝區之參數的特性會被設定,使用已被設定的特性而生成者;和解碼部,係從前記收取部所收取到的檔案中,讀取前記管理解碼器緩衝區之參數,並使用所讀取到的參數,將前記位元串流予以解碼。
  14. 如請求項13所記載之影像處理裝置,其中,前記檔案中係被設定有,用來識別管理解碼器緩衝區之參數的特性已被變更之事實的識別參數。
  15. 一種影像處理方法,係由影像處理裝置,收取檔案,該檔案係為,於含有影像編碼而成之位元串流的檔案的media data中,若startcode與filler data是已被從位元串流中刪除時,則管理解碼器緩衝區之參數的特性會被設定,使用已被設定的特性而生成者;和從所收取到的檔案中,讀取前記管理解碼器緩衝區之參數,並使用所讀取到的參數,將前記位元串流予以解碼。
TW102135324A 2012-10-09 2013-09-30 Image processing device and method TWI652938B (zh)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
JP2012224597 2012-10-09
JP2012-224597 2012-10-09
JP2012225159 2012-10-10
JP2012-225159 2012-10-10
JP2012262803 2012-11-30
JP2012-262803 2012-11-30
JP2013004988 2013-01-15
JP2013-004988 2013-01-15
JP2013-010585 2013-01-23
JP2013010585 2013-01-23
JP2013-060438 2013-03-22
JP2013060438 2013-03-22

Publications (2)

Publication Number Publication Date
TW201419872A true TW201419872A (zh) 2014-05-16
TWI652938B TWI652938B (zh) 2019-03-01

Family

ID=50477300

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102135324A TWI652938B (zh) 2012-10-09 2013-09-30 Image processing device and method

Country Status (13)

Country Link
US (1) US10313694B2 (zh)
EP (2) EP2908523B1 (zh)
JP (2) JP6492661B2 (zh)
KR (1) KR102134049B1 (zh)
CN (1) CN104704823B (zh)
AU (3) AU2013327962A1 (zh)
BR (1) BR112015007530A2 (zh)
CA (1) CA2886943C (zh)
MX (2) MX358606B (zh)
MY (1) MY174138A (zh)
RU (1) RU2653308C2 (zh)
TW (1) TWI652938B (zh)
WO (1) WO2014057832A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI691850B (zh) * 2014-10-22 2020-04-21 南韓商三星電子股份有限公司 用於進行即時迴路內濾波的應用處理器、用於該應用處理器之方法以及包括該應用處理器的系統

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6329246B2 (ja) * 2014-03-14 2018-05-23 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 画像復号装置
US10535369B2 (en) 2014-05-19 2020-01-14 Sony Corporation Information processing device, information generation device, information recording medium, information processing method, and program
JP6706784B2 (ja) * 2014-09-12 2020-06-10 パナソニックIpマネジメント株式会社 送信装置、受信装置、送信方法及び受信方法
WO2016132836A1 (ja) * 2015-02-16 2016-08-25 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにプログラム
US10257107B1 (en) 2016-06-30 2019-04-09 Amazon Technologies, Inc. Encoder-sensitive stream buffer management
JP7431330B2 (ja) 2019-12-26 2024-02-14 バイトダンス インコーポレイテッド ビデオコーディングにおけるプロファイル、層及びレイヤの指示
CN114868158A (zh) 2019-12-26 2022-08-05 字节跳动有限公司 层级视频中的解码图片缓冲区参数的信令通知
WO2021142363A1 (en) * 2020-01-09 2021-07-15 Bytedance Inc. Decoding order of different sei messages

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1253017C (zh) * 1997-12-15 2006-04-19 松下电器产业株式会社 用于把视频目标记录在光盘上的记录设备及其方法
JP2004079087A (ja) * 2002-08-20 2004-03-11 Sony Corp 記録装置および方法、記録媒体、並びにプログラム
JP5068947B2 (ja) * 2003-02-18 2012-11-07 ノキア コーポレイション ピクチャの符号化方法
US8503541B2 (en) * 2004-01-16 2013-08-06 Motorola Mobility Llc Method and apparatus for determining timing information from a bit stream
CN102217308B (zh) * 2008-11-13 2014-10-22 汤姆森特许公司 使用画面组合并和位分配的多线程视频编码
US9313512B2 (en) * 2009-11-25 2016-04-12 Vudu, Inc. Multiple bit rate encoding by segments
CN101800892B (zh) * 2010-03-04 2013-03-06 青岛海信信芯科技有限公司 多媒体码流识别的方法和装置
WO2013030458A1 (en) * 2011-08-31 2013-03-07 Nokia Corporation Multiview video coding and decoding
US20130195171A1 (en) * 2012-01-30 2013-08-01 Qualcomm Incorporated Method of coding video and storing video content

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI691850B (zh) * 2014-10-22 2020-04-21 南韓商三星電子股份有限公司 用於進行即時迴路內濾波的應用處理器、用於該應用處理器之方法以及包括該應用處理器的系統

Also Published As

Publication number Publication date
JP6492661B2 (ja) 2019-04-03
WO2014057832A1 (ja) 2014-04-17
CN104704823A (zh) 2015-06-10
US10313694B2 (en) 2019-06-04
TWI652938B (zh) 2019-03-01
AU2017204793B2 (en) 2019-05-23
CA2886943C (en) 2020-12-15
JP2019110567A (ja) 2019-07-04
US20150281713A1 (en) 2015-10-01
MY174138A (en) 2020-03-10
CA2886943A1 (en) 2014-04-17
EP2908523B1 (en) 2019-09-18
JPWO2014057832A1 (ja) 2016-09-05
MX358606B (es) 2018-08-24
JP6721069B2 (ja) 2020-07-08
AU2017204793A1 (en) 2017-07-27
AU2013327962A1 (en) 2015-04-02
RU2015112109A (ru) 2016-10-20
EP3618434B1 (en) 2021-04-14
CN104704823B (zh) 2019-01-29
KR20150067147A (ko) 2015-06-17
MX2015004140A (es) 2015-07-06
EP3618434A1 (en) 2020-03-04
MX340964B (es) 2016-08-01
EP2908523A1 (en) 2015-08-19
AU2019219782A1 (en) 2019-09-12
AU2019219782B2 (en) 2021-02-11
EP2908523A4 (en) 2016-09-21
KR102134049B1 (ko) 2020-07-14
RU2653308C2 (ru) 2018-05-07
BR112015007530A2 (pt) 2017-07-04

Similar Documents

Publication Publication Date Title
JP6721069B2 (ja) 画像処理装置および方法
AU2013281946B2 (en) Decoding device, and decoding method
US11218710B2 (en) Image decoding device and method
US20180310028A1 (en) Image processing device and method
TW201311005A (zh) 圖像處理裝置及圖像處理方法
JP6824034B2 (ja) 画像復号装置および方法
TW201524194A (zh) 解碼裝置、解碼方法、編碼裝置,以及編碼方法
JP6690741B2 (ja) 画像符号化装置および方法、並びに、プログラム
US20150312591A1 (en) Image processing apparatus and method
KR102197557B1 (ko) 화상 처리 장치 및 방법
US10630989B2 (en) Image processing apparatus and image processing method
WO2014002618A1 (ja) 画像復号装置、画像復号方法、画像符号化装置及び画像符号化方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees