JP2018056957A - Encoding device, decoding device, encoding method, and decoding method - Google Patents

Encoding device, decoding device, encoding method, and decoding method Download PDF

Info

Publication number
JP2018056957A
JP2018056957A JP2016194474A JP2016194474A JP2018056957A JP 2018056957 A JP2018056957 A JP 2018056957A JP 2016194474 A JP2016194474 A JP 2016194474A JP 2016194474 A JP2016194474 A JP 2016194474A JP 2018056957 A JP2018056957 A JP 2018056957A
Authority
JP
Japan
Prior art keywords
frame
unit
encoding
difference
conversion
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2016194474A
Other languages
Japanese (ja)
Inventor
啓二 奥間
Keiji Okuma
啓二 奥間
善隆 福永
Yoshitaka Fukunaga
善隆 福永
暢一 片桐
Yoichi Katagiri
暢一 片桐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Silex Technology Inc
Original Assignee
Silex Technology Inc
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 Silex Technology Inc filed Critical Silex Technology Inc
Priority to JP2016194474A priority Critical patent/JP2018056957A/en
Publication of JP2018056957A publication Critical patent/JP2018056957A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce a time required for encoding a frame.SOLUTION: An encoding device 10 comprises: an acquisition part 101 for acquiring an encoding object frame from a memory; a blocking filter 102 for applying filter-processing to a boundary of a block that is a processing unit included in the encoding object frame acquired by the acquisition part 101; a conversion part 103 for applying conversion-processing including frequency conversion or order conversion to the filter-processed encoding object frame for each block; a difference part 104 for acquiring a reference frame from the memory, and calculating a difference between the acquired reference frame and the conversion-processed encoding object frame; a quantization part 105 for quantizing the difference frame calculated by the difference part 104; and an encoding part 106 for encoding the difference frame quantized by the quantization part 105 and generating encoding data.SELECTED DRAWING: Figure 3

Description

本発明は、符号化装置、復号装置、符号化方法、及び、復号方法に関する。   The present invention relates to an encoding device, a decoding device, an encoding method, and a decoding method.

ネットワークを通じて動画像コンテンツを転送する際に、ネットワークにおける通信量を削減する圧縮技術が使用される。圧縮技術では、送信装置がコンテンツを構成するフレームを圧縮符号化してネットワークに送信し、圧縮符号化されたデータを受信装置が受信して復号することでコンテンツを復元する。   When moving image content is transferred through a network, a compression technique that reduces the amount of communication in the network is used. In the compression technique, a transmission device compresses and encodes a frame constituting the content, transmits the frame to a network, and the reception device receives and decodes the compressed and encoded data to restore the content.

圧縮技術における圧縮率を向上させる差分符号化方式がある。差分符号化方式では、コンテンツに含まれるフレームの一部をキーフレームとしてフレーム内符号化する。また、コンテンツに含まれるフレームの上記一部を除く残部を差分フレームとして、上記キーフレームからの差分を符号化、つまり、フレーム間符号化する。   There are differential encoding schemes that improve the compression rate in compression techniques. In the differential encoding method, intra-frame encoding is performed using a part of the frame included in the content as a key frame. Further, the remaining part excluding the part of the frame included in the content is set as a difference frame, and the difference from the key frame is encoded, that is, inter-frame encoded.

特許文献1は、圧縮符号化技術において、キーフレームの符号化処理量の急激な上昇を抑制するとともに、フレーム内符号化されたフレームと、フレーム間符号化されたフレームとの再生中に現れる差異をより小さくする技術を開示する。   Japanese Patent Laid-Open No. 2004-228688 suppresses a rapid increase in the coding processing amount of a key frame in a compression coding technique, and also shows a difference that appears during reproduction between an intra-frame coded frame and an inter-frame coded frame. Disclosed is a technique for making the size smaller.

特開2002−171527号公報JP 2002-171527 A

特許文献1が開示する技術は、キーフレームの符号化処理量の急激な上昇を抑制する効果が期待されるものの、符号化に要する時間が増大し得るという問題がある。具体的には、上記技術では、フレーム内符号化されたフレームと、フレーム間符号化されたフレームとの再生中に現れる差異をより小さくするために、一度符号化したフレームを再び符号化する処理(言い換えれば、符号化のやり直しの処理)を行うことで、フレームの符号化処理に所定の時間を要する。   Although the technique disclosed in Patent Document 1 is expected to have an effect of suppressing a rapid increase in the amount of encoding processing of key frames, there is a problem that the time required for encoding can be increased. Specifically, in the above technique, a process of re-encoding a once-encoded frame in order to reduce a difference that appears during reproduction between an intra-frame encoded frame and an inter-frame encoded frame. By performing (in other words, re-encoding process), a predetermined time is required for the frame encoding process.

本発明は、上記問題を解決するためになされたものであり、フレームの符号化に要する時間を削減する符号化装置等を提供することを目的とする。   The present invention has been made to solve the above problem, and an object thereof is to provide an encoding device or the like that reduces the time required for encoding a frame.

上記課題を解決するために、本発明の一態様に係る符号化装置は、符号化対象フレームをメモリから取得する取得部と、前記取得部が取得した前記符号化対象フレームに含まれる処理単位であるブロックの境界に対してフィルタ処理を施すフィルタ部と、前記フィルタ処理後の前記符号化対象フレームに対して前記ブロックごとに、周波数変換又は次数変換を含む変換処理を施す変換部と、参照用フレームを前記メモリから取得し、取得した前記参照用フレームと、前記変換処理後の前記符号化対象フレームとの差分を、差分フレームとして算出する差分部と、前記差分部が算出した前記差分フレームを量子化する量子化部と、前記量子化部が量子化した前記差分フレームを符号化して符号化データを生成する符号化部とを備える。   In order to solve the above problems, an encoding apparatus according to an aspect of the present invention includes an acquisition unit that acquires an encoding target frame from a memory, and a processing unit included in the encoding target frame acquired by the acquisition unit. A filter unit that performs a filtering process on a boundary of a block, a conversion unit that performs a conversion process including a frequency conversion or an order conversion for each block on the encoding target frame after the filter process, and for reference A frame is acquired from the memory, a difference unit that calculates a difference between the acquired reference frame and the encoding target frame after the conversion process as a difference frame, and the difference frame calculated by the difference unit A quantization unit that performs quantization; and an encoding unit that encodes the difference frame quantized by the quantization unit to generate encoded data.

これによれば、符号化装置は、取得部が符号化対象フレームを取得するときと、差分部が参照用フレームを取得するときとの2つの時点でメモリアクセスを行う。符号化装置による処理の順番を考慮すると、取得部によるメモリアクセスの後、フィルタ部及び変換部による処理が行われた後に、差分部によるメモリアクセスが行われる。よって、上記2つのメモリアクセスが行われるタイミングは、同時(又は実質的に同時)にならない。そのため、仮に2つのメモリアクセスが実質的に同時に行われるとすれば発生し得る待ち時間を、未然に回避することができる。このように、符号化装置は、フレームの符号化に要する時間を削減することができる。   According to this, the encoding apparatus performs memory access at two points of time when the acquisition unit acquires the encoding target frame and when the difference unit acquires the reference frame. Considering the order of processing by the encoding device, after the memory access by the acquisition unit, the processing by the filter unit and the conversion unit is performed, and then the memory access by the difference unit is performed. Therefore, the timing at which the two memory accesses are performed is not simultaneous (or substantially simultaneous). For this reason, if two memory accesses are performed substantially simultaneously, a waiting time that may occur can be avoided. As described above, the encoding apparatus can reduce the time required for encoding a frame.

また、前記量子化部は、前記符号化対象フレームがキーフレームである場合には、前記変換部による前記変換処理後の前記符号化対象フレームを量子化し、前記符号化装置は、さらに、前記差分フレームがキーフレームである場合に、前記量子化部による量子化後の前記差分フレームを逆量子化してメモリに格納する逆量子化部を備え、前記差分部は、前記逆量子化部により前記メモリに格納された前記キーフレームを、前記参照用フレームとして用いて、前記差分を算出してもよい。   Further, when the encoding target frame is a key frame, the quantization unit quantizes the encoding target frame after the conversion processing by the conversion unit, and the encoding device further includes the difference When the frame is a key frame, the frame includes a dequantization unit that dequantizes and stores the difference frame after quantization by the quantization unit in a memory, and the difference unit is configured to store the memory by the dequantization unit. The difference may be calculated using the key frame stored in the reference frame as the reference frame.

これによれば、差分部は、量子化されたフレーム(つまり量子化係数)を逆量子化することだけにより生成されたフレーム(例えば周波数係数)を参照用フレームとして、差分を算出する処理に用いる。よって、仮に上記より多い数の処理を施して参照用フレームを生成する場合と比較して、より短時間に参照用フレームを生成することができる。よって、符号化装置は、フレームの符号化に要する時間を削減することができる。   According to this, the difference unit uses a frame (for example, a frequency coefficient) generated only by dequantizing a quantized frame (that is, a quantization coefficient) as a reference frame, and uses it for the process of calculating the difference. . Therefore, it is possible to generate the reference frame in a shorter time than when the reference frame is generated by performing a larger number of processes than the above. Therefore, the encoding device can reduce the time required for encoding the frame.

また、前記符号化装置は、さらに、前記符号化部が生成した符号化データのデータサイズに基づいて、新たな符号化対象フレームをフレーム内符号化するか、又は、フレーム間符号化するかを制御する制御部とを備えてもよい。   Further, the encoding device further determines whether to encode a new encoding target frame within a frame or between frames based on a data size of encoded data generated by the encoding unit. You may provide the control part to control.

これによれば、制御部は、実際に符号化することで生成された符号化データのデータサイズに基づいて、次のフレームをフレーム内符号化するか、又は、フレーム間符号化するかを制御する。よって、符号化装置は、実際の符号化の結果に基づいて次のフレームの符号化をより適切に制御するとともに、仮に符号化のやり直しを行うとすれば生ずる処理時間の増加を回避することができる。   According to this, the control unit controls whether the next frame is intra-frame encoded or inter-frame encoded based on the data size of the encoded data generated by the actual encoding. To do. Therefore, the encoding device can more appropriately control the encoding of the next frame based on the actual encoding result, and avoid an increase in processing time that occurs if the encoding is performed again. it can.

また、前記制御部は、前記符号化部がフレーム間符号化することで生成した前記符号化データのデータサイズが閾値以上であるか否かを判定し、(a)前記データサイズが前記閾値以上である場合に、新たな符号化対象フレームをフレーム内符号化するよう制御し、(b)前記データサイズが前記閾値未満である場合に、新たな符号化対象フレームをフレーム間符号化するよう制御してもよい。   Further, the control unit determines whether or not a data size of the encoded data generated by the encoding unit performing inter-frame encoding is equal to or larger than a threshold value, and (a) the data size is equal to or larger than the threshold value. If so, control is performed so that the new encoding target frame is intra-frame encoded, and (b) control is performed so that the new encoding target frame is inter-frame encoded when the data size is less than the threshold. May be.

これによれば、制御部は、データサイズに大きさに応じて差分符号化(フレーム間符号化)をした効果が適切に発揮されているかを判断し、適切に発揮されていない場合には新たな符号化対象フレームをフレーム内符号化することで差分符号化の効果を発揮するように制御することができる。   According to this, the control unit determines whether the effect of performing differential encoding (interframe encoding) according to the size of the data size is appropriately exhibited, and if it is not properly demonstrated, a new It is possible to perform control so as to exert the effect of differential encoding by performing intra-frame encoding on a specific encoding target frame.

また、前記制御部は、前記符号化部がフレーム内符号化することで前記符号化データを生成したときには、新たな符号化対象フレームをフレーム間符号化するよう制御してもよい。   The control unit may perform control so that a new encoding target frame is inter-frame encoded when the encoding unit generates the encoded data by performing intra-frame encoding.

これによれば、制御部は、フレーム内符号化の後にはフレーム間符号化を行うことで、差分符号化の効果を発揮するように制御することができる。   According to this, the control unit can perform control so as to exhibit the effect of differential encoding by performing inter-frame encoding after intra-frame encoding.

また、本発明の一態様に係る復号装置は、参照用フレームをメモリから取得し、取得した前記参照用フレームと、符号化データとを加算して加算フレームを生成する加算部と、前記加算部が生成した加算フレームに対して逆量子化する逆量子化部と、前記逆量子化部により逆量子化された前記加算フレームに含まれる処理単位であるブロックごとに、逆周波数変換又は逆次数変換を含む逆変換処理を施す逆変換部と、前記逆変換処理後の前記加算フレームにおける前記ブロックの境界に対してフィルタ処理を施すフィルタ部と、前記フィルタ処理後の前記加算フレームに基づいてフレームを生成する生成部とを備える。   Further, the decoding device according to one aspect of the present invention includes: an adder that acquires a reference frame from a memory, adds the acquired reference frame and encoded data, and generates an added frame; and the adder An inverse quantization unit that performs inverse quantization on the addition frame generated by the inverse quantization unit, and an inverse frequency transform or an inverse order transform for each block that is a processing unit included in the addition frame inversely quantized by the inverse quantization unit. An inverse transform unit that performs an inverse transform process including: a filter unit that performs a filter process on a boundary of the block in the addition frame after the inverse transform process; and a frame based on the addition frame after the filter process. A generating unit for generating.

これによれば、上記符号化装置により符号化された符号化データを適切に復号することができる。   According to this, the encoded data encoded by the encoding device can be appropriately decoded.

また、本発明の一態様に係る符号化方法は、符号化対象フレームをメモリから取得する取得ステップと、前記取得ステップで取得した前記符号化対象フレームに含まれる処理単位であるブロックの境界に対してフィルタ処理を施すフィルタステップと、前記フィルタ処理後の前記符号化対象フレームに対して前記ブロックごとに、周波数変換又は次数変換を含む変換処理を施す変換ステップと、参照用フレームを前記メモリから取得し、取得した前記参照用フレームと、前記変換処理後の前記符号化対象フレームとの差分を、差分フレームとして算出する差分ステップと、前記差分ステップで算出した前記差分フレームを量子化する量子化ステップと、前記量子化ステップで量子化した前記差分フレームを符号化して符号化データを生成する符号化ステップとを含む。   The encoding method according to one aspect of the present invention includes an acquisition step of acquiring an encoding target frame from a memory, and a block boundary that is a processing unit included in the encoding target frame acquired in the acquisition step. A filtering step for performing filtering processing, a conversion step for performing conversion processing including frequency conversion or order conversion for each block on the encoding target frame after the filtering processing, and obtaining a reference frame from the memory A difference step of calculating a difference between the acquired reference frame and the encoding target frame after the conversion process as a difference frame, and a quantization step of quantizing the difference frame calculated in the difference step And encoding the difference frame quantized in the quantization step to generate encoded data And a Goka step.

これにより、上記符号化装置と同様の効果を奏する。   Thereby, there exists an effect similar to the said encoding apparatus.

また、本発明の一態様に係る復号方法は、参照用フレームをメモリから取得し、取得した前記参照用フレームと、符号化データとを加算して加算フレームを生成する加算ステップと、前記加算ステップで生成した加算フレームに対して逆量子化する逆量子化ステップと、前記逆量子化ステップで逆量子化された前記加算フレームに含まれる処理単位であるブロックごとに、逆周波数変換又は逆次数変換を含む逆変換処理を施す逆変換ステップと、前記逆変換処理後の前記加算フレームにおける前記ブロックの境界に対してフィルタ処理を施すフィルタステップと、前記フィルタ処理後の前記加算フレームに基づいてフレームを生成する生成ステップとを含む。   The decoding method according to one aspect of the present invention includes an addition step of acquiring a reference frame from a memory, adding the acquired reference frame and encoded data to generate an addition frame, and the addition step Inverse quantization step for inverse quantization with respect to the addition frame generated in step 1, and inverse frequency transformation or inverse order transformation for each block which is a processing unit included in the addition frame inversely quantized in the inverse quantization step. An inverse transform step for performing an inverse transform process, a filter step for performing a filter process on a boundary of the block in the added frame after the inverse transform process, and a frame based on the added frame after the filter process. Generating step.

これにより、上記復号装置と同様の効果を奏する。   Thereby, there exists an effect similar to the said decoding apparatus.

本発明にかかる符号化装置等は、フレームの符号化に要する時間を削減することができる。   The encoding device according to the present invention can reduce the time required for encoding a frame.

図1は、実施の形態に係るコンテンツ再生システムの構成を示す構成図である。FIG. 1 is a configuration diagram showing a configuration of a content reproduction system according to an embodiment. 図2は、実施の形態に係る符号化装置のハードウェア構成を示すブロック図である。FIG. 2 is a block diagram illustrating a hardware configuration of the encoding apparatus according to the embodiment. 図3は、実施の形態に係る符号化装置の構成を示すブロック図である。FIG. 3 is a block diagram showing a configuration of the encoding apparatus according to the embodiment. 図4は、実施の形態に係る符号化装置の処理を示すフロー図である。FIG. 4 is a flowchart showing processing of the encoding apparatus according to the embodiment. 図5は、実施の形態に係る復号装置の構成を示すブロック図である。FIG. 5 is a block diagram showing a configuration of the decoding apparatus according to the embodiment. 図6は、実施の形態に係る復号装置の処理を示すフロー図である。FIG. 6 is a flowchart showing processing of the decoding apparatus according to the embodiment. 図7は、関連技術に係る符号化装置の構成を示すブロック図である。FIG. 7 is a block diagram showing a configuration of an encoding apparatus according to related technology. 図8は、関連技術に係る復号装置の構成を示すブロック図である。FIG. 8 is a block diagram illustrating a configuration of a decoding device according to related technology. 図9は、実施の形態の変形例に係る符号化装置の構成を示すブロック図である。FIG. 9 is a block diagram showing a configuration of an encoding apparatus according to a modification of the embodiment. 図10は、実施の形態の変形例に係る符号化装置の処理を示すフロー図である。FIG. 10 is a flowchart showing processing of the encoding device according to the modification of the embodiment.

以下、実施の形態について、図面を参照しながら具体的に説明する。   Hereinafter, embodiments will be specifically described with reference to the drawings.

以下で説明する実施の形態は、いずれも本発明の好ましい一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、本発明の最上位概念を示す独立請求項に記載されていない構成要素については、より好ましい形態を構成する任意の構成要素として説明される。なお、同一の構成要素には同一の符号を付し、説明を省略する場合がある。   Each of the embodiments described below shows a preferred specific example of the present invention. The numerical values, shapes, materials, constituent elements, arrangement positions and connecting forms of the constituent elements, steps, order of steps, and the like shown in the following embodiments are merely examples, and are not intended to limit the present invention. In addition, among the constituent elements in the following embodiments, constituent elements that are not described in the independent claims indicating the highest concept of the present invention are described as optional constituent elements that constitute a more preferable embodiment. In addition, the same code | symbol is attached | subjected to the same component and description may be abbreviate | omitted.

(実施の形態)
本実施の形態において、フレームの符号化に要する時間を削減する符号化装置及び復号装置等について説明する。
(Embodiment)
In the present embodiment, an encoding device, a decoding device, and the like that reduce the time required for encoding a frame will be described.

図1は、本実施の形態に係るコンテンツ再生システムSの構成を示す構成図である。   FIG. 1 is a configuration diagram showing a configuration of a content reproduction system S according to the present embodiment.

図1に示されるように、コンテンツ再生システムSは、送信装置1と再生装置2とを備える。送信装置1と再生装置2とは、ネットワーク3により通信可能に接続されている。   As shown in FIG. 1, the content reproduction system S includes a transmission device 1 and a reproduction device 2. The transmission device 1 and the playback device 2 are connected by a network 3 so that they can communicate with each other.

コンテンツ再生システムSは、送信装置1が保有している動画像コンテンツ(以降、単にコンテンツともいう)を、1以上の再生装置2により再生するコンテンツ再生システムである。   The content reproduction system S is a content reproduction system in which moving image content (hereinafter also simply referred to as content) held by the transmission device 1 is reproduced by one or more reproduction devices 2.

送信装置1は、コンテンツを保有しており、コンテンツをネットワーク3を通じて再生装置2に送信する送信装置である。送信装置1は、コンテンツを圧縮符号化(以降、単に符号化ともいう)する符号化装置10を備える。符号化装置10は、コンテンツのデータ量を削減した符号化データを生成し、生成した符号化データをネットワーク3に送信する。   The transmission device 1 is a transmission device that has content and transmits the content to the playback device 2 through the network 3. The transmission device 1 includes an encoding device 10 that compresses and encodes content (hereinafter also simply referred to as encoding). The encoding device 10 generates encoded data in which the amount of content data is reduced, and transmits the generated encoded data to the network 3.

再生装置2は、ネットワーク3を通じて送信装置1からコンテンツを受信し、受信したコンテンツを再生する再生装置である。再生装置2は、送信装置1が保有している動画コンテンツをもとに符号化装置10が生成した符号化データを、ネットワーク3を通じて受信する。再生装置2は、符号化データを復号する復号装置20を備える。復号装置20は、ネットワーク3から受信した符号化データを復号することでコンテンツを復元し、復元したコンテンツを再生装置2により再生する。   The playback device 2 is a playback device that receives content from the transmission device 1 via the network 3 and plays back the received content. The playback device 2 receives the encoded data generated by the encoding device 10 based on the moving image content held by the transmission device 1 through the network 3. The playback device 2 includes a decoding device 20 that decodes encoded data. The decoding device 20 restores the content by decoding the encoded data received from the network 3, and the playback device 2 plays back the restored content.

ネットワーク3は、送信装置1と再生装置2とを通信可能に接続するネットワークである。ネットワーク3は、具体的には、IEEE802.11a、b、g、n規格等に適合する無線LAN(Local Area Network)、又は、IEEE802.3規格等に適合する有線LANである。   The network 3 is a network that connects the transmission device 1 and the playback device 2 so that they can communicate with each other. Specifically, the network 3 is a wireless LAN (Local Area Network) conforming to the IEEE 802.11a, b, g, n standard or the like, or a wired LAN conforming to the IEEE 802.3 standard or the like.

なお、コンテンツ再生システムSは、2以上の再生装置2を備えていてもよい。その場合、2以上の再生装置2それぞれがネットワーク3に接続し、送信装置1が送信する符号化データを受信することができることを要する。送信装置1は、再生装置2が2以上存在する場合には、2以上の再生装置2それぞれに対してユニキャスト送信してもよいし、2以上の再生装置2が受信できるようにブロードキャスト送信してもよい。   The content reproduction system S may include two or more reproduction devices 2. In that case, it is necessary that each of the two or more reproducing apparatuses 2 is connected to the network 3 and can receive the encoded data transmitted by the transmitting apparatus 1. When there are two or more playback devices 2, the transmission device 1 may perform unicast transmission to each of the two or more playback devices 2, or broadcast transmission so that the two or more playback devices 2 can receive. May be.

図2は、本実施の形態に係る符号化装置10のハードウェア構成を示すブロック図である。なお、復号装置20も、符号化装置10と同じハードウェア構成を有する。   FIG. 2 is a block diagram showing a hardware configuration of encoding apparatus 10 according to the present embodiment. Note that the decoding device 20 also has the same hardware configuration as the encoding device 10.

図2に示されるように、符号化装置10は、CPU11と、メインメモリ12と、ストレージ13とを備える。   As shown in FIG. 2, the encoding device 10 includes a CPU 11, a main memory 12, and a storage 13.

CPU11は、メインメモリ12又はストレージ13に格納された制御プログラムを実行するプロセッサである。符号化装置10が実行する処理は、CPU11が制御プログラムを実行することで実現され得る。   The CPU 11 is a processor that executes a control program stored in the main memory 12 or the storage 13. The processing executed by the encoding device 10 can be realized by the CPU 11 executing a control program.

メインメモリ12は、CPU11が制御プログラムを実行するときに使用するワークエリアとして用いられる揮発性の記憶領域である。   The main memory 12 is a volatile storage area used as a work area used when the CPU 11 executes a control program.

ストレージ13は、コンテンツを構成するフレームのデータを記憶している不揮発性の記憶装置である。なお、ストレージ13は、例えばHDD(Hard Disk Drive)、又は、SSD(Solid State Drive)等であり、符号化装置10に内蔵されたものであってもよいし、USB(Universal Serial Bus)規格等により外付けされるものであってもよい。   The storage 13 is a non-volatile storage device that stores data of frames constituting content. The storage 13 is, for example, an HDD (Hard Disk Drive), an SSD (Solid State Drive), or the like, and may be built in the encoding device 10 or a USB (Universal Serial Bus) standard. May be externally attached.

以降において、本実施の形態に係る符号化装置及び復号装置について、従来の関連技術に係る符号化装置及び復号装置と比較しながら説明する。   Hereinafter, the encoding apparatus and decoding apparatus according to the present embodiment will be described in comparison with conventional encoding apparatuses and decoding apparatuses according to related art.

図3は、本実施の形態に係る符号化装置10の構成を示すブロック図である。   FIG. 3 is a block diagram showing a configuration of encoding apparatus 10 according to the present embodiment.

図3に示されるように、符号化装置10は、フレーム保持部100と、取得部101と、ブロッキングフィルタ102と、変換部103と、差分部104と、量子化部105と、符号化部106と、逆量子化部107と、参照用保持部108とを備える。   As illustrated in FIG. 3, the encoding device 10 includes a frame holding unit 100, an acquisition unit 101, a blocking filter 102, a conversion unit 103, a difference unit 104, a quantization unit 105, and an encoding unit 106. And an inverse quantization unit 107 and a reference holding unit 108.

フレーム保持部100は、符号化対象のコンテンツを構成するフレームのデータを保持している記憶部である。フレーム保持部100は、例えばメインメモリ12等により実現される。   The frame holding unit 100 is a storage unit that holds data of frames constituting the content to be encoded. The frame holding unit 100 is realized by, for example, the main memory 12 or the like.

取得部101は、符号化対象フレームを取得する処理部である。取得部101は、フレーム保持部100に格納されているコンテンツに含まれるフレームのうちの符号化対象フレームを読み出すことで取得する。符号化対象フレームは、例えば、コンテンツを構成する複数のフレームのうち、符号化装置10が管理している現在時刻情報に対応付けられるフレームが順次に割り当てられる。   The acquisition unit 101 is a processing unit that acquires an encoding target frame. The acquisition unit 101 acquires the frame to be encoded by reading out the encoding target frame from the frames included in the content stored in the frame holding unit 100. As the encoding target frame, for example, frames corresponding to current time information managed by the encoding device 10 among a plurality of frames constituting the content are sequentially assigned.

ブロッキングフィルタ102は、取得部101が取得した符号化対象フレームに含まれる処理単位であるブロック境界に対してブロッキングフィルタ処理を施す処理部である。ブロッキングフィルタ処理は、変換処理(後述)の処理単位であるブロックの境界で生じ得る不連続性を抑制するために、変換処理の前に施すべき処理である。なお、ブロッキングフィルタ102は、符号化装置10が備えるフィルタ部に相当する。   The blocking filter 102 is a processing unit that performs a blocking filter process on a block boundary that is a processing unit included in the encoding target frame acquired by the acquisition unit 101. The blocking filter process is a process to be performed before the conversion process in order to suppress discontinuity that may occur at a block boundary that is a processing unit of the conversion process (described later). The blocking filter 102 corresponds to a filter unit included in the encoding device 10.

変換部103は、ブロッキングフィルタ102がブロッキングフィルタ処理を施した後のフレームに対してブロックごとに変換処理を施す処理部である。変換処理の一例は、周波数変換処理である。周波数変換は、符号化対象フレームを、基底となる複数の三角関数の足し合わせとして表現する場合の係数(周波数係数)に変換する。なお、変換処理は、次数変換(例えば、アダマール変換)処理等を採用することもできる。   The conversion unit 103 is a processing unit that performs conversion processing for each block on the frame after the blocking filter 102 performs blocking filter processing. An example of the conversion process is a frequency conversion process. In the frequency conversion, a frame to be encoded is converted into a coefficient (frequency coefficient) in a case where the frame to be encoded is expressed as an addition of a plurality of base trigonometric functions. As the conversion process, an order conversion (for example, Hadamard conversion) process or the like may be employed.

差分部104は、変換部103が変換処理を施した後の符号化対象フレーム(周波数係数)と、参照用保持部108が保持している参照用フレームとの差分を算出することで、差分フレームを生成する処理部である。差分部104は、上記差分を算出する前に、参照用保持部108から参照用フレームを読み出す。差分部104は、符号化対象フレームがキーフレームでない場合に上記差分を算出し、キーフレームである場合には上記差分を算出しない。なお、符号化対象フレームがキーフレームであるか、又は、キーフレームでないかは、差分部104が変換部103から符号化対象フレームを取得した時点までに決定されていてもよいし、何らかの制御に基づいて差分部104が決定してもよい。この制御には、例えば、後述する変形例における制御部111による制御がある。   The difference unit 104 calculates the difference between the frame to be encoded (frequency coefficient) after the conversion unit 103 performs the conversion process and the reference frame held by the reference holding unit 108, thereby calculating the difference frame. Is a processing unit for generating The difference unit 104 reads the reference frame from the reference holding unit 108 before calculating the difference. The difference unit 104 calculates the difference when the encoding target frame is not a key frame, and does not calculate the difference when it is a key frame. Whether the encoding target frame is a key frame or not a key frame may be determined by the time when the difference unit 104 acquires the encoding target frame from the conversion unit 103, or for some control. The difference unit 104 may determine based on this. This control includes, for example, control by the control unit 111 in a modification described later.

差分部104が参照用フレームを読み出すタイミングは、取得部101がフレーム保持部100から符号化対象フレームを読み出すタイミングより後になる。なぜなら、取得部101がフレーム保持部100から符号化対象フレームを読み出した後に、ブロッキングフィルタ102及び変換部103の処理が実行され、その後に、差分部104が参照用フレームを読み出すからである。言い換えれば、ブロッキングフィルタ102及び変換部103が、取得部101による符号化対象フレームの読み出しに対して、差分部104による参照用フレームの読み出しを遅延させる遅延部として機能するとも言える。   The timing at which the difference unit 104 reads the reference frame is after the timing at which the acquisition unit 101 reads the encoding target frame from the frame holding unit 100. This is because the processing of the blocking filter 102 and the conversion unit 103 is executed after the acquisition unit 101 reads out the encoding target frame from the frame holding unit 100, and then the difference unit 104 reads out the reference frame. In other words, it can be said that the blocking filter 102 and the conversion unit 103 function as a delay unit that delays the reading of the reference frame by the difference unit 104 with respect to the reading of the encoding target frame by the acquisition unit 101.

量子化部105は、変換部103が変換処理を施した後の符号化対象フレーム、又は、差分部104が生成した差分フレームを量子化する(つまり、上記フレームを量子化係数に変換する)処理部である。   The quantization unit 105 quantizes the encoding target frame after the conversion unit 103 performs the conversion process or the difference frame generated by the difference unit 104 (that is, converts the frame into a quantization coefficient). Part.

符号化部106は、量子化部105が量子化したフレームを符号化することで符号化データを生成する処理部である。符号化部106が生成した符号化データが、符号化装置10が送信するコンテンツデータに相当する。   The encoding unit 106 is a processing unit that generates encoded data by encoding the frame quantized by the quantization unit 105. The encoded data generated by the encoding unit 106 corresponds to content data transmitted by the encoding device 10.

逆量子化部107は、量子化部105による量子化後のフレームを逆量子化する処理部である。逆量子化部107は、量子化部105による量子化後のフレームがキーフレームである場合に逆量子化を行う。逆量子化部107は、逆量子化したフレームを参照用フレームとして参照用保持部108に格納する。   The inverse quantization unit 107 is a processing unit that inversely quantizes the frame after quantization by the quantization unit 105. The inverse quantization unit 107 performs inverse quantization when the frame after quantization by the quantization unit 105 is a key frame. The inverse quantization unit 107 stores the inversely quantized frame in the reference holding unit 108 as a reference frame.

参照用保持部108は、逆量子化部107が逆量子化した後のキーフレームを参照用フレームとして保持する記憶部である。参照用保持部108が保持するキーフレームは、差分部104に参照され、差分を算出する処理に用いられる。参照用保持部108は、例えばメインメモリ12により実現される。   The reference holding unit 108 is a storage unit that holds the key frame after the inverse quantization unit 107 performs inverse quantization as a reference frame. The key frame held by the reference holding unit 108 is referred to by the difference unit 104 and used for the process of calculating the difference. The reference holding unit 108 is realized by the main memory 12, for example.

以上のように構成された符号化装置10の処理について説明する。   Processing of the encoding device 10 configured as described above will be described.

図4は、本実施の形態に係る符号化装置10の処理を示すフロー図である。   FIG. 4 is a flowchart showing processing of the encoding apparatus 10 according to the present embodiment.

ステップS101において、取得部101は、符号化対象フレームをフレーム保持部100から読み出すことで取得する。   In step S <b> 101, the acquisition unit 101 acquires the encoding target frame by reading it from the frame holding unit 100.

ステップS102において、ブロッキングフィルタ102は、取得部101が取得した符号化対象フレームにおけるブロック境界に対してブロッキングフィルタ処理を施す。   In step S <b> 102, the blocking filter 102 performs a blocking filter process on the block boundary in the encoding target frame acquired by the acquisition unit 101.

ステップS103において、変換部103は、ブロッキングフィルタ102によるブロッキングフィルタ処理後のフレームに対してブロックごとに変換処理を施す。   In step S <b> 103, the conversion unit 103 performs conversion processing for each block on the frame after the blocking filter processing by the blocking filter 102.

ステップS104において、符号化装置10は、符号化対象フレームがキーフレームであるか否かに応じて処理を分岐する。符号化対象フレームがキーフレームである場合(ステップS104でYes)にはステップS105に進み、そうでない場合(ステップS104でNo)には、ステップS111に進む。   In step S104, the encoding apparatus 10 branches the process depending on whether the encoding target frame is a key frame. If the frame to be encoded is a key frame (Yes in step S104), the process proceeds to step S105. If not (No in step S104), the process proceeds to step S111.

ステップS105において、量子化部105は、変換部103が変換処理を施した後の符号化対象フレームに量子化処理を施す。   In step S105, the quantization unit 105 performs the quantization process on the encoding target frame after the conversion unit 103 performs the conversion process.

ステップS106において、逆量子化部107は、量子化部105による量子化後のキーフレームを逆量子化処理を施す。   In step S106, the inverse quantization unit 107 performs an inverse quantization process on the key frame quantized by the quantization unit 105.

ステップS107において、逆量子化部107は、ステップS106で逆量子化したフレームを参照用保持部108に格納する。   In step S107, the inverse quantization unit 107 stores the frame subjected to the inverse quantization in step S106 in the reference holding unit 108.

ステップS111において、差分部104は、変換部103が変換処理を施した後の符号化対象フレームと、参照用保持部108から読み出した参照用フレームとの差分を、差分フレームとして生成する。   In step S111, the difference unit 104 generates, as a difference frame, a difference between the encoding target frame after the conversion unit 103 performs the conversion process and the reference frame read from the reference holding unit 108.

ステップS112において、量子化部105は、差分部104が変換処理を施した後の差分フレームを量子化する。   In step S112, the quantization unit 105 quantizes the difference frame after the difference unit 104 performs the conversion process.

ステップS108において、符号化部106は、量子化部105が量子化したキーフレームを符号化して符号化データを生成する。生成された符号化データは、送信装置1により再生装置2に送信される。   In step S108, the encoding unit 106 encodes the key frame quantized by the quantization unit 105 to generate encoded data. The generated encoded data is transmitted to the reproduction device 2 by the transmission device 1.

図5は、本実施の形態に係る復号装置20の構成を示すブロック図である。   FIG. 5 is a block diagram showing a configuration of decoding apparatus 20 according to the present embodiment.

図5に示されるように、復号装置20は、復号部201と、加算部202と、逆量子化部203と、参照用保持部204と、逆変換部205と、デブロッキングフィルタ206と、生成部207とを備える。   As illustrated in FIG. 5, the decoding device 20 includes a decoding unit 201, an addition unit 202, an inverse quantization unit 203, a reference holding unit 204, an inverse transformation unit 205, a deblocking filter 206, and a generation Unit 207.

復号部201は、符号化装置10が送信したコンテンツデータである符号化データを復号対象フレームとして受信して復号する処理部である。復号部201が復号により生成するフレームは、符号化部106による符号化の対象となった元データである符号化対象フレーム(量子化係数)である。   The decoding unit 201 is a processing unit that receives and decodes encoded data that is content data transmitted by the encoding device 10 as a decoding target frame. A frame generated by decoding by the decoding unit 201 is a frame to be encoded (quantization coefficient) that is original data that has been encoded by the encoding unit 106.

加算部202は、復号部201が復号した復号対象フレームと、参照用保持部204が保持している参照用フレームとを加算することで、加算フレーム(量子化係数)を生成する処理部である。加算部202は、上記の加算処理をする前に、参照用保持部204から参照用フレームを読み出す。   The addition unit 202 is a processing unit that generates an addition frame (quantization coefficient) by adding the decoding target frame decoded by the decoding unit 201 and the reference frame held by the reference holding unit 204. . The addition unit 202 reads the reference frame from the reference holding unit 204 before performing the above addition process.

逆量子化部203は、加算部202が加算処理により生成した加算フレームを逆量子化することで、復号対象フレーム(周波数係数)を算出する処理部である。逆量子化部203の処理は、符号化装置10の逆量子化部107と同じである。   The inverse quantization unit 203 is a processing unit that calculates a decoding target frame (frequency coefficient) by inversely quantizing the addition frame generated by the addition unit 202 through the addition process. The processing of the inverse quantization unit 203 is the same as that of the inverse quantization unit 107 of the encoding device 10.

参照用保持部204は、逆量子化部203が生成した復号対象フレームのうちのキーフレームを、参照用フレームとして保持する記憶部である。参照用保持部204が保持するキーフレームは、加算部202に参照され、加算の処理に用いられる。参照用保持部204は、例えばメインメモリ12等により実現される。   The reference holding unit 204 is a storage unit that holds a key frame of the decoding target frames generated by the inverse quantization unit 203 as a reference frame. The key frame held by the reference holding unit 204 is referred to by the adding unit 202 and used for the addition process. The reference holding unit 204 is realized by the main memory 12 or the like, for example.

逆変換部205は、逆量子化部203が逆量子化により生成した復号対象フレーム(周波数係数)に対して、逆変換処理を施す処理部である。逆変換処理は、符号化装置10の変換部103による変換とは逆の変換を行う。具体的には、逆変換処理は、変換部103が周波数変換を行う場合には逆周波数変換処理であり、変換部103が次数変換を行う場合には逆次数変換処理である。   The inverse transform unit 205 is a processing unit that performs an inverse transform process on a decoding target frame (frequency coefficient) generated by the inverse quantization unit 203 through inverse quantization. In the inverse conversion process, conversion opposite to the conversion by the conversion unit 103 of the encoding device 10 is performed. Specifically, the inverse conversion process is an inverse frequency conversion process when the conversion unit 103 performs frequency conversion, and an inverse order conversion process when the conversion unit 103 performs order conversion.

デブロッキングフィルタ206は、逆変換部205が逆変換処理を施した後の復号対象フレームにおけるブロック境界に対してデブロッキングフィルタ処理を施す処理部である。なお、デブロッキングフィルタ206は、復号装置20が備えるフィルタ部に相当する。   The deblocking filter 206 is a processing unit that performs a deblocking filter process on the block boundary in the decoding target frame after the inverse conversion unit 205 performs the inverse conversion process. The deblocking filter 206 corresponds to a filter unit included in the decoding device 20.

生成部207は、デブロッキングフィルタ206によるデブロッキングフィルタ処理が施された加算フレームを取得し、取得した加算フレームに属性情報等を付加することでフレームを生成し、後段の処理に渡す処理部である。   The generation unit 207 is a processing unit that acquires an addition frame that has been subjected to deblocking filter processing by the deblocking filter 206, generates a frame by adding attribute information or the like to the acquired addition frame, and passes the frame to subsequent processing. is there.

以上のように構成された復号装置20の処理について説明する。   Processing of the decoding device 20 configured as described above will be described.

図6は、本実施の形態に係る復号装置20の処理を示すフロー図である。   FIG. 6 is a flowchart showing processing of the decoding device 20 according to the present embodiment.

ステップS201において、復号部201は、符号化データを受信して復号することで復号対象フレームを取得する。   In step S201, the decoding unit 201 receives and decodes encoded data to obtain a decoding target frame.

ステップS202において、復号装置20は、復号対象フレームがキーフレームであるか否かに応じて処理を分岐する。復号対象フレームがキーフレームである場合(ステップS202でYes)にはステップS203に進み、そうでない場合(ステップS202でNo)には、ステップS211に進む。   In step S202, the decryption apparatus 20 branches the process depending on whether or not the decryption target frame is a key frame. If the frame to be decrypted is a key frame (Yes in step S202), the process proceeds to step S203. If not (No in step S202), the process proceeds to step S211.

ステップS203において、逆量子化部203は、復号対象フレームであるキーフレームを逆量子化する。   In step S203, the inverse quantization unit 203 inversely quantizes the key frame that is the decoding target frame.

ステップS204において、逆量子化部203は、ステップS203で逆量子化したキーフレームを参照用保持部204に格納する。   In step S204, the inverse quantization unit 203 stores the key frame inversely quantized in step S203 in the reference holding unit 204.

ステップS205において、逆変換部205は、逆量子化部203が逆量子化した加算フレームに対して、逆変換処理を施す。   In step S <b> 205, the inverse transform unit 205 performs an inverse transform process on the addition frame that is inversely quantized by the inverse quantization unit 203.

ステップS206において、デブロッキングフィルタ206は、逆変換部205が逆変換処理を施した後の加算フレームにおけるブロック境界に対してデブロッキングフィルタ処理を施す。   In step S206, the deblocking filter 206 performs a deblocking filter process on the block boundary in the addition frame after the inverse transform unit 205 performs the inverse transform process.

ステップS207において、生成部207は、フレームを生成し、後段の処理に渡す。   In step S207, the generation unit 207 generates a frame and passes it to a subsequent process.

ステップS211において、加算部202は、復号部201が復号により生成したフレームと、参照用保持部607から読み込んだ参照用フレームとを加算することで、加算フレームを生成する。   In step S211, the addition unit 202 adds the frame generated by the decoding unit 201 by decoding and the reference frame read from the reference holding unit 607 to generate an addition frame.

ステップS212において、逆量子化部203は、加算部202が加算処理により生成した加算フレームを逆量子化する処理部である。   In step S212, the inverse quantization unit 203 is a processing unit that performs inverse quantization on the addition frame generated by the addition unit 202 through the addition process.

次に、関連技術に係る符号化装置及び復号装置について説明する。なお、関連技術とは、フレームの符号化に比較的多くの時間を要する従来の符号化装置及び復号装置の一例である。   Next, an encoding device and a decoding device according to related technology will be described. The related art is an example of a conventional encoding device and decoding device that require a relatively long time for encoding a frame.

図7は、関連技術に係る符号化装置50の構成を示すブロック図である。符号化装置50は、図1における符号化装置10として従来利用されている符号化装置の一例である。   FIG. 7 is a block diagram illustrating a configuration of the encoding device 50 according to the related art. The encoding device 50 is an example of an encoding device conventionally used as the encoding device 10 in FIG.

図7に示されるように符号化装置50は、フレーム保持部500と、取得部501と、差分部502と、ブロッキングフィルタ503と、変換部504と、量子化部505と、符号化部506と、逆量子化部507と、逆変換部508と、デブロッキングフィルタ509と、参照用保持部510とを備える。   As illustrated in FIG. 7, the encoding device 50 includes a frame holding unit 500, an acquisition unit 501, a difference unit 502, a blocking filter 503, a conversion unit 504, a quantization unit 505, and an encoding unit 506. , An inverse quantization unit 507, an inverse transform unit 508, a deblocking filter 509, and a reference holding unit 510.

ここで、符号化装置50が符号化装置10と異なる点は、差分部502が取得部501の後段に配置されている点と、逆量子化部507の後段に逆変換部508及びデブロッキングフィルタ509とを備える点とである。   Here, the difference between the encoding device 50 and the encoding device 10 is that the difference unit 502 is arranged at the subsequent stage of the acquisition unit 501 and the inverse conversion unit 508 and the deblocking filter at the subsequent stage of the inverse quantization unit 507. 509.

差分部502は、取得部501が取得した符号化対象フレームと、参照用保持部510が保持している参照用フレームとの差分を算出することで、差分フレームを生成する処理部である。差分部502は、符号化対象フレームがキーフレームでない場合に上記差分を算出し、キーフレームである場合には上記差分を算出しない。   The difference unit 502 is a processing unit that generates a difference frame by calculating a difference between the encoding target frame acquired by the acquisition unit 501 and the reference frame held by the reference holding unit 510. The difference unit 502 calculates the difference when the encoding target frame is not a key frame, and does not calculate the difference when it is a key frame.

逆変換部508は、逆量子化部507が逆量子化したキーフレームに対して、逆変換処理を施す処理部である。逆変換部508は、逆変換部205と同様の処理を行う。   The inverse transform unit 508 is a processing unit that performs an inverse transform process on the key frame that is inversely quantized by the inverse quantization unit 507. The inverse transform unit 508 performs the same processing as the inverse transform unit 205.

デブロッキングフィルタ509は、逆変換部508が逆変換処理を施した後のキーフレームにおけるブロック境界に対してデブロッキングフィルタ処理を施す処理部である。   The deblocking filter 509 is a processing unit that performs the deblocking filter process on the block boundary in the key frame after the inverse conversion unit 508 performs the inverse conversion process.

参照用保持部510は、デブロッキングフィルタ509により生成された差分フレームの複製を保持する。   The reference holding unit 510 holds a copy of the difference frame generated by the deblocking filter 509.

なお、フレーム保持部500と、取得部501と、ブロッキングフィルタ503と、変換部504と、量子化部505と、符号化部506と、逆量子化部507とは、符号化装置10における同名の構成要素と同じであるので説明を省略する。   Note that the frame holding unit 500, the acquisition unit 501, the blocking filter 503, the transform unit 504, the quantization unit 505, the encoding unit 506, and the inverse quantization unit 507 have the same names in the encoding device 10. Since it is the same as a component, description is abbreviate | omitted.

図8は、関連技術に係る復号装置60の構成を示すブロック図である。   FIG. 8 is a block diagram showing a configuration of a decoding device 60 according to the related art.

図8に示されるように、復号装置60は、復号部601と、逆量子化部602と、逆変換部603と、デブロッキングフィルタ604と、加算部605と、生成部606と、参照用保持部607とを備える。   As illustrated in FIG. 8, the decoding device 60 includes a decoding unit 601, an inverse quantization unit 602, an inverse transformation unit 603, a deblocking filter 604, an addition unit 605, a generation unit 606, and a reference hold. Unit 607.

ここで、復号装置60が復号装置20と異なる点は、加算部605がデブロッキングフィルタ604の後段に備えられている点である。   Here, the decoding device 60 is different from the decoding device 20 in that an adding unit 605 is provided in the subsequent stage of the deblocking filter 604.

加算部605は、デブロッキングフィルタ604がデブロッキングフィルタ処理を施した後のフレームと、参照用保持部607が保持している参照用フレームとを加算することで、加算フレームを生成する処理部である。   The adding unit 605 is a processing unit that generates an added frame by adding the frame after the deblocking filter 604 performs the deblocking filter process and the reference frame held by the reference holding unit 607. is there.

参照用保持部607は、生成部606が生成したフレームの複製を保持する。   The reference holding unit 607 holds a copy of the frame generated by the generation unit 606.

なお、復号部601と、逆量子化部602と、逆変換部603と、デブロッキングフィルタ604と、生成部606とは、復号装置20における同名の構成要素と同じであるので説明を省略する。   Note that the decoding unit 601, the inverse quantization unit 602, the inverse transform unit 603, the deblocking filter 604, and the generation unit 606 are the same as the components of the same name in the decoding device 20, and thus description thereof is omitted.

上記関連技術に係る符号化装置50による符号化処理に要する時間を増加させる要因には以下の2点がある。   There are the following two factors that increase the time required for the encoding process by the encoding apparatus 50 according to the related art.

(1)処理ブロック数が比較的多い点
図7に示される処理ブロックが行う処理それぞれは計算処理により実現される。そのため、処理ブロック数が比較的多いと、その分、比較的多くの計算処理を要し、その結果、符号化処理に時間を要する。
(1) Points with a relatively large number of processing blocks Each processing performed by the processing blocks shown in FIG. 7 is realized by calculation processing. For this reason, if the number of processing blocks is relatively large, a relatively large amount of calculation processing is required, and as a result, encoding processing takes time.

(2)メモリアクセスの時間差が比較的小さい点
図7に示されるように差分部502は、差分を算出する処理を行う前に、当該処理の対象である2つのフレームである符号化対象フレームと参照用フレームとをメインメモリ12から取得する。このとき、フレームを読み出すためのメモリアクセスが実質的に同時に2つ発生し、これらのメモリアクセスに所定の時間を要する場合がある。なお、上記2つのメモリアクセスを上記所定の時間を要せずに行うために、メモリアクセスのためのバッファサイズを大きくする対処があり得る。しかしこの対処方法を用いることは、他の機能ブロックに影響を与える可能性もあり望ましくない。
(2) Points in which the memory access time difference is relatively small As shown in FIG. 7, the difference unit 502, before performing the process of calculating the difference, the encoding target frame that is the two frames that are the target of the process, The reference frame is acquired from the main memory 12. At this time, two memory accesses for reading a frame occur substantially simultaneously, and a predetermined time may be required for these memory accesses. In order to perform the two memory accesses without requiring the predetermined time, there may be a countermeasure for increasing the buffer size for memory access. However, using this countermeasure is not desirable because it may affect other functional blocks.

そこで、本実施の形態に係る符号化装置10では、上記要因を以下のように解消している。   Therefore, in the encoding apparatus 10 according to the present embodiment, the above factors are eliminated as follows.

(1)処理ブロック数について
図7に示されるように、符号化装置50の参照用保持部510が保持する参照用フレームは、量子化部505が量子化した差分フレームに対して、逆量子化部507、逆変換部508及びデブロッキングフィルタ509による処理がなされたものである。
(1) Number of processing blocks As shown in FIG. 7, the reference frame held by the reference holding unit 510 of the encoding device 50 is inversely quantized with respect to the difference frame quantized by the quantization unit 505. Processing by the unit 507, the inverse transform unit 508, and the deblocking filter 509 is performed.

一方、図3に示されるように、符号化装置10の参照用保持部108が保持する参照用フレームは、量子化部105が量子化した差分フレームに対して、逆量子化部107による処理がなされたものである。つまり、参照用フレームが生成されるまでの時間は、符号化装置10では、符号化装置50における逆変換部508及びデブロッキングフィルタ509による処理の分の時間が削減される。   On the other hand, as shown in FIG. 3, the reference frame held by the reference holding unit 108 of the encoding device 10 is processed by the inverse quantization unit 107 on the difference frame quantized by the quantization unit 105. It was made. That is, the time required until the reference frame is generated is reduced in the encoding device 10 by the time required for processing by the inverse transform unit 508 and the deblocking filter 509 in the encoding device 50.

このように、符号化装置10は、符号化装置50と比較して符号化に要する処理の処理ブロック数が削減されており、符号化処理に要する時間が削減される。   In this way, the encoding device 10 has a reduced number of processing blocks for processing required for encoding as compared to the encoding device 50, and the time required for encoding processing is reduced.

(2)メモリアクセスの時間差について
図7に示されるように、符号化装置50が備える差分部502は、差分を算出する処理を行う際に、差分処理の対象である2つのフレームである符号化対象フレームと参照用フレームとをメインメモリ12から取得する。このとき、フレームを読み出すためのメモリアクセスが実質的に同時に2つ発生し、これらのメモリアクセスに所定の時間を要する場合がある。
(2) Regarding Memory Access Time Difference As shown in FIG. 7, the difference unit 502 included in the encoding device 50 encodes two frames that are targets of difference processing when performing a process of calculating a difference. The target frame and the reference frame are acquired from the main memory 12. At this time, two memory accesses for reading a frame occur substantially simultaneously, and a predetermined time may be required for these memory accesses.

一方、図3に示されるように、符号化装置10において、取得部101が符号化対象フレームを読み出すタイミングと、差分部104が参照用フレームを読み出すタイミングとには、ブロッキングフィルタ102及び変換部103の処理時間分だけの時間差が生ずる。よって、メインメモリ12に対して実質的に同時に2つのメモリアクセスが発生することが回避される。   On the other hand, as shown in FIG. 3, in the encoding device 10, the blocking filter 102 and the conversion unit 103 include the timing at which the acquisition unit 101 reads the encoding target frame and the timing at which the difference unit 104 reads the reference frame. A time difference corresponding to the processing time is generated. Therefore, it is possible to avoid two memory accesses to the main memory 12 substantially simultaneously.

このように、符号化装置10は、実質的に同時に2つのフレームを参照するためのメモリアクセスを行う状況を回避している。なお、その際に、メモリアクセスのためのバッファサイズを大きくする等の対処を行う必要性も生じない。   As described above, the encoding apparatus 10 avoids a situation in which memory access for referring to two frames is performed substantially simultaneously. At this time, it is not necessary to take measures such as increasing the buffer size for memory access.

なお、本実施の形態に係る符号化装置10が備える処理ブロックの数が少ないことは、符号化装置10をFPGA(Field−Programmable Gate Array)等により実現する際に論理ブロック数を削減することにつながる。この点も、本実施の形態に係る符号化装置10の利点である。   Note that the number of processing blocks provided in the encoding device 10 according to the present embodiment is small because the number of logical blocks is reduced when the encoding device 10 is realized by a field-programmable gate array (FPGA) or the like. Connected. This point is also an advantage of the encoding apparatus 10 according to the present embodiment.

以上のように、本実施の形態の符号化装置は、フレームの符号化に要する時間を削減することができる。   As described above, the encoding apparatus according to the present embodiment can reduce the time required for encoding a frame.

(実施の形態の変形例)
本変形例において、フレームの符号化に要する時間を削減する符号化装置及び復号装置等について、さらに、符号化処理の結果に応じて、新たなフレームをフレーム内符号化するか、又は、フレーム間符号化するか、言い換えれば、どのフレームをキーフレームとするかを適切に決定する技術について説明する。
(Modification of the embodiment)
In this modification, for an encoding device and a decoding device that reduce the time required to encode a frame, a new frame is intra-coded according to the result of the encoding process, or between frames A technique for appropriately determining which frame to encode, in other words, which frame to use as a key frame will be described.

図9は、本実施の形態の変形例に係る符号化装置10Aの構成を示すブロック図である。   FIG. 9 is a block diagram showing a configuration of coding apparatus 10A according to a modification of the present embodiment.

図9に示されるように、符号化装置10Aは、フレーム保持部100と、取得部101と、ブロッキングフィルタ102と、変換部103と、差分部104Aと、量子化部105と、符号化部106と、逆量子化部107と、参照用保持部108と、制御部111と、切替部112とを備える。   As illustrated in FIG. 9, the encoding device 10A includes a frame holding unit 100, an acquisition unit 101, a blocking filter 102, a conversion unit 103, a difference unit 104A, a quantization unit 105, and an encoding unit 106. An inverse quantization unit 107, a reference holding unit 108, a control unit 111, and a switching unit 112.

ここで、フレーム保持部100と、取得部101と、ブロッキングフィルタ102と、変換部103と、量子化部105と、符号化部106と、逆量子化部107と、参照用保持部108とについては、上記実施の形態の同名の構成要素と同じ機能を有するので、詳細な説明を省略する。   Here, the frame holding unit 100, the acquiring unit 101, the blocking filter 102, the transforming unit 103, the quantizing unit 105, the encoding unit 106, the inverse quantization unit 107, and the reference holding unit 108 are described. Has the same function as the component of the same name in the above embodiment, and detailed description thereof is omitted.

差分部104Aは、上記実施の形態における差分部104と同様、変換部103が変換処理を施した後の符号化対象フレームと、参照用保持部108が保持している参照用フレームとの差分を、差分フレームとして生成する処理部である。差分部104Aが変換部103からフレームを取得する時点では、このフレームがキーフレームであるか又は差分フレームであるかは決定されておらず、後段の制御部111により切替部112の状態が制御されることで、このフレームがキーフレームになるか、差分フレームになるかが決定される。差分部104Aに入力されたフレームがフレーム間符号化される(差分フレームになる)場合には、後段の切替部112を通じて量子化部105に提供される。一方、差分部104Aに入力されたフレームがフレーム内符号化される(キーフレームになる)場合には、差分部104Aに入力されたフレームが量子化部105に提供され、差分部104Aが生成した差分フレームは後段の処理に使われない。   Similar to the difference unit 104 in the above embodiment, the difference unit 104A calculates the difference between the encoding target frame after the conversion unit 103 performs the conversion process and the reference frame held by the reference holding unit 108. , A processing unit that generates a difference frame. At the time when the difference unit 104A acquires a frame from the conversion unit 103, it is not determined whether this frame is a key frame or a difference frame, and the state of the switching unit 112 is controlled by the control unit 111 in the subsequent stage. Thus, it is determined whether this frame becomes a key frame or a difference frame. When the frame input to the difference unit 104A is inter-frame encoded (becomes a difference frame), the frame is provided to the quantization unit 105 through the subsequent switching unit 112. On the other hand, when the frame input to the difference unit 104A is intra-frame encoded (becomes a key frame), the frame input to the difference unit 104A is provided to the quantization unit 105, and the difference unit 104A generates The difference frame is not used for subsequent processing.

制御部111は、符号化部106が符号化により生成した符号化データに基づく判定を行い、判定結果に応じて新たな符号化対象フレームの符号化を制御する処理部である。   The control unit 111 is a processing unit that performs determination based on the encoded data generated by the encoding unit 106 by encoding, and controls encoding of a new encoding target frame according to the determination result.

制御部111は、符号化部106が符号化により生成した符号化データ(又は、当該符号化データの複製)を取得して、符号化データに含まれるフレームがキーフレームであるか否かを示す情報と、符号化データのデータサイズとを得る。そして、上記情報と上記データサイズとに基づく判定を行い、符号化装置10Aが次に符号化する新たな符号化対象フレームを、フレーム内符号化するか、又は、フレーム間符号化するか(言い換えれば、どのフレームをキーフレームにし、どのフレームを差分フレームにするか)を決定する。そして、制御部111は、決定結果に応じて、切替部112の状態を制御する。制御部111による判定の方法は後で詳しく説明する。   The control unit 111 acquires encoded data (or a copy of the encoded data) generated by the encoding unit 106 by encoding, and indicates whether or not the frame included in the encoded data is a key frame. Information and the data size of the encoded data are obtained. Then, a determination is made based on the information and the data size, and whether a new encoding target frame to be encoded next by the encoding apparatus 10A is intra-frame encoded or inter-frame encoded (in other words, For example, which frame is the key frame and which frame is the difference frame). Then, the control unit 111 controls the state of the switching unit 112 according to the determination result. A method of determination by the control unit 111 will be described in detail later.

切替部112は、後段の量子化部105に提供されるフレームを、変換部103が変換処理を施した後のフレームとするか、又は、差分部104Aが差分処理により生成した差分フレームとするかを切り替える切替部である。切替部112が、変換部103が変換処理を施した後のフレームを量子化部105に提供する状態、つまり、図9において端子aと端子cとが接続される状態を状態Aという。また、切替部112が、差分部104Aが差分処理により生成した差分フレームを量子化部105に提供する状態、つまり、図面において端子bと端子cとが接続される状態を状態Bという。切替部112が状態Aをとるか、状態Bをとるかは、制御部111により制御される。   Whether the switching unit 112 sets the frame provided to the quantization unit 105 in the subsequent stage as a frame after the conversion unit 103 performs the conversion process or the difference frame generated by the difference unit 104A through the difference process. It is the switching part which switches. A state in which the switching unit 112 provides the frame after the conversion unit 103 performs the conversion process to the quantization unit 105, that is, a state in which the terminal a and the terminal c in FIG. A state in which the switching unit 112 provides the difference frame generated by the difference processing by the difference unit 104A to the quantization unit 105, that is, a state in which the terminal b and the terminal c are connected in the drawing is referred to as a state B. Whether the switching unit 112 takes the state A or the state B is controlled by the control unit 111.

なお、上記の差分部104A及び切替部112の動作は、上記実施の形態の差分部104による、符号化対象フレームがキーフレームでない場合に上記差分を算出し、キーフレームである場合には上記差分を算出しないという動作と同様である。つまり、差分部104A及び切替部112は、上記実施の形態の差分部104を、2つの構成要素に分けてより具体的に記載したものである。   Note that the operations of the difference unit 104A and the switching unit 112 calculate the difference when the encoding target frame is not a key frame by the difference unit 104 of the above embodiment, and the difference when the frame is a key frame. This is the same as the operation of not calculating. That is, the difference unit 104A and the switching unit 112 are more specifically described by dividing the difference unit 104 of the above-described embodiment into two components.

以上のように構成された符号化装置10Aの処理についてフロー図を用いて説明する。   The processing of the encoding apparatus 10A configured as described above will be described using a flowchart.

図10は、本変形例に係る符号化装置10Aの処理を示すフロー図である。   FIG. 10 is a flowchart showing the processing of the encoding device 10A according to this modification.

図10におけるステップS101〜S112の処理については、図4に示される同名のステップと実質的に同じである。ここで、ステップS104Aは、ステップS104の処理の内容をより具体的にしたものである。   The processing in steps S101 to S112 in FIG. 10 is substantially the same as the step with the same name shown in FIG. Here, step S104A is a more specific content of the process of step S104.

ステップS104Aにおいて、制御部111は、符号化対象フレームをフレーム内符号化するか又はフレーム間符号化するかを、切替部112の状態に応じて切り替える。すなわち、切替部112が状態Aである場合(ステップS104Aで「フレーム内符号化」)には、符号化対象フレームをフレーム内符号化する一連の処理(ステップS105〜S107)を行う。一方、切替部112が状態Bである場合(ステップS104Aで「フレーム間符号化」)には、符号化対象フレームをフレーム間符号化する一連の処理(ステップS111〜S112)を行う。   In step S <b> 104 </ b> A, the control unit 111 switches whether the encoding target frame is intra-frame encoded or inter-frame encoded according to the state of the switching unit 112. That is, when the switching unit 112 is in the state A (“intraframe encoding” in step S104A), a series of processes (steps S105 to S107) for intraframe encoding of the encoding target frame is performed. On the other hand, when the switching unit 112 is in the state B (“interframe encoding” in step S104A), a series of processes (steps S111 to S112) for interframe encoding of the encoding target frame is performed.

ステップS108の後の処理を以降で説明する。   The processing after step S108 will be described below.

ステップS122において、制御部111は、符号化部106が符号化したフレームの複製を取得し、このフレームがキーフレームであるか否かを判定する。キーフレームである場合には、ステップS123に進み、そうでない場合には、ステップS131に進む。   In step S122, the control unit 111 acquires a copy of the frame encoded by the encoding unit 106, and determines whether or not this frame is a key frame. If it is a key frame, the process proceeds to step S123; otherwise, the process proceeds to step S131.

ステップS123において、制御部111は、次の符号化対象フレームをフレーム間符号化する(差分フレームにする)よう制御する。具体的には、制御部111は、切替部112を状態Bに変化させる(既に状態Bである場合には状態Bを維持させる)。   In step S123, the control unit 111 performs control so that the next encoding target frame is inter-frame encoded (set to a difference frame). Specifically, the control unit 111 changes the switching unit 112 to the state B (when the state B is already in the state B, the state B is maintained).

ステップS131において、制御部111は、符号化データのデータサイズが閾値以上であるか否かを判定する。符号化データのデータサイズが閾値以上である場合(ステップS131でYes)には、ステップS131に進み、そうでない場合(ステップS131でNo)には、ステップS132に進む。なお、上記閾値は、予め定められた固定値でもよいし、直前のキーフレームのデータサイズに所定値を乗じて算出される変動値でもよい。所定値は、例えば、0以上1以下の値であり、より具体的には、1/2倍又は2/3倍とすることができる。   In step S131, the control unit 111 determines whether the data size of the encoded data is greater than or equal to a threshold value. If the data size of the encoded data is greater than or equal to the threshold (Yes in step S131), the process proceeds to step S131. If not (No in step S131), the process proceeds to step S132. Note that the threshold value may be a predetermined fixed value, or may be a fluctuation value calculated by multiplying the data size of the immediately preceding key frame by a predetermined value. The predetermined value is, for example, a value not less than 0 and not more than 1, and more specifically can be ½ times or 2/3 times.

ステップS132において、制御部111は、次の符号化対象フレームをフレーム内符号化する(キーフレームにする)よう制御する。具体的には、制御部111は、切替部112を状態Aに変化させる(既に状態Aである場合には状態Aを維持させる)。   In step S132, the control unit 111 performs control so that the next encoding target frame is intra-frame encoded (set as a key frame). Specifically, the control unit 111 changes the switching unit 112 to the state A (if the state is already in the state A, the state A is maintained).

このようにすることで、符号化装置10Aは、実際に符号化装置10Aが符号化により生成した符号化データのデータサイズに基づいて、次に符号化する符号化対象フレームをキーフレームとして符号化(フレーム内符号化)するか、又は、差分フレームとして符号化(フレーム間符号化)するかを適切に決定する。   In this way, the encoding device 10A encodes the encoding target frame to be encoded next as a key frame based on the data size of the encoded data actually generated by the encoding device 10A. Whether to perform (intraframe encoding) or to encode as a difference frame (interframe encoding) is appropriately determined.

具体的には、差分フレームとしてフレーム間符号化により生成した符号化データのデータサイズが、閾値以上である場合には、次の符号化対象フレームをキーフレームとしてフレーム内符号化する(ステップS131でYes、S132)。この状況は、符号化対象フレームと直前のキーフレームとのデータサイズの差分が比較的大きいことから、差分符号化の利点を発揮することができない状況を示しており、新たなキーフレームを挿入することで符号化データのデータサイズの減少が期待されるからである。   Specifically, if the data size of the encoded data generated by inter-frame encoding as the difference frame is equal to or larger than the threshold value, intra-frame encoding is performed using the next encoding target frame as a key frame (in step S131). Yes, S132). This situation indicates that the difference in data size between the encoding target frame and the immediately preceding key frame is relatively large, so that the advantage of differential encoding cannot be exhibited, and a new key frame is inserted. This is because a reduction in the data size of the encoded data is expected.

また、差分フレームとしてフレーム間符号化により生成した符号化データのデータサイズが、閾値未満である場合には、次の符号化対象フレームを差分フレームとしてフレーム間符号化する(ステップS131でNo、S123)。この状況は、符号化対象フレームと直前のキーフレームとのデータサイズの差分が比較的小さいことから、差分符号化の利点を発揮することができている状況を示しており、この状況を継続することが望ましいからである。   If the data size of the encoded data generated by inter-frame encoding as the difference frame is less than the threshold, the next encoding target frame is inter-frame encoded as the difference frame (No in step S131, S123). ). This situation indicates that the difference in data size between the encoding target frame and the immediately preceding key frame is relatively small, so that the advantage of differential encoding can be exhibited, and this situation is continued. This is because it is desirable.

また、キーフレームとしてフレーム内符号化により符号化データを生成した場合には、次の符号化対象フレームを差分フレームとしてフレーム間符号化する(ステップS123)。これにより、符号化対象フレームが続けてフレーム内符号化されることでデータ量が増大することを回避することができる。   If encoded data is generated as a key frame by intra-frame encoding, inter-frame encoding is performed using the next encoding target frame as a difference frame (step S123). As a result, it is possible to avoid an increase in the amount of data due to subsequent intra-frame encoding of the encoding target frame.

以上のように、本実施の形態の符号化装置は、取得部が符号化対象フレームを取得するときと、差分部が参照用フレームを取得するときとの2つの時点でメモリアクセスを行う。符号化装置による処理の順番を考慮すると、取得部によるメモリアクセスの後、フィルタ部及び変換部による処理が行われた後に、差分部によるメモリアクセスが行われる。よって、上記2つのメモリアクセスが行われるタイミングは、同時(又は実質的に同時)にならない。そのため、仮に2つのメモリアクセスが実質的に同時に行われるとすれば発生し得る待ち時間を、未然に回避することができる。このように、符号化装置は、フレームの符号化に要する時間を削減することができる。   As described above, the encoding apparatus according to the present embodiment performs memory access at two points when the acquisition unit acquires the encoding target frame and when the difference unit acquires the reference frame. Considering the order of processing by the encoding device, after the memory access by the acquisition unit, the processing by the filter unit and the conversion unit is performed, and then the memory access by the difference unit is performed. Therefore, the timing at which the two memory accesses are performed is not simultaneous (or substantially simultaneous). For this reason, if two memory accesses are performed substantially simultaneously, a waiting time that may occur can be avoided. As described above, the encoding apparatus can reduce the time required for encoding a frame.

また、差分部は、量子化されたフレームを逆量子化しただけのフレームを参照用フレームとして、差分を算出する処理に用いる。よって、仮に上記より多い数の処理を施して参照用フレームを生成する場合と比較して、より短時間に参照用フレームを生成することができる。よって、符号化装置は、フレームの符号化に要する時間を削減することができる。   In addition, the difference unit is used for a process of calculating a difference using a frame obtained by dequantizing the quantized frame as a reference frame. Therefore, it is possible to generate the reference frame in a shorter time than when the reference frame is generated by performing a larger number of processes than the above. Therefore, the encoding device can reduce the time required for encoding the frame.

また、制御部は、実際に符号化することで生成された符号化データのデータサイズに基づいて、次のフレームをフレーム内符号化するか、又は、フレーム間符号化するかを制御する。よって、符号化装置は、実際の符号化の結果に基づいて次のフレームの符号化をより適切に制御するとともに、仮に符号化のやり直しを行うとすれば生ずる処理時間の増加を回避することができる。   Further, the control unit controls whether the next frame is intra-frame encoded or inter-frame encoded based on the data size of the encoded data generated by the actual encoding. Therefore, the encoding device can more appropriately control the encoding of the next frame based on the actual encoding result, and avoid an increase in processing time that occurs if the encoding is performed again. it can.

また、制御部は、データサイズに大きさに応じて差分符号化(フレーム間符号化)をした効果が適切に発揮されているかを判断し、適切に発揮されていない場合には新たな符号化対象フレームをフレーム内符号化することで差分符号化の効果を発揮するように制御することができる。   In addition, the control unit determines whether or not the effect of differential encoding (interframe encoding) according to the size of the data size is properly exhibited, and if it is not properly demonstrated, a new encoding is performed. By performing intra-frame encoding of the target frame, control can be performed so as to exert the effect of differential encoding.

また、制御部は、フレーム内符号化の後にはフレーム間符号化を行うことで、差分符号化の効果を発揮するように制御することができる。   Further, the control unit can perform control so as to exert the effect of differential encoding by performing inter-frame encoding after intra-frame encoding.

以上、本発明の符号化装置及び復号装置等について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。   The encoding device and decoding device of the present invention have been described above based on the embodiment, but the present invention is not limited to this embodiment. Unless it deviates from the meaning of this invention, the form which carried out the various deformation | transformation which those skilled in the art can think to this embodiment, and the structure constructed | assembled combining the component in different embodiment is also contained in the scope of the present invention. .

本発明は、フレームの符号化に要する時間を削減する符号化装置及び復号装置等に利用可能である。具体的には、公共スペース又は商業施設などにおいて複数設置され、画像等を再生する再生装置、及び、再生装置にコンテンツを提供する送信装置などに利用可能である。   The present invention can be used for an encoding apparatus and a decoding apparatus that reduce the time required for encoding a frame. Specifically, it is installed in a public space or a commercial facility, and can be used for a playback device that plays back images and the like, a transmission device that provides content to the playback device, and the like.

1 送信装置
2 再生装置
3 ネットワーク
10、10A、50 符号化装置
11 CPU
12 メインメモリ
13 ストレージ
20、60 復号装置
100、500 フレーム保持部
101、501 取得部
102、503 ブロッキングフィルタ
103、504 変換部
104、104A、502 差分部
105、505 量子化部
106、506 符号化部
107、203、507、602 逆量子化部
108、204、510、607 参照用保持部
111 制御部
112 切替部
201、601 復号部
202、605 加算部
205、508、603 逆変換部
206、509、604 デブロッキングフィルタ
207、606 生成部
S コンテンツ再生システム
DESCRIPTION OF SYMBOLS 1 Transmission apparatus 2 Playback apparatus 3 Network 10, 10A, 50 Encoding apparatus 11 CPU
12 Main memory 13 Storage 20, 60 Decoding device 100, 500 Frame holding unit 101, 501 Acquisition unit 102, 503 Blocking filter 103, 504 Conversion unit 104, 104A, 502 Difference unit 105, 505 Quantization unit 106, 506 Encoding unit 107, 203, 507, 602 Inverse quantization unit 108, 204, 510, 607 Reference holding unit 111 Control unit 112 Switching unit 201, 601 Decoding unit 202, 605 Addition unit 205, 508, 603 Inverse conversion unit 206, 509, 604 Deblocking filter 207, 606 Generation unit S Content playback system

Claims (8)

符号化対象フレームをメモリから取得する取得部と、
前記取得部が取得した前記符号化対象フレームに含まれる処理単位であるブロックの境界に対してフィルタ処理を施すフィルタ部と、
前記フィルタ処理後の前記符号化対象フレームに対して前記ブロックごとに、周波数変換又は次数変換を含む変換処理を施す変換部と、
参照用フレームを前記メモリから取得し、取得した前記参照用フレームと、前記変換処理後の前記符号化対象フレームとの差分を、差分フレームとして算出する差分部と、
前記差分部が算出した前記差分フレームを量子化する量子化部と、
前記量子化部が量子化した前記差分フレームを符号化して符号化データを生成する符号化部とを備える
符号化装置。
An acquisition unit for acquiring a frame to be encoded from a memory;
A filter unit that performs a filtering process on a block boundary that is a processing unit included in the encoding target frame acquired by the acquisition unit;
A conversion unit that performs a conversion process including a frequency conversion or an order conversion for each block on the encoding target frame after the filtering process;
A difference unit that obtains a reference frame from the memory, and calculates a difference between the obtained reference frame and the encoding target frame after the conversion process as a difference frame;
A quantization unit that quantizes the difference frame calculated by the difference unit;
An encoding device comprising: an encoding unit that encodes the difference frame quantized by the quantization unit to generate encoded data.
前記量子化部は、前記符号化対象フレームがキーフレームである場合には、前記変換部による前記変換処理後の前記符号化対象フレームを量子化し、
前記符号化装置は、さらに、
前記差分フレームがキーフレームである場合に、前記量子化部による量子化後の前記差分フレームを逆量子化してメモリに格納する逆量子化部を備え、
前記差分部は、
前記逆量子化部により前記メモリに格納された前記キーフレームを、前記参照用フレームとして用いて、前記差分を算出する
請求項1に記載の符号化装置。
When the encoding target frame is a key frame, the quantization unit quantizes the encoding target frame after the conversion processing by the conversion unit,
The encoding device further includes:
When the difference frame is a key frame, comprising: an inverse quantization unit that inversely quantizes the difference frame after quantization by the quantization unit and stores the difference frame in a memory;
The difference unit is
The encoding device according to claim 1, wherein the difference is calculated using the key frame stored in the memory by the inverse quantization unit as the reference frame.
前記符号化装置は、さらに、
前記符号化部が生成した符号化データのデータサイズに基づいて、新たな符号化対象フレームをフレーム内符号化するか、又は、フレーム間符号化するかを制御する制御部とを備える
請求項1又は2に記載の符号化装置。
The encoding device further includes:
A control unit that controls whether a new encoding target frame is intra-frame encoded or inter-frame encoded based on a data size of encoded data generated by the encoding unit. Or the encoding apparatus of 2.
前記制御部は、
前記符号化部がフレーム間符号化することで生成した前記符号化データのデータサイズが閾値以上であるか否かを判定し、
(a)前記データサイズが前記閾値以上である場合に、新たな符号化対象フレームをフレーム内符号化するよう制御し、
(b)前記データサイズが前記閾値未満である場合に、新たな符号化対象フレームをフレーム間符号化するよう制御する
請求項3に記載の符号化装置。
The controller is
Determining whether or not the data size of the encoded data generated by the inter-frame encoding by the encoding unit is greater than or equal to a threshold;
(A) When the data size is equal to or larger than the threshold, control is performed so that a new encoding target frame is intra-frame encoded,
The encoding apparatus according to claim 3, wherein (b) when the data size is less than the threshold, control is performed so that a new encoding target frame is inter-frame encoded.
前記制御部は、
前記符号化部がフレーム内符号化することで前記符号化データを生成したときには、新たな符号化対象フレームをフレーム間符号化するよう制御する
請求項3又は4に記載の符号化装置。
The controller is
The encoding apparatus according to claim 3 or 4, wherein when the encoding unit generates the encoded data by performing intra-frame encoding, a new encoding target frame is controlled to be inter-frame encoded.
参照用フレームをメモリから取得し、取得した前記参照用フレームと、符号化データとを加算して加算フレームを生成する加算部と、
前記加算部が生成した加算フレームに対して逆量子化する逆量子化部と、
前記逆量子化部により逆量子化された前記加算フレームに含まれる処理単位であるブロックごとに、逆周波数変換又は逆次数変換を含む逆変換処理を施す逆変換部と、
前記逆変換処理後の前記加算フレームにおける前記ブロックの境界に対してフィルタ処理を施すフィルタ部と、
前記フィルタ処理後の前記加算フレームに基づいてフレームを生成する生成部とを備える
復号装置。
An adder that obtains a reference frame from a memory and adds the obtained reference frame and the encoded data to generate an addition frame;
An inverse quantization unit that performs inverse quantization on the addition frame generated by the addition unit;
An inverse transform unit that performs an inverse transform process including an inverse frequency transform or an inverse order transform for each block that is a processing unit included in the addition frame inversely quantized by the inverse quantizer;
A filter unit that performs a filtering process on a boundary of the block in the addition frame after the inverse transform process;
And a generation unit configured to generate a frame based on the added frame after the filtering process.
符号化対象フレームをメモリから取得する取得ステップと、
前記取得ステップで取得した前記符号化対象フレームに含まれる処理単位であるブロックの境界に対してフィルタ処理を施すフィルタステップと、
前記フィルタ処理後の前記符号化対象フレームに対して前記ブロックごとに、周波数変換又は次数変換を含む変換処理を施す変換ステップと、
参照用フレームを前記メモリから取得し、取得した前記参照用フレームと、前記変換処理後の前記符号化対象フレームとの差分を、差分フレームとして算出する差分ステップと、
前記差分ステップで算出した前記差分フレームを量子化する量子化ステップと、
前記量子化ステップで量子化した前記差分フレームを符号化して符号化データを生成する符号化ステップとを含む
符号化方法。
An acquisition step of acquiring an encoding target frame from a memory;
A filter step of performing a filtering process on a block boundary which is a processing unit included in the encoding target frame acquired in the acquisition step;
A conversion step for performing a conversion process including frequency conversion or order conversion for each block on the encoding target frame after the filter process;
A difference step of acquiring a reference frame from the memory, and calculating a difference between the acquired reference frame and the encoding target frame after the conversion process as a difference frame;
A quantization step for quantizing the difference frame calculated in the difference step;
A coding step including coding the difference frame quantized in the quantization step to generate coded data.
参照用フレームをメモリから取得し、取得した前記参照用フレームと、符号化データとを加算して加算フレームを生成する加算ステップと、
前記加算ステップで生成した加算フレームに対して逆量子化する逆量子化ステップと、
前記逆量子化ステップで逆量子化された前記加算フレームに含まれる処理単位であるブロックごとに、逆周波数変換又は逆次数変換を含む逆変換処理を施す逆変換ステップと、
前記逆変換処理後の前記加算フレームにおける前記ブロックの境界に対してフィルタ処理を施すフィルタステップと、
前記フィルタ処理後の前記加算フレームに基づいてフレームを生成する生成ステップとを含む
復号方法。
An adding step of acquiring a reference frame from a memory, and adding the acquired reference frame and the encoded data to generate an added frame;
An inverse quantization step of performing inverse quantization on the addition frame generated in the addition step;
An inverse transform step of performing an inverse transform process including an inverse frequency transform or an inverse order transform for each block that is a processing unit included in the addition frame inversely quantized in the inverse quantization step;
A filter step of performing a filter process on a boundary of the block in the addition frame after the inverse transform process;
And a generation step of generating a frame based on the added frame after the filtering process.
JP2016194474A 2016-09-30 2016-09-30 Encoding device, decoding device, encoding method, and decoding method Pending JP2018056957A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016194474A JP2018056957A (en) 2016-09-30 2016-09-30 Encoding device, decoding device, encoding method, and decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016194474A JP2018056957A (en) 2016-09-30 2016-09-30 Encoding device, decoding device, encoding method, and decoding method

Publications (1)

Publication Number Publication Date
JP2018056957A true JP2018056957A (en) 2018-04-05

Family

ID=61837108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016194474A Pending JP2018056957A (en) 2016-09-30 2016-09-30 Encoding device, decoding device, encoding method, and decoding method

Country Status (1)

Country Link
JP (1) JP2018056957A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11641037B2 (en) 2018-12-23 2023-05-02 Contemporary Amperex Technology Co., Limited Battery module

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11641037B2 (en) 2018-12-23 2023-05-02 Contemporary Amperex Technology Co., Limited Battery module

Similar Documents

Publication Publication Date Title
RU2612600C2 (en) Method for content adaptive entropy coding of data on operating conditions and reference types for next generation video
JP2013517670A (en) Video encoding / decoding method and apparatus using large size transform unit
US7702017B2 (en) Moving picture encoding apparatus, moving picture encoding method, moving picture encoding program, moving picture decoding apparatus, moving picture decoding method, and moving picture decoding program
JP2011518527A (en) Video decoding
US9648336B2 (en) Encoding apparatus and method
JP5446686B2 (en) Moving picture encoding apparatus and program, moving picture decoding apparatus and program, and moving picture distribution system
JP2012114830A (en) Data updating apparatus and program, video decoding apparatus and program, and video distribution system
JP6614935B2 (en) Video encoding apparatus and program
JP2018056957A (en) Encoding device, decoding device, encoding method, and decoding method
JP5698644B2 (en) Video predictive encoding method, video predictive encoding device, video predictive encoding program, video predictive decoding method, video predictive decoding device, and video predictive decode program
CN113678378B (en) Video decoding method, video decoder, and non-volatile computer readable medium
JP6875566B2 (en) Moving image prediction coding device, moving image prediction decoding device, moving image prediction coding method, moving image prediction decoding method and moving image prediction decoding program
US20090245350A1 (en) Image coding apparatus and image coding method
JP6598376B2 (en) Encoding apparatus and encoding method
WO2013114826A1 (en) Image decoding device
JP6708882B2 (en) Encoding device and encoding method
JP2013157950A (en) Encoding method, decoding method, encoder, decoder, encoding program and decoding program
CN110958459B (en) Data processing method and device
JP5957558B2 (en) Video predictive encoding method, video predictive encoding device, video predictive encoding program, video predictive decoding method, video predictive decoding device, and video predictive decode program
JP5294037B2 (en) Image decoding method, image decoding apparatus, and image encoding method
JP2003018014A (en) Coding method, decoding method, coder, decoder, coding program, decoding program and programs recording medium for them
JP2009200541A (en) Image decoding device and image decoding method, image decoding integrated circuit, and image decoding program