(57)【要約】  本技術は、再生時のバッファオーバフローを回避することができるようにする記録装置、および記録方法、並びにプログラムに関する。パケット列より各パケットを分離し、各パケットの到着タイミングを示す情報を出力し、パケットを、バッファオーバフローしないサイズの分割パケットに分割し、分割パケット毎のパケット到着時刻を、分割パケットのヘッダに埋め込むようにする。本技術は、記録装置に適用することができる。
2017033764.tif 000002
【特許請求の範囲】
【請求項１】
パケット列より各パケットを分離する多重分離部と、
前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、
前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、
前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部と
を含む記録装置。
【請求項２】
前記パケット到着時刻がヘッダに埋め込まれている、前記分割パケットを記録媒体に記録する記録部をさらに含み、
前記所定のサイズは、前記記録媒体に記録された前記分割パケットを再生する再生装置が、受信視聴時と同じデータバッファサイズにバッファオーバフローを回避するために付加した付加バッファのサイズに対応するサイズである
請求項１に記載の記録装置。
【請求項３】
前記再生装置により前記分割パケットが再生される際の読み込み最大レートがRpであり、前記分割パケットが記録される際の読み込み最大レートがRrであるとき、前記所定のサイズは、（（Rp/Rp-Rr）×（前記バッファのサイズ））とされる
請求項２に記載の記録装置。
【請求項４】
前記多重分離部は、パケット列より各パケットを分離すると共に、前記各パケットの到着タイミングを示す情報を出力し、
前記パケット到着時刻発生部は、
前記各パケットの到着タイミングを示す情報に基づいて、前記分割パケットが分割される前の前記パケット毎のパケット到着時刻を発生し、
前記分割パケットのうち、前記パケットの先頭となる分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻を、そのまま前記ヘッダに埋め込み、
前記分割パケットのうち、前記パケットの先頭から２番目以降の分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻から、順次分割パケットのサイズと記録時の入力レートに基づいて算出されるパケット到着時刻相当時刻を、前記パケット到着時刻として前記ヘッダに埋め込む
請求項１に記載の記録装置。
【請求項５】
前記パケット到着時刻付与部は、前記分割パケットのそれぞれに対して、エクストラヘッダを設定し、前記エクストラヘッダに、前記時刻発生部により発生されたパケット到着時刻としてATS(Arrival Time Stamp)を埋め込む
請求項１に記載の記録装置。
【請求項６】
MMT（MPEG Media Transport）の場合、前記パケット到着時刻付与部は、前記分割パケットのそれぞれのMMTP packet headerからなるヘッダに、前記時刻発生部により発生されたパケット到着時刻をNTP（Network Time Protocol）形式で埋め込む
請求項１に記載の記録装置。
【請求項７】
前記記録媒体に記録された前記分割パケットを必要に応じて順次バッファリングするバッファと、前記バッファにバッファリングされた分割パケット列を順次デコードするデコード部を備えた再生装置の動作をシミュレーションし、前記シミュレーションにおいてバッファオーバフローする場合、前記バッファ分割部に前記パケットを前記分割パケットに分割するように指示するシミュレーション部をさらに含み、
前記バッファ分割部は、前記シミュレーション部より前記パケットを前記分割パケットに分割するように指示された場合にのみ、前記パケットを前記分割パケットに分割する
請求項１に記載の記録装置。
【請求項８】
前記シミュレーション部は、前記シミュレーションにおいてバッファオーバフローする場合、前記シミュレーションの結果から、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割するように指示し、
前記バッファ分割部は、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割する
請求項７に記載の記録装置。
【請求項９】
パケット列より各パケットを分離し、
前記パケットを所定のサイズの分割パケットに分割し、
前記分割パケット毎のパケット到着時刻を発生し、
発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込む
ステップを含む記録方法。
【請求項１０】
パケット列より各パケットを分離する多重分離部と、
前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、
前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、
前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部としてコンピュータを機能させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、記録装置、および記録方法、並びにプログラムに関し、特に、パケットデータを再生する際に、バッファオーバフローを回避できるようにした記録装置、および記録方法、並びにプログラムに関する。
【背景技術】
【０００２】
衛星デジタル放送や地上デジタル放送などには、パケットデータ構造として、ISO13818-1に規定されるMPEG（Moving Picture Experts Group）-2 TS（Transport Stream）が使用されている。【０００３】
MPEG-2 TSパケットデータ列には、オーディオやビデオなどのデータが少なくとも１つ以上の番組分、時分割で多重化されている。【０００４】
MPEG-2 TSのパケットは188バイト固定長である。【０００５】
受信したパケットデータ列を記録する場合、記録したパケットデータ列を読み出して再生するときでも、受信してそのままデコードして視聴するときと同様の装置で再生可能となることが望ましい。【０００６】
そのために、パケットの受信時刻をパケット毎に付与して記録する技術が用いられている（特許文献１参照）。【０００７】
このような技術により、記録したパケットデータ列を読み出す際に、受信時刻のタイミングでパケットの読み込みを開始することで、パケット先頭は受信視聴する場合と同様のタイミングで読み込み開始する事が可能となる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特許４９７３７７３号（特開２０１１−０２８８４１号公報）
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、一般に、再生時のデータ読み込みは、受信視聴時のデータ入力レートよりも速い速度で行われる。このため、受信視聴時と同じデータバッファサイズでは、バッファオーバフローが発生してしまう恐れがあった。【００１０】
MPEG-2 TSのパケットは188バイトと比較的小さな固定長であるため、188バイトという小さな付加バッファにより、オーバフローを回避することができる。【００１１】
しかしながら、パケットのサイズが比較的大きい、または、可変長のパケットデータ構造の場合、最大パケットサイズ分の付加バッファを備えなければ、オーバフローを回避できない。【００１２】
本技術は、このような状況に鑑みてなされたものであり、特に、再生時のバッファオーバフローを回避できるようにするものである。
【課題を解決するための手段】
【００１３】
本技術の一側面の記録装置は、パケット列より各パケットを分離する多重分離部と、前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部とを含む記録装置である。【００１４】
前記パケット到着時刻がヘッダに埋め込まれている、前記分割パケットを記録媒体に記録する記録部をさらに含ませるようにすることができ、前記所定のサイズは、前記記録媒体に記録された前記分割パケットを再生する再生装置が、受信視聴時と同じデータバッファサイズにバッファオーバフローを回避するために付加した付加バッファのサイズに対応するサイズとすることができる。【００１５】
前記再生装置により前記分割パケットが再生される際の読み込み最大レートがRpであり、前記分割パケットが記録される際の読み込み最大レートがRrであるとき、前記所定のサイズは、（（Rp/Rp-Rr）×（前記バッファのサイズ））とされるようにすることができる。【００１６】
前記多重分離部には、パケット列より各パケットを分離すると共に、前記各パケットの到着タイミングを示す情報を出力させ、前記パケット到着時刻発生部には、前記各パケットの到着タイミングを示す情報に基づいて、前記分割パケットが分割される前の前記パケット毎のパケット到着時刻を発生させ、前記分割パケットのうち、前記パケットの先頭となる分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻を、そのまま前記ヘッダに埋め込ませ、前記分割パケットのうち、前記パケットの先頭から２番目以降の分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻から、順次分割パケットのサイズと記録時の入力レートに基づいて算出されるパケット到着時刻相当時刻を、前記パケット到着時刻として前記ヘッダに埋め込ませるようにすることができる。【００１７】
前記パケット到着時刻付与部には、前記分割パケットのそれぞれに対して、エクストラヘッダを設定し、前記エクストラヘッダに、前記時刻発生部により発生されたパケット到着時刻としてATS(Arrival Time Stamp)を埋め込ませるようにすることができる。【００１８】
MMT（MPEG Media Transport）の場合、前記パケット到着時刻付与部には、前記分割パケットのそれぞれのMMTP packet headerからなるヘッダに、前記時刻発生部により発生されたパケット到着時刻をNTP（Network Time Protocol）形式で埋め込ませるようにすることができる。【００１９】
前記記録媒体に記録された前記分割パケットを必要に応じて順次バッファリングするバッファと、前記バッファにバッファリングされた分割パケット列を順次デコードするデコード部を備えた再生装置の動作をシミュレーションし、前記シミュレーションにおいてバッファオーバフローする場合、前記バッファ分割部に前記パケットを前記分割パケットに分割するように指示するシミュレーション部をさらに含ませるようにすることができ、前記バッファ分割部には、前記シミュレーション部より前記パケットを前記分割パケットに分割するように指示された場合にのみ、前記パケットを前記分割パケットに分割させるようにすることができる。【００２０】
前記シミュレーション部には、前記シミュレーションにおいてバッファオーバフローする場合、前記シミュレーションの結果から、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割するように指示させ、前記バッファ分割部には、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割させるようにすることができる。【００２１】
本技術の一側面の記録方法は、パケット列より各パケットを分離し、前記パケットを所定のサイズの分割パケットに分割し、前記分割パケット毎のパケット到着時刻を発生し、発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むステップを含む記録方法である。【００２２】
本技術の一側面のプログラムは、パケット列より各パケットを分離する多重分離部と、前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部としてコンピュータを機能させるプログラムである。【００２３】
本技術の一側面においては、パケット列より各パケットが分離され、前記パケットが所定のサイズの分割パケットに分割され、前記分割パケット毎のパケット到着時刻が発生され、発生された前記パケット到着時刻が、前記分割パケットのヘッダに埋め込まれる。【００２４】
本技術の一側面の記録装置は、それぞれ独立した装置であっても良いし、記録装置として機能するブロックであっても良い。
【発明の効果】
【００２５】
本技術の一側面によれば、再生時のバッファオーバフローを回避することが可能となる。
【図面の簡単な説明】
【００２６】
【図１】従来の記録装置の構成例を説明する図である。
【図２】図１の記録装置による記録処理を説明するフローチャートである。
【図３】図１の記録装置による記録処理を説明するタイムチャートである。
【図４】一般的な再生装置の構成例を説明する図である。
【図５】図４の再生装置の再生処理を説明するフローチャートである。
【図６】図１の記録装置による記録処理、および図４の再生装置による再生処理のそれぞれにおけるパケットの読み込みタイミングを説明するタイムチャートである。
【図７】本技術を適用した記録装置の第１の実施の形態の構成例を説明する図である。
【図８】図７の記録装置による記録処理を説明するフローチャートである。
【図９】図７の記録装置による記録処理、および図４の再生装置による再生処理のそれぞれにおけるパケットの読み込みタイミングを説明するタイムチャートである。
【図１０】本技術を適用した記録装置の第２の実施の形態の構成例を説明する図である。
【図１１】図１０の記録装置による記録処理を説明するフローチャートである。
【図１２】汎用のパーソナルコンピュータの構成例を説明する図である。
【発明を実施するための最良の形態】
【００２７】
＜第１の実施の形態＞
＜従来の記録装置の構成例＞
本技術を適用した記録装置の説明に当たって、まず、従来の記録装置の構成について説明する。【００２８】
従来の記録装置１１は、多重分離部３１、パケット到着時刻付与部３２、PLL部３３、記録部３４、および記録媒体３５を備えている。【００２９】
多重分離部３１は、入力パケット列として、例えば、デジタル放送信号として送出されたMPEG（Moving Picture Experts Group）-2 TS（Transport Stream）パケット等からなるパケット列をパケット毎に順次分離してパケット到着時刻付与部３２に供給すると共に、送信側のクロック信号を復元するためのクロック参照情報をPLL部３３に供給する。【００３０】
クロック参照情報は、MPEG-2 TSパケットの場合、PCR(Program Clock Reference)が用いられる。また、MPEG-H規格のPart1で規定されるMMT（MPEG Media Transport）を用いた標準規格であるARIB-STD-B60の場合、クロック参照情報は、NTP（Network Time Protocol）が用いられる。【００３１】
PLL（Phase Locked Loop）部３３は、クロック参照情報により送信側クロックを復元し、復元したクロックに同期してカウントアップしながら更新するパケット到着時刻を生成し、パケット到着時刻付与部３２に供給する。【００３２】
パケット到着時刻付与部３２は、多重分離された記録対象のパケットに、パケット到着時刻を付与し、記録部３４に供給する。【００３３】
記録部３４は、パケット到着時刻を付与されたパケットを、記録媒体３５に記録し、格納する。【００３４】
＜従来の記録装置による記録処理＞
次に、図２のフローチャートを参照して、図１の従来の記録装置１１による記録処理について説明する。【００３５】
ステップＳ１１において、多重分離部３１は、入力パケット列として、例えば、デジタル放送信号として送出されたMPEG-2 TSパケット等からなるパケット列をパケット毎に順次分離してパケット到着時刻付与部３２に供給すると共に、送信側のクロック信号を復元するためのクロック参照情報をPLL部３３に供給する。【００３６】
ステップＳ１２において、PLL（Phase Locked Loop）部３３は、クロック参照情報により送信側クロックを復元し、復元したクロックに同期してカウントアップしながら更新するパケット到着時刻を生成し、パケット到着時刻付与部３２に供給する。【００３７】
ステップＳ１３において、パケット到着時刻付与部３２は、多重分離された記録対象のパケットに、パケット到着時刻をヘッダに埋め込む形で付与し、記録部３４に供給する。【００３８】
ステップＳ１４において、記録部３４は、パケット到着時刻が埋め込まれているヘッダが付与されたパケットを、記録媒体３５に記録し、格納する。【００３９】
ステップＳ１５において、多重分離部３１は、次のパケットが供給されてきたか否かを判定し、次のパケットが供給されてきている場合、処理は、ステップＳ１１に戻り、それ以降の処理が繰り返される。そして、ステップＳ１５において、パケットの供給がないと見なされた場合、処理は、終了する。【００４０】
すなわち、以上の処理により、MPEG-2 TSパケットの場合、例えば、図３の上段で示されるように、パケット到着時刻ATS[n]において、パケット５１−１が供給されてくると、図３の下段で示されるように、パケット５１−１の先頭に、パケット到着時刻ATS[n]５３−１を含むエクストラヘッダ（Extra_Header）５２−１が付与される。【００４１】
そして、それ以降においては同様に、例えば、図３の上段で示されるように、パケット到着時刻ATS[n+1]において、パケット５１−２が供給されてくると、図３の下段で示されるように、パケット５１−２の先頭に、パケット到着時刻ATS[n+1]５３−２を含むエクストラヘッダ（Extra_Header）５２−２が付与される。【００４２】
このようにして、順次パケット列の各パケット５１の先頭にパケット到着時刻５３を含むエクストラヘッダ５２が付与されて、順次、記録媒体３５に記録される。【００４３】
尚、図３においては、パケットヘッダにパケットの到着時刻情報を含んでいないシンタクスからなるMPEG-2 TSパケットの場合の例が示されている。すなわち、MPEG-2 TSパケットの場合、パケット到着時刻を埋め込むために、別途、追加のヘッダを設ける必要がある。そこで、MPEG-2 TSパケットの場合には、パケットの先頭にエクストラヘッダ（Extra_Header）が特に設けられて、そのエクストラヘッダにパケット到着時刻が埋め込まれる。【００４４】
一方、MMT（MPEG Media Transport）パケットなどのように、予め各パケットヘッダ（MMTP packet headerという名称のヘッダが予め設けられている）のシンタクスとしてパケットの到着時刻に相当する時刻の情報が含まれているような場合には、予め設けられたヘッダにパケット到着時刻を埋め込むようにしてもよい。【００４５】
＜再生装置の構成例＞
次に、図４を参照して、一般的な再生装置の構成例について説明する。【００４６】
図４の再生装置６１は、記録媒体７１、パケット読み出し部７２、ATCカウンタ７３、多重分離部７４、バッファ７５−１乃至７５−ｎ、デコーダ７６−１乃至７６−ｎ、および表示部７７を備えている。尚、以降において、バッファ７５−１乃至７５−ｎ、およびデコーダ７６−１乃至７６−ｎについて、それぞれ個別に区別する必要が無い場合、単に、バッファ７５およびデコーダ７６と称するものとし、その他の構成についても、同様に称するものとする。【００４７】
記録媒体７１は、図１の記録媒体３５に対応するものであり、パケット到着時刻が埋め込まれたヘッダ（MPEG-2 TSパケットの場合、エクストラヘッダ）が付与されたパケットが記憶されており、順次、パケット読み出し部７２により読み出される。【００４８】
パケット読み出し部７２は、記録媒体７１に記録されているヘッダが付与されているパケットを順次読み出すと共に、ATC（Arrival Time Clock）カウンタ７３より供給されてくる到着時刻の情報に基づいて、ヘッダに埋め込まれたパケット到着時刻に対応するタイミングで多重分離部７４に出力する。すなわち、ATCカウンタ７３の情報と、パケット到着時刻の情報に基づいて、パケットが順次多重分離部７４に供給されるようになるので、パケット間のタイミングは、記録時に供給されてくるパケット列のパケット間の時間間隔と一致するように多重分離部７４に供給されるようになる。【００４９】
多重分離部７４は、パケット読み出し部７２より供給されてくるパケット単位の情報をチャンネル単位で分離して、バッファ７５−１乃至７５−ｎのいずれかにバッファリングさせる。【００５０】
デコーダ７６−１乃至７６−ｎは、チャンネル単位でバッファ７５−１乃至７５−ｎのそれぞれにバッファリングされているパケット列を所定のデータ長ずつ読み出してデコードし、デコード結果を例えば、LCD（Liquid Crystal Display）などからなる表示部７７に表示させる。尚、再生されるデータには、画像データ、およびオーディオデータが含まれており、ここで、データを表示部７７に表示させるとは、画像を表示すると共に、図示せぬスピーカ等より音声も出力させることを表している。【００５１】
＜図４の再生装置による再生処理＞
次に、図５のフローチャートを参照して、図４の再生装置によるパケットの読み込みからバッファリングまでの処理である読み込みバッファリング処理について説明する。【００５２】
ステップＳ３１において、ATCカウンタ７３が順次時刻に対応するクロックカウンタのカウントを開始し、順次、パケット読み出し部７２に出力する。【００５３】
ステップＳ３２において、パケット読み出し部７２は、記録媒体７１より順次ヘッダを含むパケットを読み出す。【００５４】
ステップＳ３３において、パケット読み出し部７２は、読み出したパケットのヘッダに埋め込まれているパケット到着時刻の情報を読み出す。【００５５】
ステップＳ３４において、パケット読み出し部７２は、ATCカウンタ７３より供給されてくるクロックカウンタの値に基づいて、パケット到着時刻に対応するタイミングであるか否かを判定し、パケット到着時刻に対応するタイミングであるとみなされるまで、同様の処理を繰り返す。そして、ステップＳ３４において、ATCカウンタ７３より供給されるカウンタの値が、パケット到着時刻に対応するタイミングであると見なされた場合、処理は、ステップＳ３５に進む。【００５６】
ステップＳ３５において、パケット読み出し部７２は、多重分離部７４に読み出したパケットを出力する。【００５７】
ステップＳ３６において、多重分離部７４は、供給されてきたパケットをチャンネル単位で分離する。【００５８】
ステップＳ３７において、多重分離部７４は、分離したパケットを対応するチャンネルのバッファ７５に格納させる（バッファリングさせる）。【００５９】
ステップＳ３８において、パケット読み出し部７２は、次のパケットが存在するか否かを判定し、次のパケットが存在する場合、処理は、ステップＳ３２に戻り、それ以降の処理が繰り返される。【００６０】
そして、ステップＳ３８において、次のパケットが存在しないとみなされた場合、処理は、終了する。この際、ATCカウンタ７３によるカウントも停止される。【００６１】
以上の一連の処理により、再生装置６１により記録装置１１で記録されたパケット列が順次所定のデータ長分ずつ再生されることになる。【００６２】
尚、ステップＳ３２においては必ずしもパケット全体を読み出す必要は無く、到着時刻が読み出せていればよい。このため、ステップＳ３２において、到着時刻のみを読み出すようにした場合には、ステップＳ３５において、パケット読み出し部７２が、記録媒体７１よりパケット全体を読み出して、多重分離部７４に読み出したパケットを出力する。【００６３】
＜再生時のバッファ占有量＞
ここで、図６を参照して、再生時のバッファ７５におけるバッファ占有量の遷移について説明する。【００６４】
一般に、再生時のデータ読み込みは、受信視聴時のデータ入力レートよりも速い速度で行われる。このため、受信視聴時と同じバッファサイズでは、バッファオーバフローしてしまう恐れがある。【００６５】
すなわち、再生時の読み込みレートは記録時の入力レートより高い。このため、パケット５１−１の先頭を読み出すタイミングをパケット到着時刻ATS[n]に対応する時刻ｔ１１に合わせると、図６の上段で示されるように、記録時と同様の速度でパケット５１−１が読み出され、時刻ｔ１３に読み出しが完了するものとすると、通常、再生時の読み出しに係る時間はより短く、例えば、図６の中段で示されるパケット９１−１で示されるように、時刻ｔ１２において完了する。従って、図６の下段で示されるように、バッファ７５におけるバッファ占有量は実線で示される記録時の場合よりも、点線で示されるように急峻に上昇する。【００６６】
さらに、図６の上段で示されるように、パケット到着時刻ATS[n+1]に対応する時刻ｔ１４において、次のパケット５１−２が読み出され、時刻ｔ１７に読み出しが完了するものとすると、通常、再生時の読み出しに係る時間はより短く、例えば、図６の中段で示されるパケット９１−２で示されるように、時刻ｔ１５において完了する。従って、図６の下段で示されるように、バッファ７５におけるバッファ占有量は実線で示される記録時の場合よりも、点線で示されるように急峻に上昇する。【００６７】
ここで、時刻ｔ１６において、バッファ７５からデコーダ７６によりデータが抜き出されてデコードがなされるものとした場合、時刻ｔ１５乃至ｔ１６におけるタイミングにおいてバッファ７５でのバッファ占有量が極度に大きくなり、バッファオーバフローが発生してしまう恐れがある。【００６８】
ただし、MPEG-2 TSのパケットは188バイトと比較的小さな固定長であるため、188バイトという小さな付加バッファを、図４のバッファ７５に加えることにより、オーバフローを回避することも可能である。ここで、付加バッファとは、再生装置６１が受信視聴時と同じデータバッファサイズに付加したオーバフロー回避用のバッファサイズからなり、バッファ７５に付加されるバッファである。【００６９】
しかしながら、パケットのサイズが比較的大きいパケットデータ構造や、可変長のパケットデータ構造の場合は、大きな最大パケットサイズ分の付加バッファを備えなければ、オーバフローを回避できない恐れがある。【００７０】
再生装置においては、バッファ７５は、ビデオやオーディオなどのデータ種別毎に物理的に個別に備えており、データ種別毎のバッファ７５に対して、それぞれ大きな最大パケットサイズ分の付加バッファを備える必要があり（バッファ７５の容量を、さらに大きなバッファ容量とする必要があり）、コスト高となる恐れがある。【００７１】
＜本技術を適用した記録装置の構成例＞
そこで、本技術を適用した記録装置においては、パケットサイズを所定のパケットサイズに分割して記録することで、バッファオーバフローを回避する構成としている。【００７２】
図７は、本技術を適用した記録装置の第１の実施の形態の構成例を示している。尚、図７の記録装置１１において、図１の記録装置１１における構成と同一の機能を備えた構成については、同一の符号、および同一の名称を付しており、その説明は適宜省略するものとする。【００７３】
すなわち、図７の記録装置１１において、図１の記録装置１１と異なる点は、パケット到着時刻付与部３２に代えて、パケット到着時刻付与部１０２を設け、さらに、パケット分割部１０１を新たに設けている点である。【００７４】
パケット分割部１０１は、多重分離部３１より供給されてくる分離されたパケットを、バッファオーバフローを回避可能な所定のサイズに分割し、分割済みパケットとしてパケット到着時刻付与部３２に供給する。【００７５】
ここで、バッファオーバフローを回避可能な所定のサイズは、バッファオーバフローを回避するために必要なパケット最大長と捉えることができるので、例えば、再生装置６１が備えているバッファ７５の付加バッファのサイズとするようにしてもよい。【００７６】
また、バッファオーバフローを回避可能な、再生装置６１が備えているバッファ７５の付加バッファのサイズに相当する、分割されるパケットの所定のサイズは、図６におけるバッファ占有量の変位を示すグラフの傾きに相当するレートを用いて以下の式（１）により算出される値とするようにしてもよい。【００７７】
分割されるパケットの所定のサイズ（パケット最大長）
＝(Rp/(Rp-Rr))×（バッファ７５のサイズ）
・・・（１）【００７８】
ここで、Rpは、図６の下段において、点線で示されるように、再生時の読み込み最大レート（図６の下段部の点線部の傾き）であり、Rrは、図６の下段において、実線で示されるように、記録時の入力レート（図６の下段部の実線部の傾き）である。【００７９】
このように設定することで、適切なサイズのパケットに分割することで、バッファオーバフローの発生を抑制することが可能となる。【００８０】
さらに、パケット到着時刻付与部１０２は、分割されたパケットにパケット到着時刻を埋め込んだヘッダ、または、パケット到着時刻に相当するパケット到着時刻相当時刻を、パケット到着時刻として埋め込んだヘッダを付与する。【００８１】
＜図７の記録装置による記録処理＞
次に、図８のフローチャートを参照して、図７の記録装置による記録処理について説明する。尚、図８のフローチャートにおけるステップＳ５１，Ｓ５５，Ｓ５６の処理については、図２のフローチャートにおけるステップＳ１１，Ｓ１４，Ｓ１５の処理と同様であるので、その説明は省略するものとする。【００８２】
すなわち、ステップＳ５１において、パケット列が、多重分離部３１によりパケット単位で分離されると、ステップＳ５２において、パケット分割部１０１が、パケットを所定長のサイズに分割し、分割したパケットをパケット到着時刻付与部１０２に供給する。【００８３】
ステップＳ５３において、PLL部３３は、クロック参照情報に基づいて、パケット到着時刻を生成し、パケット到着時刻付与部１０２に供給する。【００８４】
ステップＳ５４において、パケット到着時刻付与部１０２は、分割されたパケットのうち、分割前のパケットに対して先頭となる分割されたパケットに対しては、PLL部３３より供給されてくるパケット到着時刻をヘッダに埋め込んで付与し、記録部３４に出力する。また、パケット到着時刻付与部１０２は、分割されたパケットのうち、分割前のパケットの２番目以降の分割されたパケットに対しては、パケット到着時刻に対応するパケット到着時刻相当時刻を算出し、パケット到着時刻としてパケットのヘッダに埋め込んで付与し、記録部３４に出力する。【００８５】
より詳細には、MPEG-2 TSパケットの場合、元々のシンタクスにパケットの到着時刻が埋め込まれたヘッダが存在しないので、パケット到着時刻付与部１０２は、パケット到着時刻の基準をATC（Arrival Time Clock）として、パケット到着時刻をATS（Arrival Time Stamp）として設定し、このATSからなるパケット到着時刻の情報を埋め込んだエクストラヘッダを、各パケットのペイロードの先頭に付与し、記録部３４に出力する。【００８６】
このため、バッファオーバフローを回避するために分割されたパケットに対しては、先頭のパケットについては、分割前の実際に到着した時刻がパケット到着時刻として付与され、それ以降の分割されたパケットについては、パケット長に応じて、計算されるパケット到着時刻に相当するパケット到着時刻相当時刻を埋め込んだエクストラヘッダが付与される。【００８７】
一方、MMT（MPEG Media Transport）パケットである場合、パケット到着時刻の基準はUTC（Universal Time Clock）であるため、図９の最上段で示されるように、パケット到着時刻はNTP（Network Time Protocol）形式で、ヘッダ（MMTP packet header）５２として予め含まれた状態で受信される。【００８８】
このような場合、パケット分割部１０１は、再生装置６１のバッファ７５のサイズに対してバッファオーバフローを回避するために必要なパケット最大長を超えるパケットが入力されるとき、入力されたパケットを分割する。図９においては、上から２段目で示されるように、パケット５１がパケット５１ａ乃至５１ｃに３分割された場合の例が示されている。尚、分割されたパケット５１ａは、パケット到着時刻が埋め込まれたヘッダ５２と同一のヘッダ５２ａが付されている。さらに、分割されたパケット５１ｂは、ヘッダ５２のパケット到着時刻から算出される、パケット到着時刻相当時刻がパケット到着時刻として埋め込まれたヘッダ５３ａが付され、同様に、パケット５１ｃは、ヘッダ５２のパケット到着時刻から算出される、パケット到着時刻相当時刻がパケット到着時刻として埋め込まれたヘッダ５３ｂが付されている。【００８９】
このようにパケット５１が３分割された場合、パケット到着時刻付与部１０２は、先頭のパケット５１ａには、元々のパケット到着時刻が埋め込まれたヘッダ５２ａとしてヘッダ（MMTP packet header）５２を付与する。また、パケット到着時刻付与部１０２は、２番目以降のパケット５１ｂ，５１ｃに対して、パケット到着時刻に相当するパケット到着時刻相当時刻NTP[n]'を含むヘッダ（MMTP packet header）５３ａ，５３ｂを付与し、分割後のパケット（MMTP packet）を生成する。【００９０】
この際、パケット到着時刻付与部１０２は、分割した先頭以外のパケットの到着時刻を、その分割パケットの先頭バイトのパケット到着時刻相当時刻として、PLL部３３から受け取って、ヘッダに埋め込むようにしてもよいし、分割パケットのパケット長に応じてパケット到着時刻相当時刻を算出してヘッダに埋め込むようにしても良い。【００９１】
分割パケットのパケット長に応じてパケット到着時刻相当時刻を計算する場合、パケット到着時刻付与部１０２は、例えば、記録時の入力レートに基づいて、以下の式（２）により算出するようにしても良い。【００９２】
NTP[n]'=NTP[n]+（パケット[n]のサイズ）／（記録時の入力レート）
・・・（２）【００９３】
ここで、NTP[n]'は、パケット[n]'のパケット到着時刻相当時刻であり、NTP[n]は、パケット[n]'の直前のパケット[n]のパケット到着時刻、または、パケット到着時刻相当時刻である。【００９４】
尚、図９のように分割によってヘッダが追加される場合で、かつ、そのヘッダが再生時にバッファへ入力される場合、パケット分割部１０１は、バッファ７５に溜まり得るヘッダの合計サイズをバッファ７５のサイズから減じてパケット最大長を算出する。【００９５】
パケット５１が分割されない場合、パケット５１に対応する図９の３段目のペイロード９１およびヘッダ９２で示されるように読み出され、時刻ｔ３１からバッファリングされると時刻ｔ３３において、図９の５段目の点線で示されるようにバッファ占有量が上昇する。すなわち、このようにバッファ占有量が急激に上昇するとバッファオーバフローが発生する可能性が高くなる。【００９６】
しかしながら、図９の２段目で示されるように、パケット５１が、パケット５１ａ乃至５１ｃのように３分割されることにより、図９の４段目のヘッダ５２ａ，５３ａ，５３ｂで示されるように、３つの期間に分割して処理がなされる。【００９７】
この結果、パケット５１ａに相当するペイロード９１ａおよびヘッダ９２ａからなる先頭のパケットの処理が、図９の５段目の一点鎖線で示されるように、時刻ｔ３１においてバッファリングが開始されると、時刻ｔ３２に以降において、バッファオーバフローする前のバッファ占有量で維持され、時刻ｔ３４において、デコードが開始されるとバッファ占有量が低下する。【００９８】
その後、図９の４段目で示されるように、時刻ｔ３５において、パケット５１ｂに相当するペイロード９１ｂおよびヘッダ９３ａからなる２番目のパケットのバッファリングが開始され、時刻ｔ３６において終了すると、図９の５段目の一点鎖線で示されるように、時刻ｔ３６乃至ｔ３７において、バッファ占有量がバッファオーバフローしない状態で維持される。【００９９】
さらに、図９の４段目で示されるように、時刻ｔ３７において、パケット５１ｃに相当するペイロード９１ｃおよびヘッダ９３ｂからなる３番目のパケットのバッファリングが開始され、時刻ｔ３８において終了すると、図９の５段目の一点鎖線で示されるように、時刻ｔ３８乃至ｔ３９において、バッファ占有量がバッファオーバフローしない状態で維持される。【０１００】
つまり、このようにパケット長を分割して、パケットの送出を段階的に遅らせるようにすることで、図９の５段目における実線で示されるように、記録時におけるバッファ占有量の変化に近い状態を再現させることが可能となり、結果として、バッファオーバフローを回避することが可能となる。【０１０１】
＜第２の実施の形態＞
以上においては、固定されたパケット最大長でパケットを分割する例について説明してきたが、パケット毎にバッファ７５とデコーダ７６とにおける動作のシミュレーションを行って、バッファオーバフローする場合にのみパケットを分割するようにしてもよい。【０１０２】
図１０は、バッファオーバフローする場合にのみパケットを分割するようにした記録装置１１の構成例を示している。尚、図７の記録装置１１と同一の機能を備えた構成については、同一の符号、および同一の名称を付与しており、その説明は適宜省略するものとする。【０１０３】
すなわち、図１０の記録装置１１において、図７の記録装置１１と異なるのは、読み出しバッファシミュレーション部１２１を新たに設け、さらに、パケット分割部１０１に代えて、パケット分割部１２２を設けるようにした点である。【０１０４】
読み出しバッファシミュレーション部１２１は、分離されたパケット列を順次処理するに際してバッファ７５およびデコーダ７６におけるデコード処理をシミュレーションにより再現し、バッファオーバフローが発生するか否かを判定する。そして、バッファオーバフローが発生する場合、読み出しバッファシミュレーション部１２１は、バッファオーバフローが発生しない最大パケット長を算出し、パケット分割部１２２に対して最大パケット長で分割するように指示する。【０１０５】
パケット分割部１２２は、読み出しバッファシミュレーション部１２１より分割が指示されないときは、供給されてきた分離されたパケットをそのままパケット到着時刻付与部１０２に出力し、分割が指示された場合、指示と共に供給される最大パケット長で分離されたパケットを分割して、パケット到着時刻付与部１０２に出力する。【０１０６】
＜図１０の記録装置による記録処理＞
次に、図１１のフローチャートを参照して、図１０の記録装置による記録処理について説明する。【０１０７】
尚、図１１におけるステップＳ７１，Ｓ７６乃至Ｓ７９の処理については、図８のステップＳ５１，Ｓ５３乃至Ｓ５６の処理と同様であるので、その説明は省略するものとする。【０１０８】
すなわち、ステップＳ７２において、読み出しバッファシミュレーション部１２１は、パケット列により順次パケット単位でデコーダ７６の処理を実行し、その際のバッファ７５におけるバッファ占有量をシミュレーションする。【０１０９】
ステップＳ７３において、読み出しバッファシミュレーション部１２１は、バッファオーバフローが発生したか否かを判定し、バッファオーバフローが発生した場合、処理は、ステップＳ７４に進む。【０１１０】
ステップＳ７４において、読み出しバッファシミュレーション部１２１は、シミュレーション結果からバッファオーバフローが発生しないときのバッファ占有量の最大値に相当する最大パケット長を読み出し、パケット分割部１２２に供給すると共に、パケットの分割を指示する。【０１１１】
ステップＳ７５において、パケット分割部１２２は、読み出しバッファシミュレーション部１２１からの指示に基づいて、最大パケット長でパケットを分割し、パケット到着時刻付与部１０２に供給する。【０１１２】
一方、ステップＳ７３において、バッファオーバフローが発生しない場合、ステップＳ７４，Ｓ７５の処理はスキップされる。【０１１３】
すなわち、パケット列が順次デコードされる際に、実際に、バッファ７５が使用される際のバッファ占有量がシミュレーションされて、バッファオーバフローの発生が見込まれるパケットについては、パケットが分割され、バッファオーバフローの発生が見込まれない場合については、パケットが分割されない。【０１１４】
結果として、バッファオーバフローが見込まれるか否かにより、動的にパケットを分割するか否かが判断されて、バッファオーバフローが発生するときにのみパケットが分割されるので、不要な分割処理に係る負荷を低減することができ、かつ、確実にバッファオーバフローを回避することが可能となる。【０１１５】
また、バッファオーバフローが発生することが見込まれる場合においては、バッファオーバフローが発生しないときの最大バッファ占有量に対応する最大パケット長でパケットが分割されるので、分割処理を必要最小限にすることが可能となり、分割に係る処理負荷を低減させつつ、バッファオーバフローを効率よく確実に回避することが可能となる。【０１１６】
尚、以上においては、記録装置と再生装置との例について説明してきたが、例えば、放送信号を送信するに当たって、記録装置側の処理を送信装置が実行し、再生装置側の処理を受信装置が実行するような構成からなる送信装置と受信装置との構成とするようにしてもよい。【０１１７】
＜ソフトウェアにより実行させる例＞
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。【０１１８】
図１２は、汎用のパーソナルコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)１００１を内蔵している。CPU１００１にはバス１００４を介して、入出力インタ-フェイス１００５が接続されている。バス１００４には、ROM(Read Only Memory)１００２およびRAM(Random Access Memory)１００３が接続されている。【０１１９】
入出力インタ-フェイス１００５には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部１００６、処理操作画面や処理結果の画像を表示デバイスに出力する出力部１００７、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部１００８、LAN（Local Area Network）アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部１００９が接続されている。また、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む）、光磁気ディスク（ＭＤ(Mini Disc)を含む）、もしくは半導体メモリなどのリムーバブルメディア１０１１に対してデータを読み書きするドライブ１０１０が接続されている。【０１２０】
CPU１００１は、ROM１００２に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブルメディア１０１１ら読み出されて記憶部１００８にインストールされ、記憶部１００８からRAM１００３にロードされたプログラムに従って各種の処理を実行する。RAM１００３にはまた、CPU１００１が各種の処理を実行する上において必要なデータなども適宜記憶される。【０１２１】
以上のように構成されるコンピュータでは、CPU１００１が、例えば、記憶部１００８に記憶されているプログラムを、入出力インタフェース１００５及びバス１００４を介して、RAM１００３にロードして実行することにより、上述した一連の処理が行われる。【０１２２】
コンピュータ（CPU１００１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア１０１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。【０１２３】
コンピュータでは、プログラムは、リムーバブルメディア１０１１をドライブ１０１０に装着することにより、入出力インタフェース１００５を介して、記憶部１００８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部１００９で受信し、記憶部１００８にインストールすることができる。その他、プログラムは、ROM１００２や記憶部１００８に、あらかじめインストールしておくことができる。【０１２４】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。【０１２５】
また、本明細書において、システムとは、複数の構成要素（装置、モジュール（部品）等）の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、１つの筐体の中に複数のモジュールが収納されている１つの装置は、いずれも、システムである。【０１２６】
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。【０１２７】
例えば、本技術は、１つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。【０１２８】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。【０１２９】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。【０１３０】
尚、本技術は、以下のような構成も取ることができる。
＜１＞  パケット列より各パケットを分離する多重分離部と、
前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、
前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、
前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部と
を含む記録装置。
＜２＞  前記パケット到着時刻がヘッダに埋め込まれている、前記分割パケットを記録媒体に記録する記録部をさらに含み、
前記所定のサイズは、前記記録媒体に記録された前記分割パケットを再生する再生装置が、受信視聴時と同じデータバッファサイズにバッファオーバフローを回避するために付加した付加バッファのサイズに対応するサイズである
＜１＞に記載の記録装置。
＜３＞  前記再生装置により前記分割パケットが再生される際の読み込み最大レートがRpであり、前記分割パケットが記録される際の読み込み最大レートがRrであるとき、前記所定のサイズは、（（Rp/Rp-Rr）×（前記バッファのサイズ））とされる
＜２＞に記載の記録装置。
＜４＞  前記多重分離部は、パケット列より各パケットを分離すると共に、前記各パケットの到着タイミングを示す情報を出力し、
前記パケット到着時刻発生部は、
前記各パケットの到着タイミングを示す情報に基づいて、前記分割パケットが分割される前の前記パケット毎のパケット到着時刻を発生し、
前記分割パケットのうち、前記パケットの先頭となる分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻を、そのまま前記ヘッダに埋め込み、
前記分割パケットのうち、前記パケットの先頭から２番目以降の分割パケットに対しては、前記分割パケットが分割される前の前記パケットの前記パケット到着時刻から、順次分割パケットのサイズと記録時の入力レートに基づいて算出されるパケット到着時刻相当時刻を、前記パケット到着時刻として前記ヘッダに埋め込む
＜１＞乃至＜３＞のいずれかに記載の記録装置。
＜５＞  前記パケット到着時刻付与部は、前記分割パケットのそれぞれに対して、エクストラヘッダを設定し、前記エクストラヘッダに、前記時刻発生部により発生されたパケット到着時刻としてATS(Arrival Time Stamp)を埋め込む
＜１＞乃至＜４＞のいずれかに記載の記録装置。
＜６＞  MMT（MPEG Media Transport）の場合、前記パケット到着時刻付与部は、前記分割パケットのそれぞれのMMTP packet headerからなるヘッダに、前記時刻発生部により発生されたパケット到着時刻をNTP（Network Time Protocol）形式で埋め込む
＜１＞乃至＜５＞のいずれかに記載の記録装置。
＜７＞  前記記録媒体に記録された前記分割パケットを必要に応じて順次バッファリングするバッファと、前記バッファにバッファリングされた分割パケット列を順次デコードするデコード部を備えた再生装置の動作をシミュレーションし、前記シミュレーションにおいてバッファオーバフローする場合、前記バッファ分割部に前記パケットを前記分割パケットに分割するように指示するシミュレーション部をさらに含み、
前記バッファ分割部は、前記シミュレーション部より前記パケットを前記分割パケットに分割するように指示された場合にのみ、前記パケットを前記分割パケットに分割する
＜１＞乃至＜６＞のいずれかに記載の記録装置。
＜８＞  前記シミュレーション部は、前記シミュレーションにおいてバッファオーバフローする場合、前記シミュレーションの結果から、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割するように指示し、
前記バッファ分割部は、前記バッファオーバフローが発生しない最大パケット長となるサイズの前記分割パケットに前記パケットを分割する
＜７＞に記載の記録装置。
＜９＞  パケット列より各パケットを分離し、
前記パケットを所定のサイズの分割パケットに分割し、
前記分割パケット毎のパケット到着時刻を発生し、
発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込む
ステップを含む記録方法。
＜１０＞  パケット列より各パケットを分離する多重分離部と、
前記パケットを所定のサイズの分割パケットに分割するパケット分割部と、
前記分割パケット毎のパケット到着時刻を発生するパケット到着時刻発生部と、
前記時刻発生部により発生された前記パケット到着時刻を、前記分割パケットのヘッダに埋め込むパケット到着時刻付与部としてコンピュータを機能させる
プログラム。
【符号の説明】
【０１３１】
１１  記録装置，  ３１  多重分離部，  ３２  パケット到着時刻付与部，  ３３  PLL部，  ３４  記録部，  ３５  記録媒体，  ６１  再生装置，  ７１  記録媒体，  ７２  パケット読み出し部，  ７３  ATCカウンタ，  ７４  多重分離部，  ７５，７５−１乃至７５−ｎ  バッファ，  ７６，７６−１乃至７６−ｎ  デコーダ，  ７７  表示部，  １０１  パケット分割部，  １０２  パケット到着時刻付与部，  １２１  読み出しバッファシミュレーション部，  １２２  パケット分割部
【図１】
2017033764.tif 000003
【図２】
2017033764.tif 000004
【図３】
2017033764.tif 000005
【図４】
2017033764.tif 000006
【図５】
2017033764.tif 000007
【図６】
2017033764.tif 000008
【図７】
2017033764.tif 000009
【図８】
2017033764.tif 000010
【図９】
2017033764.tif 000011
【図１０】
2017033764.tif 000012
【図１１】
2017033764.tif 000013
【図１２】
2017033764.tif 000014
【国際調査報告】
2017033764.tif 000015
2017033764.tif 000016
2017033764.tif 000017
2017033764.tif 000018
2017033764.tif 000019
2017033764.tif 000020