(57)【特許請求の範囲】
【請求項１】
複数の階層を含むように符号化された動画データを配信する動画配信装置と、
前記動画データを受信して復号化する端末装置と
を備える動画配信システムであって、
前記動画配信装置は、
外部の動画サーバから配信された符号化された動画データのストリーミングを受け付けるストリーミング受付部と、
前記ストリーミング受付部が受け付けた前記ストリーミングに基づいて動画データを順次生成する動画データ生成部と、
前記動画データ生成部が生成した前記動画データを複数の階層を含むように順次符号化する符号化部と、
前記符号化部によって符号化された前記動画データに含まれる第１階層の第１レイヤデータ及び第２階層の第２レイヤデータを順次取得するレイヤデータ取得部と、
前記第１レイヤデータ及び前記第２レイヤデータに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、前記第１レイヤデータのフレームと前記第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、前記複数のフレームのそれぞれに対応する複数のパケットを順次生成するパケット生成部と、
ＱｏＳ保証可能な通信路を介して、前記複数のパケットを前記端末装置に順次送信するパケット送信部であって、前記パケット生成部によって、前記第１レイヤデータ及び前記第２レイヤデータに含まれる前記複数のフレームのそれぞれに、前記シーケンスＩＤと、前記レイヤＩＤと、前記ＱｏＳＩＤとが対応付けられた後、ＵＤＰパケットを用いて前記複数のフレームのそれぞれを送信するパケット送信部と
を有し、
前記端末装置は、
前記複数のパケットを受信するパケット受信部と、
前記パケット受信部が受信した前記複数のパケットのそれぞれに含まれるフレームについて、前記シーケンスＩＤ及び前記レイヤＩＤに基づいて、各フレームが受信されたか否かを判定するフレーム判定部と、
前記受信された複数のフレームのうち、第１レイヤデータのフレームとこれに対応する第２レイヤデータのフレームの両方が受信された場合、両方のフレームを用い、第１レイヤデータのフレーム又は第２レイヤデータのフレームのどちらかしか受信されなかった場合は当該フレームを用いて、前記動画データを復号化する復号化部と
を有する、
動画配信システム。
【請求項２】
前記動画配信装置と前記端末装置との間の通信を中継する通信中継装置
をさらに備え、
前記通信中継装置は、前記動画配信装置から受信した前記パケットに含まれる前記ＱｏＳＩＤを参照して、前記第１レイヤデータのフレームと前記第２レイヤデータのフレームとを異なるＱｏＳを用いて前記端末装置に送信する、請求項１に記載の動画配信システム。
【請求項３】
前記ＱｏＳＩＤは、前記フレームをＱｏＳ保証して送信すること又は前記フレームをＱｏＳ保証せずに送信することを示し、
前記パケット生成部は、前記第１レイヤデータのフレームにＱｏＳ保証して送信することを示すＱｏＳＩＤを対応付け、前記第２レイヤデータのフレームにＱｏＳ保証しないで送信することを示すＱｏＳＩＤを対応付ける、請求項１又は２に記載の動画配信システム。
【請求項４】
前記動画配信装置は、
前記通信路の通信品質を取得する通信品質取得部
をさらに有し、
前記パケット生成部は、前記通信品質が予め定められた閾値より高い場合、前記第１レイヤデータ及び前記第２レイヤデータのそれぞれに含まれる前記複数のフレームをパケット化することにより前記複数のパケットを生成し、前記通信品質が前記予め定められた閾値より高くない場合、前記第２レイヤデータに含まれる前記複数のフレームはパケット化せず、前記第１レイヤデータに含まれる複数のフレームをパケット化することにより、前記複数のパケットを生成し、
前記パケット送信部は、前記通信品質が前記予め定められた閾値より高い場合、前記第１レイヤデータ及び前記第２レイヤデータのそれぞれに含まれる前記複数のフレームをパケット化することにより生成された前記複数のパケットを前記端末装置に送信し、前記通信品質が前記予め定められた閾値より高くない場合、前記第１レイヤデータに含まれる複数のフレームをパケット化することにより生成された前記複数のパケットを前記端末装置に送信する、請求項１から３のいずれか１項に記載の動画配信システム。
【請求項５】
前記動画配信装置は、
前記通信路の通信品質を取得する通信品質取得部
をさらに有し、
前記パケット生成部は、前記通信品質が予め定められた閾値よりも高い場合、前記複数のフレームのそれぞれに、前記第１レイヤデータのフレームと前記第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤを対応付け、前記通信品質が前記予め定められた閾値よりも高くない場合、前記第２レイヤデータのフレームに対して、前記通信品質が前記予め定められた閾値よりも高い場合に比べて低いＱｏＳを用いて送信することを示すＱｏＳＩＤを対応付けることにより、前記複数のパケットを生成する、請求項１から３のいずれか一項に記載の動画配信システム。
【請求項６】
前記レイヤデータ取得部は、スケーラブル符号化された前記動画データに含まれる、前記第１レイヤデータである基本レイヤデータ及び前記第２レイヤデータである拡張レイヤデータを取得し、
前記パケット生成部は、前記基本レイヤデータに含まれる複数のフレームのそれぞれを、前記シーケンスＩＤと、基本レイヤを識別するレイヤＩＤと、前記基本レイヤデータのフレームを前記拡張レイヤデータのフレームよりも高いＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、前記基本レイヤデータの前記複数のフレームのそれぞれに対応する複数の基本レイヤパケットを生成し、前記拡張レイヤデータに含まれる複数のフレームのそれぞれを、前記シーケンスＩＤと、拡張レイヤを識別するレイヤＩＤと、前記拡張レイヤデータのフレームを前記基本レイヤデータのフレームよりも低いＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、前記拡張レイヤデータの前記複数のフレームのそれぞれに対応する複数の拡張レイヤパケットを生成し、
前記パケット送信部は、ＱｏＳ保証可能な通信路を介して、前記複数の基本レイヤパケット及び前記複数の拡張レイヤパケットを前記端末装置に送信し、
前記パケット受信部は、前記複数の基本レイヤパケット及び前記複数の拡張レイヤパケットを受信し、
前記フレーム判定部は、前記パケット受信部が受信した前記複数の基本レイヤパケットから取り出した基本レイヤデータの各フレームについて、前記シーケンスＩＤ及び前記レイヤＩＤに基づいて、対応する拡張レイヤパケットから取り出した前記基本レイヤパケットから取り出した各フレームに対応する拡張レイヤデータの各フレームが受信されたか否かを判定し、
前記復号化部は、対応する前記拡張レイヤパケットが受信された基本レイヤパケットについては前記基本レイヤパケットから取り出したフレーム及び前記拡張レイヤパケットから取り出したフレームを用い、対応する前記拡張レイヤパケットが受信されなかった基本レイヤパケットについては前記基本レイヤパケットから取り出したフレームを用いて、前記動画データを復号化する、請求項１から５のいずれか一項に記載の動画配信システム。
【請求項７】
前記レイヤデータ取得部は、空間スケーラブル符号化された前記動画データが含む前記基本レイヤデータ及び複数階層の拡張空間レイヤデータを取得し、
前記パケット生成部は、前記複数階層の拡張空間レイヤデータの複数のフレームのそれぞれを、前記シーケンスＩＤ、階層に応じた前記レイヤＩＤ、及び前記ＱｏＳＩＤを対応付けてパケット化することにより、前記複数階層の拡張空間レイヤデータの前記複数のフレームのそれぞれに対応する複数の拡張空間レイヤパケットを生成し、
前記パケット送信部は、前記複数の基本レイヤパケット及び前記複数の拡張空間レイヤパケットを前記端末装置に送信し、
前記動画配信装置は、
前記複数階層の拡張空間レイヤデータの最大階層数を前記端末装置に送信する最大階層数送信部
をさらに有し、
前記端末装置は、
前記最大階層数送信部から前記最大階層数を受信する最大階層数受信部
をさらに有し、
前記パケット受信部は、前記複数の基本レイヤパケット及び前記複数の拡張空間レイヤパケットを受信し、
前記フレーム判定部は、前記複数の基本レイヤパケットから取り出した基本レイヤデータの各フレームについて、予め定められた時間の間に、前記シーケンスＩＤ及び前記レイヤＩＤに基づいて、前記基本レイヤパケットに含まれるシーケンスＩＤと同一のシーケンスＩＤを含む最大階層数の拡張空間レイヤパケットに含まれる前記基本レイヤデータの各フレームに対応する拡張空間レイヤデータに対応するフレームが受信されたか否かを判定し、
前記復号化部は、
複数の前記基本レイヤパケットのそれぞれについて、
予め定められた時間の間に、前記基本レイヤパケットに含まれるシーケンスＩＤと同一のシーケンスＩＤを含む最大階層数の拡張空間レイヤパケットが受信された場合、前記基本レイヤパケットから取り出したフレーム及び前記最大階層数の拡張空間レイヤパケットから取り出したフレームを用い、
前記予め定められた時間の間に、前記基本レイヤパケットに含まれるシーケンスＩＤと同一のシーケンスＩＤを含む最大階層数未満の拡張空間レイヤパケットが受信された場合、前記基本レイヤパケットから取り出したフレーム及び前記最大階層数未満の拡張空間レイヤパケットから取り出したフレームを用い、
前記予め定められた時間の間に、前記基本レイヤパケットに含まれるシーケンスＩＤと同一のシーケンスＩＤを含む拡張空間レイヤパケットが受信されなかった場合、前記基本レイヤパケットから取り出したフレームを用いて、
前記動画データを復号化する、請求項６に記載の動画配信システム。
【請求項８】
前記レイヤデータ取得部は、時間スケーラブル符号化された前記動画データが含む、他のフレームを用いることなく復号化可能なキーフレームとして複数の映像グループのそれぞれに含まれる複数のフレームを有する前記基本レイヤデータと、他のフレームを用いることによって予測復号化される予測復号フレームとして前記複数の映像グループのそれぞれに含まれる複数のフレームを有する拡張時間レイヤデータとを取得し、
前記パケット生成部は、前記拡張時間レイヤデータに含まれる複数のフレームのそれぞれを、前記シーケンスＩＤ、前記レイヤＩＤ、及び前記ＱｏＳＩＤを対応付けてパケット化することにより、前記拡張時間レイヤデータの前記複数のフレームのそれぞれに対応する複数の拡張時間レイヤパケットを生成し、
前記パケット送信部は、前記複数の基本レイヤパケット及び前記複数の拡張時間レイヤパケットを前記端末装置に送信し、
前記動画配信装置は、
前記複数の映像グループのそれぞれの映像グループに含まれるフレームの数を示す映像フレーム数を前記端末装置に送信する映像フレーム数送信部
をさらに有し、
前記端末装置は、
前記映像フレーム数送信部から前記映像フレーム数を受信する映像フレーム数受信部
をさらに有し、
前記パケット受信部は、前記複数の基本レイヤパケット及び前記複数の拡張時間レイヤパケットを受信し、
前記フレーム判定部は、前記複数の映像グループのそれぞれについて、予め定められた時間の間に、前記シーケンスＩＤ及び前記レイヤＩＤに基づいて、一の映像グループに含まれるすべてのフレームに対応する基本レイヤパケット及び拡張時間レイヤパケットが受信されたか否かを判定し、
前記復号化部は、
前記複数の基本レイヤパケットのそれぞれについて、
予め定められた時間の間に、前記基本レイヤパケットが有するフレームを含む映像グループに含まれるすべての予測復号フレームにそれぞれ対応するフレームをそれぞれが含む複数の拡張時間レイヤパケットが受信された場合、前記基本レイヤパケットから取り出したフレーム及び前記複数の拡張時間レイヤパケットから取り出したフレームを用い、
前記予め定められた時間の間に、前記基本レイヤパケットが有するフレームを含む映像グループに含まれる一部の予測復号フレームにそれぞれ対応するフレームをそれぞれが含む前記拡張時間レイヤパケットが受信された場合であって、前記拡張時間レイヤパケットが再生可能である場合、前記基本レイヤパケットから取り出したフレーム及び前記拡張時間レイヤパケットから取り出したフレームを用い、
前記予め定められた時間の間に、前記基本レイヤパケットが有するフレームを含む映像グループに含まれる予測復号フレームに対応するフレームを有する前記拡張時間レイヤパケットが受信されなかった場合、前記基本レイヤパケットから取り出したフレームを用いて、
前記動画データを復号化する、請求項６に記載の動画配信システム。
【請求項９】
前記レイヤデータ取得部は、時間スケーラブル符号化及び空間スケーラブル符号化された前記動画データに含まれる前記基本レイヤデータ、拡張時間レイヤデータ及び拡張空間レイヤデータを取得し、
前記パケット生成部は、前記拡張時間レイヤデータに含まれる複数のフレームのそれぞれに、前記シーケンスＩＤと、拡張時間レイヤを識別するレイヤＩＤと、前記ＱｏＳＩＤとを対応付けてパケット化することにより、前記複数のフレームのそれぞれに対応する複数の拡張時間レイヤパケットを生成し、前記拡張空間レイヤデータに含まれる複数のフレームのそれぞれに、前記シーケンスＩＤと、拡張空間レイヤを識別するレイヤＩＤと、前記ＱｏＳＩＤとを対応付けてパケット化することにより、前記複数のフレームのそれぞれに対応する複数の拡張空間レイヤパケットを生成し、
前記パケット送信部は、前記複数の基本レイヤパケット、前記複数の拡張時間レイヤパケット及び前記複数の拡張空間レイヤパケットを前記端末装置に送信し、
前記パケット受信部は、前記複数の基本レイヤパケット、前記複数の拡張時間レイヤパケット及び前記複数の拡張空間レイヤパケットを受信し、
前記フレーム判定部は、前記複数の基本レイヤパケットから取り出した基本レイヤデータに含まれる各フレームについて、前記シーケンスＩＤ及び前記レイヤＩＤに基づいて、対応する拡張時間レイヤパケットに含まれる前記基本レイヤデータに含まれる各フレームに対応する拡張時間レイヤデータの各フレーム及び拡張空間レイヤパケットに含まれる前記基本レイヤデータに含まれる各フレームに対応する拡張時間レイヤデータの各フレームが受信されたか否かを判定し、
前記復号化部は、
複数の前記基本レイヤパケットのそれぞれについて、
対応する前記拡張時間レイヤパケット及び前記拡張空間レイヤパケットが受信された場合、前記基本レイヤパケットから取り出したフレーム、前記拡張時間レイヤパケットから取り出したフレーム及び前記拡張空間レイヤパケットから取り出したフレームを用い、
対応する前記拡張時間レイヤパケット又は前記拡張空間レイヤパケットが受信された場合、前記基本レイヤパケットから取り出したフレームと、前記拡張時間レイヤパケットから取り出したフレーム又は前記拡張空間レイヤパケットから取り出したフレームとを用い、
対応する前記拡張時間レイヤパケット及び前記拡張空間レイヤパケットが受信されなかった場合、前記基本レイヤパケットから取り出したフレームを用いて、
前記動画データを復号化する、請求項６に記載の動画配信システム。
【請求項１０】
外部の動画サーバから配信された符号化された動画データのストリーミングを受け付けるストリーミング受付部と、
前記ストリーミング受付部が受け付けた前記ストリーミングに基づいて動画データを生成する動画データ生成部と、
前記動画データ生成部が生成した前記動画データを複数の階層を含むように符号化する符号化部と、
前記符号化部によって符号化された前記動画データに含まれる第１階層の第１レイヤデータ及び第２階層の第２レイヤデータを取得するレイヤデータ取得部と、
前記第１レイヤデータ及び前記第２レイヤデータに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、前記第１レイヤデータのフレームと前記第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、前記複数のフレームのそれぞれに対応する複数のパケットを生成するパケット生成部と、
ＱｏＳ保証可能な通信路を介して、前記複数のパケットを送信するパケット送信部であって、前記パケット生成部によって、前記第１レイヤデータ及び前記第２レイヤデータに含まれる前記複数のフレームのそれぞれに、前記シーケンスＩＤと、前記レイヤＩＤと、前記ＱｏＳＩＤとが対応付けられた後、ＵＤＰパケットを用いて前記複数のフレームのそれぞれを送信するパケット送信部と
を備える動画配信装置。
【請求項１１】
コンピュータを、
外部の動画サーバから配信された符号化された動画データのストリーミングを受け付けるストリーミング受付手段、
前記ストリーミング受付手段が受け付けた前記ストリーミングに基づいて動画データを生成する動画データ生成手段、
前記動画データ生成手段が生成した前記動画データを複数の階層を含むように符号化する符号化手段、
前記符号化手段によって符号化された前記動画データに含まれる第１階層の第１レイヤデータ及び第２階層の第２レイヤデータを取得するレイヤデータ取得手段、
前記第１レイヤデータ及び前記第２レイヤデータに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、前記第１レイヤデータのフレームと前記第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、前記複数のフレームのそれぞれに対応する複数のパケットを生成するパケット生成手段、及び
ＱｏＳ保証可能な通信路を介して、前記複数のパケットを送信するパケット送信手段であって、前記パケット生成手段によって、前記第１レイヤデータ及び前記第２レイヤデータに含まれる前記複数のフレームのそれぞれに、前記シーケンスＩＤと、前記レイヤＩＤと、前記ＱｏＳＩＤとが対応付けられた後、ＵＤＰパケットを用いて前記複数のフレームのそれぞれを送信するパケット送信手段
として機能させるためのプログラム。
【請求項１２】
外部の動画サーバから受け付けた符号化された動画データのストリーミングに基づいて生成した動画データを複数の階層を含むように符号化して配信する動画配信装置から受信した複数の階層を含むように符号化された動画データに含まれる第１階層の第１レイヤデータ及び第２階層の第２レイヤデータのそれぞれに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、前記第１レイヤデータのフレームと前記第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより生成された複数のパケットを受信するパケット受信部であって、前記複数のフレームのそれぞれに、前記シーケンスＩＤと、前記レイヤＩＤと、前記ＱｏＳＩＤとを対応付けて生成された、複数のＵＤＰパケットを用いて前記複数のフレームのそれぞれを受信するパケット受信部と、
前記パケット受信部が受信した前記複数のパケットのそれぞれに含まれるフレームについて、前記シーケンスＩＤ及び前記レイヤＩＤに基づいて、各フレームが受信されたか否かを判定するフレーム判定部と、
前記複数のフレームのうち、第１レイヤデータのフレームとこれに対応する第２レイヤデータのフレームの両方が受信された場合、両方のフレームを用い、第１レイヤデータのフレーム又は第２レイヤデータのフレームのどちらかしか受信されなかった場合、当該フレームを用いて、前記動画データを復号化する復号化部と
を備える端末装置。
【請求項１３】
コンピュータを、
外部の動画サーバから受け付けた符号化された動画データのストリーミングに基づいて生成した動画データを複数の階層を含むように符号化して配信する動画配信装置から受信した複数の階層を含むように符号化された動画データに含まれる第１階層の第１レイヤデータ及び第２階層の第２レイヤデータのそれぞれに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、前記第１レイヤデータのフレームと前記第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより生成された複数のパケットを受信するパケット受信手段であって、前記複数のフレームのそれぞれに、前記シーケンスＩＤと、前記レイヤＩＤと、前記ＱｏＳＩＤとを対応付けて生成された、複数のＵＤＰパケットを用いて前記複数のフレームのそれぞれを受信するパケット受信手段、
前記パケット受信手段が受信した前記複数のパケットのそれぞれに含まれるフレームについて、前記シーケンスＩＤ及び前記レイヤＩＤに基づいて、各フレームが受信されたか否かを判定するフレーム判定手段、及び
前記複数のフレームのうち、第１レイヤデータのフレームとこれに対応する第２レイヤデータのフレームの両方が受信された場合、両方のフレームを用い、第１レイヤデータのフレーム又は第２レイヤデータのフレームのどちらかしか受信されなかった場合、当該フレームを用いて、前記動画データを復号化する復号化手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画配信システム、動画配信装置、端末装置、及びプログラムに関する。
【背景技術】
【０００２】
従来、スケーラブル符号化を用いたストリーミング技術が知られていた。（例えば、特許文献１参照）。また、通信路の通信品質が低下した場合に、スケーラブル符号化により生成した基本レイヤデータ及び拡張レイヤデータのうち拡張レイヤデータを送信しないように制御する技術が知られていた。
［先行技術文献］
［特許文献］
［特許文献１］特表２００９−５４０６２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、通信路の通信品質が測定されたときと、実際にデータを送信するときとで、通信品質が異なる場合があり、例えば、通信品質が低下してしまっていた場合に基本レイヤデータがロスすることによって動画が途中で止まってしまう等の問題が発生する場合があった。
【課題を解決するための手段】
【０００４】
本発明の第１の態様によれば、複数の階層を含むように符号化された動画データを配信する動画配信装置と、動画データを受信して復号化する端末装置とを備える動画配信システムであって、動画配信装置が、動画データに含まれる第１階層の第１レイヤデータ及び第２階層の第２レイヤデータを取得するレイヤデータ取得部と、第１レイヤデータ及び第２レイヤデータに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、第１レイヤデータのフレームと第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、複数のフレームのそれぞれに対応する複数のパケットを生成するパケット生成部と、ＱｏＳ保証可能な通信路を介して、複数のパケットを端末装置に送信するパケット送信部とを有し、端末装置が、複数のパケットを受信するパケット受信部と、パケット受信部が受信した複数のパケットのそれぞれに含まれるフレームについて、各フレームが受信されたか否かを判定するフレーム判定部と、受信された複数のフレームのうち、第１レイヤデータのフレームとこれに対応する第２レイヤデータのフレームの両方が受信された場合、両方のフレームを用い、第１レイヤデータのフレーム又は第２レイヤデータのフレームのどちらかしか受信されなかった場合当該フレームを用いて、動画データを復号化する復号化部とを有する、動画配信システムが提供される。
【０００５】
本発明の第２の態様によれば、複数の階層を含むように符号化された動画データに含まれる第１階層の第１レイヤデータ及び第２階層の第２レイヤデータを取得するレイヤデータ取得部と、第１レイヤデータ及び第２レイヤデータに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、第１レイヤデータのフレームと第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、複数のフレームのそれぞれに対応する複数パケットを生成するパケット生成部と、ＱｏＳ保証可能な通信路を介して、複数のパケットを送信するパケット送信部とを備える動画配信装置が提供される。
【０００６】
本発明の第３の態様によれば、コンピュータを、上記動画配信装置として機能させるためのプログラムが提供される。
【０００７】
本発明の第４の態様によれば、複数の階層を含むように符号化された動画データに含まれる第１階層の第１レイヤデータ及び第２階層の第２レイヤデータのそれぞれに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、第１レイヤデータのフレームと第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより生成された、複数のパケットを受信するパケット受信部と、パケット受信部が受信した複数のパケットのそれぞれに含まれるフレームについて、シーケンスＩＤ及びレイヤＩＤに基づいて、各フレームが受信されたか否かを判定するフレーム判定部と、複数のフレームのうち、第１レイヤデータのフレームとこれに対応する第２レイヤデータのフレームの両方が受信された場合、両方のフレームを用い、第１レイヤデータのフレーム又は第２レイヤデータのフレームのどちらかしか受信されなかった場合、当該フレームを用いて、動画データを復号化する復号化部とを備える端末装置が提供される。
【０００８】
本発明の第５の態様によれば、コンピュータを、上記端末装置として機能させるためのプログラムが提供される。
【０００９】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００１０】
【図１】動画配信システムの通信環境の一例を概略的に示す。
【図２】複数の基本レイヤフレーム及び複数の拡張空間レイヤフレームのそれぞれに対応付けられたＱｏＳＩＤ、シーケンスＩＤ、及びレイヤＩＤの一例を概略的に示す。
【図３】複数の基本レイヤフレーム及び複数の拡張時間レイヤフレームのそれぞれに対応付けられたＱｏＳＩＤ、シーケンスＩＤ、及びレイヤＩＤの一例を概略的に示す。
【図４】複数の基本レイヤフレーム、複数の拡張時間レイヤフレーム及び複数の拡張空間レイヤフレームのそれぞれに対応付けられたＱｏＳＩＤ、シーケンスＩＤ、及びレイヤＩＤの一例を概略的に示す。
【図５】動画配信装置の機能構成の一例を概略的に示す。
【図６】端末装置の機能構成の一例を概略的に示す。
【図７】端末装置による復号化処理のフローチャートの一例を概略的に示す。
【図８】端末装置による復号化処理のフローチャートの一例を概略的に示す。
【図９】端末装置による復号化処理のフローチャートの一例を概略的に示す。
【発明を実施するための形態】
【００１１】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１２】
図１は、動画配信システム１０の通信環境の一例を概略的に示す。本実施形態に係る動画配信システム１０は、動画配信装置１００、動画サーバ２００、端末装置３００、及び通信中継装置４００を備える。動画配信装置１００、動画サーバ２００、端末装置３００、及び通信中継装置４００は、ネットワーク２０を介して通信してよい。ネットワーク２０は、インターネット、有線ＬＡＮ、無線ＬＡＮ、有線電話網、及び無線電話網の少なくともいずれかを含んでよい。
【００１３】
動画配信装置１００は、複数の階層を含むように符号化された動画データを配信する。動画配信装置１００は、例えば、スケーラブル符号化された動画データを配信する。動画配信装置１００は、他の符号化方式によって複数の階層を含むように符号化された動画データを配信してもよい。
【００１４】
動画配信装置１００は、例えば、自らが格納する動画データを符号化して配信する。また、動画配信装置１００は、他の装置が配信する動画データを受信して、受信した動画データを符号化して配信してよい。例えば、動画配信装置１００は、動画サーバ２００が配信する動画データを受信して、受信した動画データを符号化して配信してよい。動画配信装置１００は、動画サーバ２００から動画のストリーミングを受け付けて、受け付けたストリーミングに基づいて動画データを生成してもよい。また、動画配信装置１００は、他の装置が符号化した動画データを受信して、受信した符号化された動画データを配信してもよい。例えば、動画配信装置１００は、動画サーバ２００から符号化された動画データを受信する。動画配信装置１００は、符号化された動画データをライブストリーミングによって配信してもよい。すなわち、動画配信装置１００は、動画データをリアルタイムで符号化して、ストリーミング配信してもよい。
【００１５】
動画サーバ２００は、動画データを配信する。動画サーバ２００は、動画をストリーミング配信してよい。また、動画サーバ２００は、動画データを複数の階層を含むように符号化して配信してもよい。
【００１６】
端末装置３００は、複数の階層を含むように符号化された動画データを動画配信装置１００から受信して復号化する。端末装置３００は、少なくとも一部がＱｏＳ保証可能な通信路を介して、動画配信装置１００から符号化された動画データを受信してよい。
【００１７】
通信中継装置４００は、動画配信装置１００と端末装置３００との間の通信を中継する。通信中継装置４００は、ＱｏＳ制御機能を備えていてよい。通信中継装置４００は、例えば、動画配信装置１００から受信した複数の階層を含むように符号化された動画データを、ＱｏＳ保証可能な通信路を介して、端末装置３００に送信する。
【００１８】
図１は、端末装置３００と通信中継装置４００とが無線通信する例を示す。端末装置３００は、無線通信可能な携帯電話、タブレット端末、及びＰＣ等であってよい。通信中継装置４００は、無線基地局及びアクセスポイント等であってよい。端末装置３００と通信中継装置４００とは有線通信してもよい。端末装置３００は、有線通信可能なＰＣであってよい。通信中継装置４００は、スイッチ及びルーター等であってよい。端末装置３００と通信中継装置４００とはネットワーク２０を介して通信してもよい。
【００１９】
本実施形態において、動画配信装置１００は、符号化された動画データに含まれる第１階層の第１レイヤデータ及び第２階層の第２レイヤデータについて、第１レイヤデータと第２レイヤデータとが異なるＱｏＳを用いて送信されるように、第１レイヤデータ及び第２レイヤデータを配信する。例えば、動画配信装置１００は、第１レイヤデータ及び第２レイヤデータに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、第１レイヤデータのフレームと第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、複数のフレームのそれぞれに対応する複数のパケットを生成する。そして、通信中継装置４００が、動画配信装置１００から受信した複数のパケットに含まれるＱｏＳＩＤを参照することによって、第１レイヤデータのフレームと第２レイヤデータのフレームとを異なるＱｏＳを用いて端末装置３００に送信する。
【００２０】
例えば、動画配信装置１００は、第１レイヤデータのフレームにＱｏＳ保証して送信することを示すＱｏＳＩＤを対応付け、第２レイヤデータのフレームにＱｏＳ保証しないで送信することを示すＱｏＳＩＤを対応付ける。そして、通信中継装置４００が、動画配信装置１００から受信した複数のパケットに含まれるＱｏＳＩＤを参照することによって、第１レイヤデータのフレームをＱｏＳ保証して端末装置３００に送信し、第２レイヤデータのフレームをＱｏＳ保証せずに端末装置３００に送信する。
【００２１】
これにより、例えば、動画配信装置１００と端末装置３００との間の通信路の通信品質が高いときには、第１レイヤデータと第２レイヤデータとを用いた高品質な動画データを端末装置３００に再生させることができ、通信路の通信品質が低い場合であっても、第１レイヤデータ及び第２レイヤデータのうち第１レイヤデータのみを用いた動画データを端末装置３００に再生させることができる。
【００２２】
一例として、動画配信装置１００は、スケーラブル符号化された動画データに含まれる基本レイヤデータ及び少なくとも１つの拡張レイヤデータについて、基本レイヤデータが少なくとも１つの拡張レイヤデータよりも高くＱｏＳ保証されるように、基本レイヤデータ及び拡張レイヤデータを配信する。
【００２３】
基本レイヤデータとは、例えば、動画が再生中に途切れたり停止したりしない等の必要最低限の条件を少なくとも満たすためのデータである。基本レイヤデータは、第１レイヤデータの一例であってよい。
【００２４】
拡張レイヤデータとは、基本レイヤデータに加えることによって動画の品質を向上できるデータである。例えば、基本レイヤデータが低解像度の動画データであり、拡張レイヤデータが解像度を向上させるデータである。また、例えば、基本レイヤデータが低フレームレートの動画データであり、拡張レイヤデータがフレームレートを向上させるデータである。また、例えば、基本レイヤデータが低画質の動画データであり、拡張レイヤデータが画質を向上させるデータである。拡張レイヤデータは、第２レイヤデータの一例であってよい。
【００２５】
例えば、動画配信装置１００は、基本レイヤデータに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、基本レイヤを識別するレイヤＩＤと、ＱｏＳ保証して送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、複数のフレームのそれぞれに対応する複数の基本レイヤパケットを生成する。また、動画配信装置１００は、少なくとも１つの拡張レイヤデータに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、拡張レイヤを識別するレイヤＩＤと、ＱｏＳ保証せずに送信することを示すＱｏＳＩＤを対応付けてパケット化することにより、複数のフレームのそれぞれに対応する複数の拡張レイヤパケットを生成する。
【００２６】
そして、通信中継装置４００が、動画配信装置１００から受信した基本レイヤパケット及び拡張レイヤパケットに含まれるＱｏＳＩＤを参照することによって、基本レイヤパケットはＱｏＳ保証して端末装置３００に送信し、拡張レイヤパケットはＱｏＳ保証せずに端末装置３００に送信する。これにより、動画配信装置１００と端末装置３００との間の通信路の通信品質が高いときには、高品質な動画データを端末装置３００に再生させることができ、通信路の通信品質が低い場合であっても、必要最低限の条件を満たす動画データを端末装置３００に再生させることができる。
【００２７】
図２は、動画配信装置１００によって、基本レイヤデータ５１０の複数の基本レイヤフレーム５１２及び拡張空間レイヤデータ５２０の複数の拡張空間レイヤフレーム５２２のそれぞれに対応付けられたＱｏＳＩＤ１３０、シーケンスＩＤ１４０、及びレイヤＩＤ１５０の一例を概略的に示す。基本レイヤデータ５１０及び拡張空間レイヤデータ５２０は、動画データが空間スケーラブル符号化されることによって生成されたデータである。基本レイヤデータ５１０のみを復号化した動画データよりも、基本レイヤデータ５１０及び拡張空間レイヤデータ５２０を復号化した動画データの方が、解像度が高い動画データとなる。
【００２８】
図２に示す例では、９つの基本レイヤフレーム５１２のそれぞれに、基本レイヤフレーム５１２を拡張空間レイヤフレーム５２２よりも高いＱｏＳを用いて送信することを示すＱｏＳＩＤ「１」が対応付けられている。また、９つの拡張空間レイヤフレーム５２２のそれぞれに、拡張空間レイヤフレーム５２２を基本レイヤフレーム５１２よりも低いＱｏＳを用いて送信することを示すＱｏＳＩＤ「２」が対応付けられている。基本レイヤフレーム５１２を拡張空間レイヤフレーム５２２よりも高いＱｏＳを用いて送信するとは、例えば、基本レイヤフレーム５１２をＱｏＳ保証して送信し、拡張空間レイヤフレーム５２２をＱｏＳ保証せずに送信することであってよい。
【００２９】
また、９つの基本レイヤフレーム５１２及び９つの拡張空間レイヤフレーム５２２のそれぞれに、フレームのシーケンスを識別するシーケンスＩＤ「１」から「９」が対応付けられている。また、９つの基本レイヤフレーム５１２のそれぞれに基本レイヤを識別するレイヤＩＤ「１」が対応付けられ、９つの拡張空間レイヤフレーム５２２のそれぞれに拡張空間レイヤを識別するレイヤＩＤ「２」が対応付けられている。
【００３０】
動画配信装置１００は、複数の基本レイヤフレーム５１２及び複数の拡張空間レイヤフレーム５２２に、図２に示すＱｏＳＩＤ１３０、シーケンスＩＤ１４０、及びレイヤＩＤ１５０を対応付けてパケット化することにより、複数の基本レイヤパケット及び複数の拡張空間レイヤパケットを生成してよい。これにより、ＱｏＳ制御機能を有する通信中継装置４００に対して、基本レイヤパケットを拡張空間レイヤパケットよりも高くＱｏＳ制御して、基本レイヤパケット及び拡張空間レイヤパケットを端末装置３００に送信させることができる。
【００３１】
なお、図２では、一の拡張空間レイヤデータ５２０にＱｏＳＩＤ１３０、シーケンスＩＤ１４０、及びレイヤＩＤ１５０が対応付けられた例を示しているが、複数の拡張空間レイヤデータ５２０にＱｏＳＩＤ１３０、シーケンスＩＤ１４０、及びレイヤＩＤ１５０が対応付けられてもよい。この場合、複数の拡張空間レイヤデータ５２０に対して異なるレイヤＩＤを対応付けることにより、複数の拡張空間レイヤデータ５２０を識別可能にできる。例えば、２つの拡張空間レイヤデータ５２０がある場合、動画配信装置１００は、一方の拡張空間レイヤデータ５２０のフレームにレイヤＩＤ「２」を対応付け、他方の拡張空間レイヤデータ５２０のフレームにレイヤＩＤ「３」を対応付けてよい。
【００３２】
動画配信装置１００は、基本レイヤデータ５１０及び複数の拡張空間レイヤデータ５２０に対して、対応付けるＱｏＳＩＤを動的に変更してもよい。例えば、動画配信装置１００は、一のシーケンスについて、基本レイヤデータ５１０のフレームにＱｏＳＩＤ「１」、一の拡張空間レイヤデータ５２０にＱｏＳＩＤ「２」、他の拡張空間レイヤデータ５２０にＱｏＳＩＤ「３」を対応付け、他のシーケンスについて、基本レイヤデータ５１０のフレームにＱｏＳＩＤ「１」、一の拡張空間レイヤデータ５２０にＱｏＳＩＤ「２」、他の拡張空間レイヤデータ５２０にＱｏＳＩＤ「２」を対応付ける。例えば、動画配信装置１００が、通信回線の品質の変化に応じて、対応付けるＱｏＳＩＤを動的に変更することによって、通信回線の品質に適した動画データの配信を実現できる。
【００３３】
図３は、動画配信装置１００によって、基本レイヤデータ６１０の複数の基本レイヤフレーム６１２及び拡張時間レイヤデータ６２０の複数の拡張時間レイヤフレーム６２２のそれぞれに対応付けられたＱｏＳＩＤ１３０、シーケンスＩＤ１４０、及びレイヤＩＤ１５０の一例を概略的に示す。基本レイヤデータ６１０及び拡張時間レイヤデータ６２０は、動画データが時間スケーラブル符号化されることによって生成されたデータである。
【００３４】
基本レイヤデータ６１０のみを復号化した動画データよりも、基本レイヤデータ６１０及び拡張時間レイヤデータ６２０を復号化した動画データの方が、フレームレートが高い動画データとなる。ここで、基本レイヤフレーム６１２は、他のフレームを用いることなく復号化可能なキーフレームであって、例えばＩフレームである。また、拡張時間レイヤフレーム６２２は、他のフレームを用いることによって予測復号化される予測復号フレームであって、例えばＰフレーム又はＢフレームである。
【００３５】
図３では、３つの基本レイヤフレーム６１２のそれぞれに、基本レイヤフレーム６１２を拡張時間レイヤフレーム６２２よりも高いＱｏＳを用いて送信することを示すＱｏＳＩＤ「１」が対応付けられている。また、６つの拡張時間レイヤフレーム６２２のそれぞれに、拡張時間レイヤフレーム６２２を基本レイヤフレーム６１２よりも低いＱｏＳを用いて送信することを示すＱｏＳＩＤ「２」が対応付けられている。
【００３６】
また、３つの基本レイヤフレーム６１２及び６つの拡張時間レイヤフレーム６２２のそれぞれに、フレームのシーケンスを識別するシーケンスＩＤ「１」から「９」が対応付けられている。また、３つの基本レイヤフレーム６１２のそれぞれに基本レイヤを識別するレイヤＩＤ「１」が対応付けられており、６つの拡張時間レイヤフレーム６２２のそれぞれに拡張時間レイヤを識別するレイヤＩＤ「２」が対応付けられている。
【００３７】
一の基本レイヤフレーム６１２と、当該一の基本レイヤフレーム６１２との直接的又は間接的な差分を符号化した拡張時間レイヤフレーム６２２とからなるグループを映像グループと呼ぶ場合がある。図３に示す例では、シーケンスＩＤ「１」の基本レイヤフレーム６１２及びシーケンスＩＤ「２」から「４」の拡張時間レイヤフレーム６２２が第１映像グループであり、シーケンスＩＤ「５」の基本レイヤフレーム６１２及びシーケンスＩＤ「６」から「８」の拡張時間レイヤフレーム６２２が第２映像グループである。
【００３８】
動画配信装置１００は、複数の基本レイヤフレーム６１２及び複数の拡張時間レイヤフレーム６２２に、図３に示すＱｏＳＩＤ１３０、シーケンスＩＤ１４０、及びレイヤＩＤ１５０を対応付けてパケット化することにより、複数の基本レイヤパケット及び複数の拡張時間レイヤパケットを生成してよい。これにより、ＱｏＳ制御機能を有する通信中継装置４００に、基本レイヤパケットを拡張時間レイヤパケットよりも高くＱｏＳ制御して基本レイヤパケット及び拡張時間レイヤパケットを端末装置３００に送信させることができる。
【００３９】
なお、図３では、一の拡張時間レイヤデータ６２０にＱｏＳＩＤ１３０、シーケンスＩＤ１４０、及びレイヤＩＤ１５０が対応付けられた例を示しているが、複数の拡張時間レイヤデータ６２０にＱｏＳＩＤ１３０、シーケンスＩＤ１４０、及びレイヤＩＤ１５０が対応付けられてもよい。この場合、複数の拡張時間レイヤデータ６２０に対して、異なるレイヤＩＤを対応付けることにより、複数の拡張時間レイヤデータ６２０を識別可能にできる。例えば、２つの拡張時間レイヤデータ６２０がある場合、動画配信装置１００は、一方の拡張時間レイヤデータ６２０のフレームにレイヤＩＤ「２」を対応付け、他方の拡張時間レイヤデータ６２０のフレームにレイヤＩＤ「３」を対応付けてよい。例えば、動画配信装置１００は、ＰフレームにレイヤＩＤ「２」を対応付け、Ｂフレームに、レイヤＩＤ「２」よりも階層が低いレイヤＩＤ「３」を対応付けてよい。
【００４０】
図４は、動画配信装置１００によって、基本レイヤデータ７１０の複数の基本レイヤフレーム７１２、拡張時間レイヤデータ７２０の複数の拡張時間レイヤフレーム７２２、及び拡張空間レイヤデータ７３０の複数の拡張空間レイヤフレーム７３２のそれぞれに対応付けられたＱｏＳＩＤ１３０、シーケンスＩＤ１４０、空間レイヤＩＤ１５２、及び時間レイヤＩＤ１５４の一例を概略的に示す。基本レイヤデータ７１０、拡張時間レイヤデータ７２０、及び拡張空間レイヤデータ７３０は、動画データが時間スケーラブル符号化及び空間スケーラブル符号化されることによって生成されたデータである。
【００４１】
基本レイヤデータ７１０のみを復号化した動画データよりも、基本レイヤデータ７１０、拡張時間レイヤデータ７２０及び拡張空間レイヤデータ７３０を復号化した動画データの方が、解像度及びフレームレートが高い動画データとなる。基本レイヤフレーム７１２は、例えばＩフレームであり、拡張時間レイヤフレーム７２２は、例えばＰフレーム又はＢフレームである。
【００４２】
図４では、３つの基本レイヤフレーム７１２のそれぞれに、基本レイヤフレーム７１２を拡張時間レイヤフレーム７２２及び拡張空間レイヤフレーム７３２よりも高いＱｏＳを用いて送信することを示すＱｏＳＩＤ「１」が対応付けられている。また、６つの拡張時間レイヤフレーム７２２のそれぞれに、拡張時間レイヤフレーム７２２を、基本レイヤフレーム７１２よりも低くかつ拡張空間レイヤフレーム７３２よりも高いＱｏＳを用いて送信することを示すＱｏＳＩＤ「２」が対応付けられている。また、９つの拡張空間レイヤフレーム７３２のそれぞれに、基本レイヤフレーム７１２及び拡張時間レイヤフレーム７２２よりも低いＱｏＳを用いて送信することを示すＱｏＳＩＤ「３」が対応付けられている。
【００４３】
また、３つの基本レイヤフレーム７１２及び６つの拡張時間レイヤフレーム７２２及び９つの拡張空間レイヤフレーム７３２のそれぞれに、フレームのシーケンスを識別するシーケンスＩＤ「１」から「９」が対応付けられている。
【００４４】
また、３つの基本レイヤフレーム７１２のそれぞれに空間レイヤＩＤ「１」及び時間レイヤＩＤ「１」が対応付けられている。また、６つの拡張時間レイヤフレーム７２２のそれぞれに空間レイヤＩＤ「１」及び時間レイヤＩＤ「２」が対応付けられている。また、９つの拡張空間レイヤフレーム７３２のそれぞれに空間レイヤＩＤ「２」が対応付けられている。
【００４５】
また、９つの拡張空間レイヤフレーム７３２のうち、基本レイヤフレーム７１２のシーケンスＩＤと同一のシーケンスＩＤを含む拡張空間レイヤフレーム７３２に、時間レイヤＩＤ「１」が対応付けられている。また、９つの拡張空間レイヤフレーム７３２のうち、拡張時間レイヤフレーム７２２のシーケンスＩＤと同一のシーケンスＩＤを含む拡張空間レイヤフレーム７３２に時間レイヤＩＤ「２」が対応付けられている。
【００４６】
一の基本レイヤフレーム７１２と、当該一の基本レイヤフレーム７１２との直接的又は間接的な差分を符号化した拡張時間レイヤフレーム７２２と、これらと同一のシーケンスＩＤを含む拡張空間レイヤフレーム７３２とからなるグループを映像グループと呼ぶ場合がある。図４に示す例では、シーケンスＩＤ「１」の基本レイヤフレーム７１２、シーケンスＩＤ「２」から「４」の拡張時間レイヤフレーム７２２、及びシーケンスＩＤ「１」から「４」の拡張空間レイヤフレーム７３２が第１映像グループであり、シーケンスＩＤ「５」の基本レイヤフレーム７１２、シーケンスＩＤ「６」から「８」の拡張時間レイヤフレーム７２２、及びシーケンスＩＤ［５］から「８」の拡張空間レイヤフレーム７３２が第２映像グループである。
【００４７】
動画配信装置１００は、複数の基本レイヤフレーム７１２、複数の拡張時間レイヤフレーム７２２、及び複数の拡張空間レイヤフレーム７３２に、図４に示すＱｏＳＩＤ１３０、シーケンスＩＤ１４０、及びレイヤＩＤ１５０を対応付けてパケット化することにより、複数の基本レイヤパケット、複数の拡張時間レイヤパケット及び複数の拡張空間レイヤパケットを生成してよい。これにより、ＱｏＳ制御機能を有する通信中継装置４００に対して、基本レイヤパケットを拡張時間レイヤパケットよりも高くＱｏＳ制御し、拡張時間レイヤパケットを拡張空間レイヤパケットよりも高くＱｏＳ制御して、基本レイヤパケット、拡張時間レイヤパケット及び拡張空間レイヤパケットを端末装置３００に送信させることができる。
【００４８】
図５は、動画配信装置１００の機能構成の一例を概略的に示す。動画配信装置１００は、ストリーミング受付部１０２、指示受付部１０４、動画データ生成部１０６、動画データ格納部１０８、符号化部１１０、レイヤデータ取得部１１２、レイヤデータ受信部１１４、パケット生成部１１６、パケット送信部１２０、通信品質取得部１２２、及び符号化関連情報送信部１２４を備える。動画配信装置１００がこれらのすべての構成を備えることは必須とは限らない。
【００４９】
ストリーミング受付部１０２は、動画のストリーミングを受け付ける。ストリーミング受付部１０２は、例えば、動画サーバ２００が配信する動画のストリーミングを受け付ける。ストリーミング受付部１０２は、動画配信装置１００の管理者の指示に従って、動画サーバ２００が配信する動画のストリーミングを受け付けてよい。動画配信装置１００の管理者とは、動画配信装置１００が提供する動画配信サービスを管理する人物であってよい。また、ストリーミング受付部１０２は、指示受付部１０４が端末装置３００から受け付けた指示に従って、動画サーバ２００が配信する動画のストリーミングを受け付けてもよい。
【００５０】
指示受付部１０４は、端末装置３００から各種指示を受け付ける。例えば、指示受付部１０４は、自らが格納する動画データを端末装置３００に送信する指示を、端末装置３００から受け付ける。また、指示受付部１０４は、動画サーバ２００が配信する動画のストリーミングを受け付けて動画データを生成し、当該動画データを端末装置３００に送信する指示を、端末装置３００から受け付けてもよい。
【００５１】
動画データ生成部１０６は、ストリーミング受付部１０２が受け付けた動画のストリーミングに基づいて動画データを生成する。例えば、動画データ生成部１０６は、一の動画データのストリーミングを受け付けて蓄積し、動画データを構成する。
【００５２】
動画データ格納部１０８は、複数の動画データを格納する。動画データ格納部１０８は、例えば、動画配信装置１００の管理者によって保存された動画データを格納する。また、動画データ格納部１０８は、動画データ生成部１０６によって生成された動画データを格納してもよい。動画データ格納部１０８は、他の装置から受信した動画データを格納してもよい。
【００５３】
符号化部１１０は、動画データ格納部１０８に格納された動画データを複数の階層を含むように符号化する。符号化部１１０は、動画データを符号化することにより、第１階層の第１レイヤデータ及び第２階層の第２レイヤデータを生成してよい。なお、符号化部１１０は、さらに多くの階層のレイヤデータを生成してもよい。
【００５４】
符号化部１１０は、例えば、動画データをスケーラブル符号化して、基本レイヤデータ及び少なくとも１つの拡張レイヤデータを生成する。符号化部１１０は、動画データを空間スケーラブル符号化して、基本レイヤデータ及び少なくとも１つの拡張空間レイヤデータを生成してよい。また、符号化部１１０は、動画データを時間スケーラブル符号化して、基本レイヤデータ及び少なくとも１つの拡張時間レイヤデータを生成してよい。
【００５５】
レイヤデータ取得部１１２は、符号化された動画データに含まれる複数のレイヤデータを取得する。レイヤデータ取得部１１２は、符号化部１１０によって生成された第１レイヤデータ及び第２レイヤデータを取得してよい。
【００５６】
レイヤデータ取得部１１２は、例えば、符号化部１１０によって生成された基本レイヤデータ及び少なくとも１つの拡張レイヤデータを取得する。レイヤデータ取得部１１２は、例えば、スケーラブル符号化部１１０によって生成された基本レイヤデータ及び少なくとも１つの拡張レイヤデータを取得する。レイヤデータ取得部１１２は、レイヤデータ受信部１１４が受信した他の装置によって生成された基本レイヤデータ及び少なくとも１つの拡張レイヤデータを、レイヤデータ受信部１１４から取得してもよい。
【００５７】
レイヤデータ受信部１１４は、他の装置から、当該他の装置が動画データをスケーラブル符号化して生成した基本レイヤデータ及び少なくとも１つの拡張レイヤデータを受信してもよい。例えば、動画サーバ２００が、基本レイヤデータ及び少なくとも１つの拡張レイヤデータを配信するサービスを提供している場合、レイヤデータ受信部１１４は、動画サーバ２００から、基本レイヤデータ及び少なくとも１つの拡張レイヤデータを受信する。
【００５８】
パケット生成部１１６は、レイヤデータ取得部１１２が取得した複数のレイヤデータのそれぞれに含まれる複数のフレームをパケット化することにより、当該複数のフレームのそれぞれに対応する複数のパケットを生成する。パケット生成部１１６は、レイヤデータ取得部１１２が取得した第１レイヤデータ及び第２レイヤデータに含まれる複数のフレームのそれぞれを、フレームのシーケンスを識別するシーケンスＩＤと、階層を識別するレイヤＩＤと、第１レイヤデータのフレームと第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、複数のフレームのそれぞれに対応する複数のパケットを生成してよい。
【００５９】
パケット生成部１１６は、例えば、レイヤデータ取得部１１２が取得した基本レイヤデータに含まれる複数のフレームのそれぞれを、シーケンスＩＤと、基本レイヤを識別するレイヤＩＤと、基本レイヤデータのフレームを少なくとも１つの拡張レイヤデータのフレームよりも高いＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、基本レイヤデータの複数のフレームのそれぞれに対応する複数の基本レイヤパケットを生成してよい。
【００６０】
また、パケット生成部１１６は、レイヤデータ取得部１１２が取得した少なくとも１つの拡張レイヤデータに含まれる複数のフレームを、シーケンスＩＤと、拡張レイヤを識別するレイヤＩＤと、少なくとも１つの拡張レイヤデータのフレームを基本レイヤデータのフレームよりも低いＱｏＳを用いて送信することを示すＱｏＳＩＤとを対応付けてパケット化することにより、少なくとも１つの拡張レイヤデータの複数のフレームのそれぞれに対応する複数の拡張レイヤパケットを生成してよい。
【００６１】
ＱｏＳＩＤは、フレームをＱｏＳ保証して送信すること又はフレームをＱｏＳ保証せずに送信することを示してよい。パケット生成部１１６は、基本レイヤデータのフレームを少なくとも１つの拡張レイヤデータのフレームよりも高いＱｏＳを用いて送信することを示すＱｏＳＩＤとして、フレームをＱｏＳ保証して送信することを示すＱｏＳＩＤを用いてよい。また、パケット生成部１１６は、少なくとも１つの拡張レイヤデータのフレームを基本レイヤデータのフレームよりも低いＱｏＳを用いて送信することを示すＱｏＳＩＤとして、ＱｏＳ保証せずに送信することを示すＱｏＳＩＤを用いてよい。
【００６２】
パケット生成部１１６は、レイヤデータ取得部１１２が取得した複数のレイヤデータに含まれるフレームにシーケンスＩＤ、レイヤＩＤ、ＱｏＳＩＤ、及びＵＤＰヘッダを付加したＵＤＰパケットを生成してよい。例えば、パケット生成部１１６は、基本レイヤデータに含まれるフレームにシーケンスＩＤ、レイヤＩＤ、ＱｏＳＩＤ、及びＵＤＰヘッダを付加したＵＤＰパケットを、基本レイヤパケットとして生成する。また、パケット生成部１１６は、例えば、拡張レイヤデータに含まれるフレームにシーケンスＩＤ、レイヤＩＤ、ＱｏＳＩＤ、及びＵＤＰヘッダを付加したＵＤＰパケットを、拡張レイヤパケットとして生成する。このように、基本レイヤデータに含まれるフレーム及び拡張レイヤデータに含まれるフレームをＵＤＰパケット化することにより、フレーム毎にＵＤＰパケットを生成でき、基本レイヤフレームと拡張レイヤフレームとの対応を取りやすくさせることができる。
【００６３】
パケット生成部１１６は、レイヤデータ取得部１１２が複数の拡張レイヤデータを取得した場合に、複数の拡張レイヤデータ毎に異なるＱｏＳＩＤを対応付けてもよい。例えば、レイヤデータ取得部１１２が、第１拡張レイヤデータと、第１拡張レイヤデータよりも階層が高い第２拡張レイヤデータを取得した場合、パケット生成部１１６は、第１拡張レイヤデータに含まれる複数のフレームのそれぞれに、第２拡張レイヤデータのフレームよりも高くかつ基本レイヤデータのフレームよりも低くＱｏＳ保証して送信することを示すＱｏＳＩＤを対応付けてパケット化することにより、複数のフレームのそれぞれに対応する複数の第１拡張レイヤパケットを生成する。
【００６４】
また、パケット生成部１１６は、第２拡張レイヤデータに含まれる複数のフレームのそれぞれに、基本レイヤデータのフレーム及び第１拡張レイヤデータのフレームよりも低いＱｏＳを用いて送信することを示すＱｏＳＩＤを対応付けてパケット化することにより、複数のフレームのそれぞれに対応する複数の第２拡張レイヤパケットを生成する。これにより、拡張レイヤデータの階層に応じたＱｏＳＩＤを、拡張レイヤデータのフレームに対応付けることができる。
【００６５】
パケット送信部１２０は、パケット生成部１１６が生成した複数のパケットを端末装置３００に送信する。パケット送信部１２０は、パケット生成部１１６が生成した複数のパケットを、通信中継装置４００を介して端末装置３００に送信してよい。例えば、パケット送信部１２０は、パケット生成部１１６が生成した複数の基本レイヤパケット及び複数の拡張レイヤパケットを、通信中継装置４００を介して端末装置３００に送信する。
【００６６】
通信中継装置４００は、パケット送信部１２０が送信したパケットに含まれるＱｏＳＩＤを参照して、当該パケットの送信を制御する。例えば、通信中継装置４００は、ＱｏＳＩＤがＱｏＳ保証して送信することを示す場合、ＱｏＳ制御して当該パケットを送信し、ＱｏＳＩＤがＱｏＳ保証して送信しないことを示す場合、ＱｏＳ制御せずに当該パケットを送信する。通信中継装置４００がＬＴＥ基地局である場合、通信中継装置４００は、ＱｏＳ保証して送信することを示すＱｏＳＩＤを含むパケットをＧＢＲ（Ｇｕａｒａｎｔｅｅｄ  Ｂｉｔ  Ｒａｔｅ）で送信してよい。また、通信中継装置４００は、ＱｏＳ保証せずに送信することを示すＱｏＳＩＤを含むパケットをＮｏｎ−ＧＢＲで送信してよい。
【００６７】
通信中継装置４００は、パケット送信部１２０から、複数の基本レイヤパケット、複数の第１拡張レイヤパケット、及び複数の第２拡張レイヤパケットを受信した場合、異なるレベルでＱｏＳ制御してよい。例えば、基本レイヤパケットを、第１拡張レイヤパケット及び第２拡張レイヤパケットよりも高いＱｏＳを用いて送信し、第１拡張レイヤパケットを第２拡張レイヤパケットよりも高いＱｏＳを用いて送信してよい。通信中継装置４００がＬＴＥ基地局である場合、通信中継装置４００は、基本レイヤパケットを第１拡張レイヤパケットよりも優先度の高いＧＢＲで送信し、第１拡張レイヤパケットを基本レイヤパケットよりも優先度の低いＧＢＲで送信し、第２拡張レイヤパケットをＮｏｎ−ＧＢＲで送信してよい。
【００６８】
通信品質取得部１２２は、動画配信装置１００と端末装置３００との間の通信路の通信品質を取得する。通信品質取得部１２２は、例えば、動画配信装置１００と端末装置３００との間の通信路の通信品質を、端末装置３００から受信する。端末装置３００は、動画配信装置１００との間の通信中に、通信路の通信品質を測定してよい。また、端末装置３００は、動画配信装置１００に対して品質測定パケットを送信することにより、動画配信装置１００と端末装置３００との間の通信路の通信品質を測定してよい。
【００６９】
また、通信品質取得部１２２が、端末装置３００に対して品質測定パケットを送信することにより、動画配信装置１００と端末装置３００との間の通信路の通信品質を測定してもよい。また、通信品質取得部１２２は、端末装置３００と通信中継装置４００との間の通信路の通信品質を取得してもよい。例えば、通信品質取得部１２２は、端末装置３００又は通信中継装置４００によって測定された、端末装置３００と通信中継装置４００との間の通信路の通信品質を端末装置３００又は通信中継装置４００から取得してもよい。
【００７０】
通信品質取得部１２２は、取得した通信品質をパケット生成部１１６及びパケット送信部１２０に送信してよい。パケット生成部１１６は、レイヤデータ取得部１１２が、複数階層のレイヤデータを取得した場合に、通信品質取得部１２２から受信した通信品質に基づいて、パケット化する階層とパケット化しない階層とを制御してよい。
【００７１】
パケット生成部１１６は、例えば、レイヤデータ取得部１１２が第１レイヤデータ及び第２レイヤデータを取得した場合であって、通信品質が予め定められた閾値より高い場合、第１レイヤデータ及び第２レイヤデータのそれぞれに含まれる複数のフレームをパケット化することにより複数のパケットを生成し、通信品質が予め定められた閾値より高くない場合、第１レイヤデータに含まれる複数のフレームをパケット化することにより複数のパケットを生成する。すなわち、パケット生成部１１６は、通信品質が予め定められた閾値より高くない場合、第２レイヤデータに含まれる複数のフレームをパケット化しなくてもよい。これにより、通信品質の変化に応じて、適切にパケット化するフレームの数を制御することができる。なお、パケット生成部１１６は、レイヤデータ取得部１１２が３階層以上のレイヤデータを取得した場合であって、通信品質が予め定められた閾値より高くない場合、少なくとも最も階層の高いレイヤデータに含まれる複数のフレームをパケット化しなくてよい。
【００７２】
パケット生成部１１６は、例えば、レイヤデータ取得部１１２が複数階層の拡張レイヤデータを取得した場合に、通信品質取得部１２２から受信した通信品質に基づいて、パケット化する階層とパケット化しない階層とを制御する。例えば、レイヤデータ取得部１１２が第１拡張レイヤデータ及び第２拡張レイヤデータを取得した場合であって、通信品質が予め定められた閾値より高い場合、パケット生成部１１６は、第１拡張レイヤデータ及び第２拡張レイヤデータに含まれる複数のフレームのそれぞれをパケット化して、複数の第１拡張レイヤパケット及び複数の第２拡張レイヤパケットを生成する。そして、パケット送信部１２０が、複数の基本レイヤパケット、複数の第１拡張レイヤパケット、及び複数の第２拡張レイヤパケットを、端末装置３００に送信する。
【００７３】
また、レイヤデータ取得部１１２が第１拡張レイヤデータ及び第２拡張レイヤデータを取得した場合であって、通信品質が予め定められた閾値より高くない場合、パケット生成部１１６は、第１拡張レイヤデータに含まれる複数のフレームのそれぞれをパケット化して、複数の第１拡張レイヤパケットを生成する。そして、パケット送信部１２０が、複数の基本レイヤパケット及び複数の第１拡張レイヤパケットを、端末装置３００に送信する。このように、通信路の通信品質が予め定められた閾値より高くない場合に、優先度のより低い拡張レイヤパケットを送信しないように制御することによって、優先度のより高い拡張レイヤパケットが、通信中にロスしてしまう可能性を低減させることができる。
【００７４】
また、パケット生成部１１６は、レイヤデータ取得部１１２が複数階層のレイヤデータを取得した場合、通信品質取得部１２２から取得した通信品質に基づいて、複数階層のレイヤデータのそれぞれに対して用いるＱｏＳのレベルを制御してもよい。例えば、レイヤデータ取得部１１２が第１レイヤデータ及び第２レイヤデータを取得した場合、パケット生成部１１６は、通信品質取得部１２２が取得した通信品質に基づいて、第１レイヤデータ及び第２レイヤデータに含まれる複数のフレームのそれぞれに対応付けるＱｏＳＩＤを制御する。パケット生成部１１６は、通信品質が予め定められた閾値よりも高い場合、複数のフレームのそれぞれに、第１レイヤデータのフレームと第２レイヤデータのフレームとを異なるＱｏＳを用いて送信することを示すＱｏＳＩＤを対応付けてよく、通信品質が予め定められた閾値よりも高くない場合、第２レイヤデータのフレームに対して、通信品質が予め定められた閾値よりも高い場合に比べて低いＱｏＳを用いて送信することを示すＱｏＳＩＤを対応付けてよい。これにより、通信品質に応じて、複数のレイヤデータのそれぞれに対して用いるＱｏＳのレベルを適切に制御することができる。
【００７５】
なお、パケット生成部１１６は、レイヤデータ取得部１１２が３階層以上のレイヤデータを取得した場合であって、通信品質が予め定められた閾値より高くない場合、少なくとも最も階層の高いレイヤデータに含まれるフレームに対して、通信品質が予め定められた閾値よりも高い場合に比べて低いＱｏＳを用いて送信することを示すＱｏＳＩＤを対応付けてよい。パケット生成部１１６は、通信品質取得部１２２が取得した通信品質に基づいて、パケット化する階層とパケット化しない階層との制御及び複数階層のレイヤデータのそれぞれに対して用いるＱｏＳのレベルの制御を実行してもよい。
【００７６】
符号化関連情報送信部１２４は、符号化に関連する情報を端末装置３００に送信する。例えば、符号化関連情報送信部１２４は、スケーラブル符号化された動画データを端末装置３００に送信する場合に、シーケンスＩＤの最大値を示す最大シーケンスＩＤを送信する。
【００７７】
また、符号化関連情報送信部１２４は、レイヤデータ取得部１１２が複数階層の拡張空間レイヤデータを取得した場合に、複数階層の拡張空間レイヤデータの最大階層数を、端末装置３００に送信してよい。例えば、レイヤデータ取得部１１２が、第１拡張空間レイヤデータ及び第２拡張空間レイヤデータを取得した場合、符号化関連情報送信部１２４は、最大階層数である２を端末装置３００に送信する。符号化関連情報送信部１２４は、最大階層数送信部の一例であってよい。
【００７８】
また、符号化関連情報送信部１２４は、レイヤデータ取得部１１２が、複数の映像グループのそれぞれにＩフレームとして所属する複数のフレームを有する基本レイヤデータと、複数の映像グループのそれぞれにＰフレーム又はＢフレームとして所属する複数のフレームを有する拡張時間レイヤデータとを取得した場合に、複数の映像グループのそれぞれの映像グループに所属するフレームの数を示す映像フレーム数を端末装置３００に送信してよい。符号化関連情報送信部１２４は、映像フレーム数送信部の一例であってよい。
【００７９】
図６は、端末装置３００の機能構成の一例を概略的に示す。端末装置３００は、指示送信部３０２、パケット受信部３０４、バッファ３０６、符号化関連情報受信部３０８、フレーム判定部３１０、経過時間計測部３１２、復号化部３１４、及び動画再生部３１６を備える。端末装置３００がこれらのすべての構成を備えることは必須とは限らない。
【００８０】
指示送信部３０２は、動画配信装置１００に指示を送信する。例えば、指示送信部３０２は、動画配信装置１００に格納された動画データを端末装置３００に送信する指示を、動画配信装置１００に送信する。また、例えば、指示送信部３０２は、動画サーバ２００が配信する動画データを受信して、当該動画データを端末装置３００に送信する指示を、動画配信装置１００に送信する。
【００８１】
パケット受信部３０４は、動画配信装置１００からパケットを受信する。パケット受信部３０４は、パケット送信部１２０が送信した複数のパケットを受信してよい。例えば、パケット受信部３０４は、パケット送信部１２０が送信した複数の基本レイヤパケット及び複数の拡張レイヤパケットを受信する。
【００８２】
バッファ３０６は、パケット受信部３０４が受信したパケットを格納する。バッファ３０６は、パケット受信部３０４が受信した複数のパケットを格納してよい。例えば、バッファ３０６は、パケット受信部３０４が受信した複数の基本レイヤパケット及び複数の拡張レイヤパケットを格納する。
【００８３】
符号化関連情報受信部３０８は、符号化関連情報送信部１２４から符号化関連情報を受信する。符号化関連情報受信部３０８は、例えば、符号化関連情報送信部１２４が送信した最大シーケンスＩＤを受信する。
【００８４】
また、符号化関連情報受信部３０８は、符号化関連情報送信部１２４が送信した最大階層数を受信してよい。符号化関連情報受信部３０８は、最大階層数受信部の一例であってよい。また、符号化関連情報受信部３０８は、符号化関連情報送信部１２４が送信した映像フレーム数を受信してよい。符号化関連情報受信部３０８は、映像フレーム数受信部の一例であってよい。
【００８５】
フレーム判定部３１０は、パケット受信部３０４が受信した複数のパケットのそれぞれに含まれるフレームについて、対応するフレームが受信されたか否かを判定する。一のフレームに対応するフレームとは、一のフレームを復号化するときに用いられるフレームであってよい。例えば、一のフレームが基本レイヤフレームである場合、一のフレームに対応するフレームは拡張レイヤフレームである。
【００８６】
例えば、フレーム判定部３１０は、パケット受信部３０４が受信した複数の基本レイヤパケットのそれぞれについて、基本レイヤパケットに含まれるシーケンスＩＤ及びレイヤＩＤに基づいて、対応する拡張レイヤパケットが受信されたか否かを判定する。基本レイヤパケットに対応する拡張レイヤパケットとは、例えば、基本レイヤパケットと同一のシーケンスＩＤを含む拡張空間レイヤパケットである。また、基本レイヤパケットに対応する拡張レイヤパケットとは、例えば、基本レイヤパケットと同一の映像グループに所属する拡張レイヤパケットである。
【００８７】
経過時間計測部３１２は、フレーム判定部３１０の指示に従って、経過時間を計測する。経過時間計測部３１２は、複数の経過時間を計測可能であってよい。経過時間計測部３１２は、複数のシーケンスＩＤのそれぞれに対応付けた経過時間をそれぞれが計測する複数のタイマーを備えてよい。
【００８８】
復号化部３１４は、パケット受信部３０４が受信した複数のパケットに基づいて、動画データを復号化する。復号化部３１４は、パケット受信部３０４が受信した複数のパケットのそれぞれに含まれる複数のフレームのうち、対応するフレームが受信されたフレームについては当該フレーム及び対応するフレームを用い、対応するフレームが受信されなかったフレームについては当該フレームを用いて、動画データを復号化してよい。
【００８９】
例えば、復号化部３１４は、複数の基本レイヤパケット及び複数の拡張レイヤパケットに基づいて、動画データを復号化する。復号化部３１４は、フレーム判定部３１０によって、対応する拡張レイヤパケットが受信されたと判定された基本レイヤパケットについては基本レイヤパケット及び拡張レイヤパケットを用い、対応する拡張レイヤパケットが受信されなかった基本レイヤパケットについては基本レイヤパケットを用いて、動画データを復号化する。
【００９０】
動画再生部３１６は、復号化部３１４によって復号化された動画データを再生する。例えば、動画再生部３１６は、復号化部３１４によって復号化された動画データを、端末装置３００が備えるディスプレイに表示する。動画再生部３１６は、他の装置が備えるディスプレイに動画データを表示してもよい。
【００９１】
図７は、端末装置３００による復号化処理のフローチャートの一例を概略的に示す。図７に示す復号化処理は、端末装置３００が備える制御部が主体となって実行されてよい。ここでは、空間スケーラブル符号化された動画データを復号化する処理の流れを説明する。図７に示すフローチャートは、例えば、指示送信部３０２が動画データの送信指示を動画配信装置１００に送信した場合に開始する。
【００９２】
ステップ７０２（ステップをＳと省略して表記する場合がある。）では、符号化関連情報受信部３０８が、符号化関連情報送信部１２４から最大シーケンスＩＤ及び最大階層数を受信する。Ｓ７０４で、パケット受信部３０４が動画配信装置１００からパケットを受信した場合、Ｓ７０６に進み、パケットを受信していない場合、Ｓ７１８に進む。
【００９３】
Ｓ７０６では、フレーム判定部３１０が、バッファ３０６内のパケットを確認する。フレーム判定部３１０は、Ｓ７０４で受信したパケットに含まれるシーケンスＩＤと同一のシーケンスＩＤを含むパケットがバッファ３０６内にあるか否かを確認する。
【００９４】
Ｓ７０８では、フレーム判定部３１０が、Ｓ７０４で受信したパケットに含まれるシーケンスＩＤについて、Ｓ７０２で受信した最大階層数のパケットがすべて受信されているか否かを判定する。例えば、Ｓ７０２で受信した最大階層数が４の場合、Ｓ７０４で受信したパケットを含めて、同一シーケンスＩＤのパケットが４つ受信されているか否かを判定する。フレーム判定部３１０によって、最大階層数のパケットがすべて受信されていると判定されなかった場合、Ｓ７１０に進み、受信されていると判定された場合、Ｓ７１６に進む。
【００９５】
Ｓ７１０では、バッファ３０６が、Ｓ７０４で受信したパケットを格納する。Ｓ７１２では、Ｓ７０４で受信したパケットに含まれるシーケンスＩＤに対応するタイマーがスタート済みであるか否かを判定する。Ｓ７１２で、スタート済みでないと判定された場合、当該シーケンスＩＤに対応するタイマーをスタートさせる（Ｓ７１４）。Ｓ７１２で、タイマーがスタート済みであると判定された後及びＳ７１４でタイマーをスタートさせた後、Ｓ７０４に戻る。
【００９６】
Ｓ７１６では、復号化部３１４が、最大階層数の全てのパケットにそれぞれ含まれるフレームを用いた高画質な動画データを復号化する。そして、動画再生部３１６が、復号化部３１４によって復号化された動画データを再生する。
【００９７】
Ｓ７０４で、パケット受信部３０４が動画配信装置１００からパケットを受信していない場合、Ｓ７１８に進む。Ｓ７１８では、Ｓ７１４でスタートしたタイマーにより計測される時間が、予め定められた時間を経過したか否かを判定する。予め定められた時間が経過していないと判定された場合、Ｓ７０４に戻り、経過していると判定された場合、Ｓ７２０に進む。予め定められた時間は、動画データの再生が途中で止まってしまう等の支障を来さないように定められた時間であってよい。
【００９８】
Ｓ７２０では、フレーム判定部３１０が、バッファ３０６内のパケットを確認する。フレーム判定部３１０は、バッファ３０６に格納された、Ｓ７１８でタイムアウトしたタイマーに対応するシーケンスＩＤと同一のシーケンスＩＤを含むパケットを確認する。Ｓ７２２では、フレーム判定部３１０が、Ｓ７２０で確認した、同一シーケンスＩＤを含むパケットに含まれるレイヤＩＤのうち、再生可能な一番高いレイヤＩＤを確認する。
【００９９】
例えば、Ｓ７１８でタイムアウトしたタイマーに対応するシーケンスＩＤと同一のシーケンスＩＤを含むパケットが２つあり、そのレイヤＩＤが「１」と「２」だった場合、フレーム判定部３１０は、再生可能な一番高いレイヤＩＤが「２」であることを確認する。
【０１００】
Ｓ７２４では、復号化部３１４が、Ｓ７２２で確認した再生可能な一番高いレイヤＩＤに基づいて、動画データを復号化する。例えば、再生可能な一番高いレイヤＩＤが「２」である場合、復号化部３１４は、レイヤＩＤ「１」のパケットのフレームと、レイヤＩＤ「２」のパケットのフレームとを用いて、動画データを復号化する。そして、動画再生部３１６が、復号化部３１４によって復号化された動画データを再生する。また、再生可能な一番高いレイヤＩＤが「１」である場合、復号化部３１４は、レイヤＩＤ「１」のパケットのフレームのみを用いて、動画データを復号する。そして、動画再生部３１６が、復号化部３１４によって復号化された動画データを再生する。
【０１０１】
Ｓ７２６では、フレーム判定部３１０が、Ｓ７０４で受信したパケットに含まれるシーケンスＩＤ又はＳ７１８でタイムアウトしたタイマーに対応するシーケンスＩＤが、Ｓ７０２で受信した最大シーケンスＩＤと等しいか否かを判定する。Ｓ７２６で、フレーム判定部３１０が、等しくないと判定した場合、Ｓ７０４に戻り、等しいと判定した場合、処理が終了する。
【０１０２】
端末装置３００が上述した復号化処理を実行することにより、基本レイヤパケットに対応する拡張空間レイヤパケットが、通信路においてパケットロスした場合でも、基本レイヤパケットを用いることによって、低解像度ながらも、途中で途切れたり停止したりすることなく動画を再生することができる。また、基本レイヤパケットに対応する拡張空間レイヤパケットを受信した部分については、高解像度の動画を再生できる。したがって、拡張空間レイヤパケットが受信できた部分については高解像度、拡張空間レイヤパケットが受信できなかった部分については低解像度の、途中で途切れたり停止したりすることのない動画を提供することができる。
【０１０３】
図８は、端末装置３００による復号化処理のフローチャートの一例を概略的に示す。図８に示す復号化処理は、端末装置３００が備える制御部が主体となって実行されてよい。ここでは、時間スケーラブル符号化された動画データを復号化する処理の流れを説明する。図８に示すフローチャートは、例えば、指示送信部３０２が動画データの送信指示を動画配信装置１００に送信した場合に開始する。
【０１０４】
Ｓ８０２では、符号化関連情報受信部３０８が、符号化関連情報送信部１２４から最大シーケンスＩＤ及び映像フレーム数を受信する。なお、ここで映像フレーム数とは、他のフレームを用いることなく復号化可能なキーフレームと、キーフレーム間に含まれる他のフレームを用いることによって予測復号化される予測復号フレームを合計したフレーム数を示す。Ｓ８０４で、パケット受信部３０４が動画配信装置１００からパケットを受信した場合、Ｓ８０６に進み、パケットを受信していない場合、Ｓ８１８に進む。
【０１０５】
Ｓ８０６では、フレーム判定部３１０が、バッファ３０６内のパケットを確認する。フレーム判定部３１０は、Ｓ８０４で受信したパケットと同一映像グループのパケットがバッファ３０６内にあるか否かを確認する。フレーム判定部３１０は、例えば、下記の数式１を用いて、Ｓ８０４で受信したパケットと同一映像グループのパケットを確認する。
【０１０６】
【数１】
0005902653.tif 000002
【０１０７】
上記の数式において、ｓはＳ８０４で受信したパケットに含まれるシーケンスＩＤであり、ＮはＳ８０２で受信した映像フレーム数である。ｉｎｔ（ｓ−１／Ｎ）は、（ｓ−１／Ｎ）の余りを除く商のみを示す。例えば、映像フレーム数が４であり、Ｓ８０４で受信したパケットに含まれるシーケンスＩＤが「３」の場合、フレーム判定部３１０は、シーケンスＩＤが「１」以上「４」以下のパケットが、同一映像グループのパケットであると判定する。
【０１０８】
Ｓ８０８では、フレーム判定部３１０が、Ｓ８０４で受信したパケットに含まれるシーケンスＩＤについて、同一映像グループの全てのパケットが受信されているか否かを判定する。例えば、フレーム判定部３１０は、Ｓ８０２で受信した映像フレーム数が４であり、Ｓ８０４で受信したパケットのシーケンスＩＤが「３」である場合、シーケンスＩＤが「１」から「４」のパケットがすべて受信されているか否かを判定する。フレーム判定部３１０によって、同一映像グループのパケットがすべて受信されていると判定されなかった場合、Ｓ８１０に進み、受信されていると判定された場合、Ｓ８１６に進む。
【０１０９】
Ｓ８１０では、バッファ３０６が、Ｓ８０４で受信したパケットを格納する。Ｓ８１２では、Ｓ８０４で受信したパケットに含まれるシーケンスＩＤに対応するタイマーがスタート済みであるか否かを判定する。Ｓ８１２で、スタート済みでないと判定された場合、当該シーケンスＩＤに対応するタイマーをスタートさせる（Ｓ８１４）。Ｓ８１２で、タイマーがスタート済みであると判定された後及びＳ８１４でタイマーをスタートした後、Ｓ８０４に戻る。
【０１１０】
Ｓ８１６では、復号化部３１４が、同一映像グループの全てのパケットにそれぞれ含まれるフレームを用いた高フレームレートの動画データを復号化する。そして、動画再生部３１６が、復号化部３１４によって復号化された動画データを再生する。
【０１１１】
Ｓ８０４で、パケット受信部３０４が動画配信装置１００からパケットを受信していない場合、Ｓ８１８に進む。Ｓ８１８では、Ｓ８１４でスタートしたタイマーにより計測されている時間が、予め定められた時間を経過したか否かを判定する。予め定められた時間が経過していないと判定された場合、Ｓ８０４に戻り、経過していると判定された場合、Ｓ８２０に進む。予め定められた時間は、動画データの再生が途中で止まってしまう等の支障を来さないように定められた時間であってよい。
【０１１２】
Ｓ８２０では、フレーム判定部３１０が、バッファ３０６に格納されたパケットのうち、Ｓ８１８でタイムアウトしたタイマーに対応するシーケンスＩＤに対応する映像グループに所属するパケットを確認する。Ｓ８２２では、フレーム判定部３１０が、Ｓ８２０で確認した、シーケンスＩＤに対応する映像グループに所属するパケットのレイヤＩＤのうち、再生可能な一番高いレイヤＩＤを確認する。
【０１１３】
例えば、Ｓ８１８でタイムアウトしたタイマーに対応するシーケンスＩＤに対応する映像グループに所属するパケットが、Ｉフレームを含むパケットとＰフレームを含むパケットであり、それぞれのレイヤＩＤが「１」と「２」であった場合、再生可能な一番高いレイヤＩＤが「２」であることが確認される。
【０１１４】
Ｓ８２４では、復号化部３１４が、Ｓ８２２で確認した再生可能な一番高いレイヤＩＤに基づいて、動画データを復号化する。例えば、再生可能な一番高いレイヤＩＤが「２」である場合、復号化部３１４は、レイヤＩＤ「１」のパケットのフレームと、レイヤＩＤ「２」のパケットのフレームとを用いて、動画データを復号化する。そして、動画再生部３１６が、復号化部３１４によって復号化された動画データを再生する。また、再生可能な一番高いレイヤＩＤが「１」である場合、復号化部３１４は、レイヤＩＤ「１」のパケットのフレームのみを用いて、動画データを復号する。そして、動画再生部３１６が、復号化部３１４によって復号化された動画データを再生する。
【０１１５】
Ｓ８２６では、フレーム判定部３１０が、Ｓ８０４で受信したパケットに含まれるシーケンスＩＤ又はＳ８１８でタイムアウトしたタイマーに対応するシーケンスＩＤが、Ｓ８０２で受信した最大シーケンスＩＤと等しいか否かを判定する。Ｓ８２６で、フレーム判定部３１０が、等しくないと判定した場合、Ｓ８０４に戻り、等しいと判定した場合、処理が終了する。
【０１１６】
端末装置３００が上述した復号化処理を実行することにより、基本レイヤパケットに対応する拡張時間レイヤパケットが、通信路においてパケットロスした場合でも、基本レイヤパケットを用いることによって、低フレームレートながらも、途中で途切れたり停止したりすることなく動画を再生することができる。また、基本レイヤパケットに対応する拡張時間レイヤパケットを受信した部分については、高フレームレートの動画を再生できる。したがって、拡張時間レイヤパケットが受信できた部分については高フレームレート、拡張時間レイヤパケットが受信できなかった部分については低フレームレートの、途中で途切れたり停止したりすることのない動画を提供することができる。
【０１１７】
図９は、端末装置３００による復号化処理のフローチャートの一例を概略的に示す。図９に示す復号化処理は、端末装置３００が備える制御部が主体となって実行されてよい。ここでは、時間スケーラブル符号化及び空間スケーラブル符号化された動画データを復号化する処理の流れを説明する。ここでは、図８に示すフローチャートと異なる部分を主に説明する。
【０１１８】
Ｓ９０２では、符号化関連情報受信部３０８が、符号化関連情報送信部１２４から最大シーケンスＩＤ、映像フレーム数、及び最大階層数を受信する。Ｓ９０４で、パケット受信部３０４が動画配信装置１００からパケットを受信した場合、Ｓ９０６に進み、パケットを受信していない場合、Ｓ９１８に進む。
【０１１９】
Ｓ９０６では、フレーム判定部３１０が、バッファ３０６内のパケットを確認する。フレーム判定部３１０は、Ｓ９０４で受信したパケットと同一映像グループのパケットが、バッファ３０６内にあるか否かを確認する。
【０１２０】
Ｓ９０８では、フレーム判定部３１０が、Ｓ９０２で受信した映像フレーム数及び最大階層数を用いて、Ｓ９０４で受信したパケットについて、同一映像グループの全てのパケットが受信されているか否かを判定する。フレーム判定部３１０によって、同一映像グループのパケットがすべて受信されていると判定されなかった場合、Ｓ９１０に進み、受信されていると判定された場合、Ｓ９１６に進む。
【０１２１】
Ｓ９１０では、バッファ３０６が、Ｓ９０４で受信したパケットを格納する。Ｓ９１２では、Ｓ９０４で受信したパケットに含まれるシーケンスＩＤに対応するタイマーがスタート済みであるか否かを判定する。Ｓ９１２で、スタート済みでないと判定された場合、当該シーケンスＩＤに対応するタイマーをスタートさせる（Ｓ９１４）。Ｓ９１２で、タイマーがスタート済みであると判定された後及びＳ９１４でタイマーをスタートした後、Ｓ９０４に戻る。
【０１２２】
Ｓ９１６では、復号化部３１４が、同一映像グループの全てのパケットにそれぞれ含まれるフレームを用いた高解像度及び高フレームレートの動画データを復号化する。そして、動画再生部３１６が、復号化部３１４によって復号化された動画データを再生する。
【０１２３】
Ｓ９０４で、パケット受信部３０４が動画配信装置１００からパケットを受信していない場合、Ｓ９１８に進む。Ｓ９１８では、Ｓ９１４でスタートしたタイマーにより計測される時間が、予め定められた時間を経過したか否かを判定する。予め定められた時間が経過していないと判定された場合、Ｓ９０４に戻り、経過していると判定された場合、Ｓ９２０に進む。
【０１２４】
Ｓ９２０では、フレーム判定部３１０が、バッファ３０６に格納されたパケットのうち、Ｓ９１８でタイムアウトしたタイマーに対応するシーケンスＩＤに対応する映像グループに所属するパケットを確認する。Ｓ９２２では、フレーム判定部３１０が、Ｓ９２０で確認したシーケンスＩＤに対応する映像グループに所属するパケットのレイヤＩＤのうち、再生可能な時間レイヤＩＤ及び空間レイヤＩＤを確認する。
【０１２５】
例えば、最大階層数が２であり、Ｓ９１８でタイムアウトしたタイマーに対応するシーケンスＩＤに対応する映像グループに所属するパケットのうち、空間レイヤＩＤが「１」のパケットがすべて受信され、空間レイヤＩＤ「２」のパケットが受信された場合、再生可能な時間レイヤＩＤが「２」、空間レイヤＩＤが「２」であることが確認される。最大階層数が２であり、Ｓ９１８でタイムアウトしたタイマーに対応するシーケンスＩＤに対応する映像グループに所属するパケットのうち、空間レイヤＩＤが「１」のパケットがすべて受信され、空間レイヤＩＤ「２」のパケットが受信されていなかった場合、再生可能な時間レイヤＩＤが「２」、空間レイヤＩＤが「１」であることが確認される。また、最大階層数が２であり、Ｓ９１８でタイムアウトしたタイマーに対応するシーケンスＩＤに対応する映像グループに所属するパケットのうち、時間レイヤＩＤが「１」、空間レイヤＩＤが「１」のパケットと「２」のパケットのみが受信されていた場合、再生可能な時間レイヤＩＤが「１」、空間レイヤＩＤが「２」であることが確認される。また、最大階層数が２であり、Ｓ９１８でタイムアウトしたタイマーに対応するシーケンスＩＤに対応する映像グループに所属するパケットのうち、時間レイヤＩＤが「１」、空間レイヤＩＤが「１」のパケットのみが受信されていた場合、再生可能な時間レイヤＩＤが「１」、空間レイヤＩＤが「１」であることが確認される。
【０１２６】
Ｓ９２４では、復号化部３１４が、Ｓ９２２で確認した再生可能な時間レイヤＩＤ及び空間レイヤＩＤに基づいて、最も高品質な動画データを復号化する。Ｓ９２６では、フレーム判定部３１０が、Ｓ９０４で受信したパケットに含まれるシーケンスＩＤ又はＳ９１８でタイムアウトしたタイマーに対応するシーケンスＩＤが、Ｓ９０２で受信した最大シーケンスＩＤと等しいか否かを判定する。Ｓ９２６で、フレーム判定部３１０が、等しくないと判定した場合、Ｓ９０４に戻り、等しいと判定した場合、処理が終了する。
【０１２７】
端末装置３００が上述した復号化処理を実行することにより、基本レイヤパケットに対応する拡張時間レイヤパケット及び拡張空間レイヤパケットが、通信路においてパケットロスした場合でも、基本レイヤパケットを用いることによって、低解像度及び低フレームレートながらも、途中で途切れたり停止したりすることなく動画を再生することができる。また、基本レイヤパケットに対応する拡張時間レイヤパケット及び拡張空間レイヤパケットを受信した部分については、高解像度及び高フレームレートの動画を再生できる。
【０１２８】
以上の説明において、動画配信装置１００及び端末装置３００の各部は、ハードウエアにより実現されてもよく、ソフトウエアにより実現されてもよい。また、ハードウエアとソフトウエアとの組み合わせにより実現されてもよい。また、プログラムが実行されることにより、コンピュータが、動画配信装置１００として機能してもよい。また、プログラムが実行されることにより、コンピュータが、端末装置３００として機能してもよい。プログラムは、コンピュータ読み取り可能な媒体又はネットワークに接続された記憶装置から、動画配信装置１００又は端末装置３００の少なくとも一部を構成するコンピュータにインストールされてよい。
【０１２９】
コンピュータにインストールされ、コンピュータを本実施形態に係る動画配信装置１００又は端末装置３００として機能させるプログラムは、ＣＰＵ等に働きかけて、コンピュータを、動画配信装置１００又は端末装置３００の各部としてそれぞれ機能させる。これらのプログラムに記述された情報処理は、コンピュータに読込まれることにより、ソフトウエアと動画配信装置１００又は端末装置３００のハードウエア資源とが協働した具体的手段として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータの使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の動画配信装置１００又は端末装置３００を構築することができる。
【０１３０】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【０１３１】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階などの各処理の実行順序は、特段「より前に」、「先立って」などと明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」などを用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【０１３２】
１０  動画配信システム、２０  ネットワーク、１００  動画配信装置、１０２  ストリーミング受付部、１０４  指示受付部、１０６  動画データ生成部、１０８  動画データ格納部、１１０  符号化部、１１２  レイヤデータ取得部、１１４  レイヤデータ受信部、１１６  パケット生成部、１２０  パケット送信部、１２２  通信品質取得部、１２４  符号化関連情報送信部、１３０  ＱｏＳＩＤ、１４０  シーケンスＩＤ、１５０  レイヤＩＤ、１５２  空間レイヤＩＤ、１５４  時間レイヤＩＤ、２００  動画サーバ、３００  端末装置、３０２  指示送信部、３０４  パケット受信部、３０６  バッファ、３０８  符号化関連情報受信部、３１０  フレーム判定部、３１２  経過時間計測部、３１４  復号化部、３１６  動画再生部、４００  通信中継装置、５１０  基本レイヤデータ、５１２  基本レイヤフレーム、５２０  拡張空間レイヤデータ、５２２  拡張空間レイヤフレーム、６１０  基本レイヤデータ、６１２  基本レイヤフレーム、６２０  拡張時間レイヤデータ、６２２  拡張時間レイヤフレーム、７１０  基本レイヤデータ、７１２  基本レイヤフレーム、７２０  拡張時間レイヤデータ、７２２  拡張時間レイヤフレーム、７３０  拡張空間レイヤデータ、７３２  拡張空間レイヤフレーム
【図１】
0005902653.tif 000003
【図２】
0005902653.tif 000004
【図３】
0005902653.tif 000005
【図４】
0005902653.tif 000006
【図５】
0005902653.tif 000007
【図６】
0005902653.tif 000008
【図７】
0005902653.tif 000009
【図８】
0005902653.tif 000010
【図９】
0005902653.tif 000011