JP5264349B2 - 映像受信装置及び映像受信方法 - Google Patents

映像受信装置及び映像受信方法 Download PDF

Info

Publication number
JP5264349B2
JP5264349B2 JP2008195433A JP2008195433A JP5264349B2 JP 5264349 B2 JP5264349 B2 JP 5264349B2 JP 2008195433 A JP2008195433 A JP 2008195433A JP 2008195433 A JP2008195433 A JP 2008195433A JP 5264349 B2 JP5264349 B2 JP 5264349B2
Authority
JP
Japan
Prior art keywords
video
video stream
playback
gop
detection
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.)
Expired - Fee Related
Application number
JP2008195433A
Other languages
English (en)
Other versions
JP2010034897A (ja
Inventor
猛 外山
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2008195433A priority Critical patent/JP5264349B2/ja
Priority to US12/510,007 priority patent/US8233549B2/en
Publication of JP2010034897A publication Critical patent/JP2010034897A/ja
Application granted granted Critical
Publication of JP5264349B2 publication Critical patent/JP5264349B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4425Monitoring of client processing errors or hardware failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

本発明は映像受信装置及び映像受信方法に関し、特に、ネットワークを介して送られる配信映像を受信するために用いて好適な技術に関する。
近年、映像圧縮技術の発展及び高速ネットワークの普及にとともに、ネットワーク経由の映像配信サービスが広まりつつある。映像配信サービスは、放送型、ビデオオンデマンド型、ダウンロード型に分類できる。このうち、ビデオオンデマンド型の映像配信サービスは、視聴者が見たいときに見たいコンテンツを選択して視聴することができるので、その利便性が優れており、今後の普及が見込まれている。
また、映像配信サービスは即時性が要求される。このため、配信プロトコルとしてRTP(Real-time Transport Protocol)プロトコル、その下位層プロトコルとしてUDP(User Datagram Protocol)プロトコルが採用されている。
これらのRTP/UDPは、パケット欠落等の伝送エラーに対する再送機能を持たないため、伝送エラー対策としてFEC(Forward Error Correction)と呼ばれる誤り訂正技術が採用されている。
誤り訂正技術が採用されている従来例として、種々の技術が提案されている。例えば、特許文献1においては、パケットロスト発生時の再送要求の送信タイミングを制御して、不要な再送要求の送信を抑制しつつ、最適な遅延時間で映像や音声の再生を可能とするパケットエラー訂正装置が提案されている。
また、特許文献2においては、RTSPメソッドを用いて受信バッファの状態に応じたフロー制御を行う。そして、受信バッファの上限値を超えたらPAUSEにより一時停止し、その後下限値以下になったらPLAYにより再開するようにした、ストリーム再生方法が提案されている。
特開2005−159433号公報 特開2005−303783号公報
しかしながら、FECはバースト的なパケット欠落に対しては効果が弱いため、伝送エラーによる再生映像の乱れを確実に抑えることは困難である。特に、ビデオオンデマンド型の映像配信サービスから有料コンテンツを購入した視聴者にとっては、折角対価を支払ったのだから、乱れの無い安定した再生映像を鑑賞したい、という強い要求がある。
本発明は前述の問題点に鑑み、バースト的なパケット欠落が発生した時に再生映像が乱れる不都合を抑制できるようにすることを目的としている。
本発明の映像受信装置は、映像配信装置より受信した映像ストリームを映像再生部へ供給して映像再生を行っている際に発生したエラー発生位置を検出する検出手段と、前記検出手段による検出位置前記映像ストリームにおける所定同期符号から所定範囲内にある場合に決定する再生開始位置と、前記検出位置が前記所定同期符号から所定範囲内にない場合に決定する再生開始位置とが異なるようにして再生開始時間を決定する決定手段と、前記決定手段により決定された再生開始時間を指定して、前記映像配信装置に対して前記映像ストリームの送信要求を行う制御手段とを備えることを特徴とする。
本発明の映像受信方法は、映像配信装置より受信した映像ストリームを映像再生部へ供給して映像再生を行っている際に発生したエラー発生位置を検出手段が検出する検出工程と、前記検出工程において検出された検出位置前記映像ストリームにおける所定同期符号から所定範囲内にある場合に決定する再生開始位置と、前記検出位置が前記所定同期符号から所定範囲内にない場合に決定する再生開始位置とが異なるようにして再生開始時間を決定手段が決定する決定工程と、前記決定工程において決定された再生開始時間を指定して、前記映像配信装置に対して前記映像ストリームの送信要求を制御手段が行う制御工程とを備えることを特徴とする。
本発明のコンピュータプログラムは、映像配信装置より受信した映像ストリームを映像再生部へ供給して映像再生を行っている際に発生したエラー発生位置を検出する検出工程と、前記検出工程において検出された検出位置前記映像ストリームにおける所定同期符号から所定範囲内にある場合に決定する再生開始位置と、前記検出位置が前記所定同期符号から所定範囲内にない場合に決定する再生開始位置とが異なるようにして再生開始時間を決定する決定工程と、前記決定工程において決定された再生開始時間を指定して、前記映像配信装置に対して前記映像ストリームの送信要求を行う制御工程とをコンピュータに実行させることを特徴とする。
本発明によれば、受信装置側の再生時間計時と、配信サーバ側の再生時間計時とのずれ等が存在する場合にも、意図しない再生開始位置が採用されないようにすることができる。これにより、再送機能の無い映像配信サービスからの映像配信において伝送エラーに対する自動再送処理を実現することができ、ネットワーク配信映像の再生映像が乱れるのを抑制することができる。
(第1の実施形態)
図1は、第1の実施形態を示し、映像ストリーム受信システムの構成例を示すブロック図である。
図1に示したように、映像受信装置100は、ネットワーク102を介して映像配信サーバ101から映像ストリームを受信する。
本実施形態の映像受信装置100において、映像ストリームの配信プロトコルには、RTP(Real-time Transport Protocol)プロトコルが採用されている。また、その下位層プロトコルとしてUDP(User Datagram Protocol)プロトコルが採用されており、エラー再送のプロトコルは具備しない。
映像ストリームの再生開始や停止、更には早送り、巻戻し、一時停止等の特殊再生を行うプロトコルには、RTSP(Real time Streaming Protocol)プロトコルが採用されている。映像受信装置100は、映像配信サーバ101から送られる映像ストリームを受信する映像受信部103と、受信した映像ストリームをディスプレイ105に再生・出力する映像再生部104とを有する。
図2に、第1の実施形態における映像受信部103の構成例を示す。
図2において、主制御部201は、映像受信部103全体の制御を司る。ネットワーク制御部202は、RTPプロトコル及びRTSPプロトコルにより映像配信サーバ101から送られる映像ストリームを受信する。
メモリ部203は、受信した映像ストリームを一時格納するための受信バッファ等を有している。計時部204は、映像ストリームの再生時間を計時するため等に使用される。バスブリッジ205は、映像再生部104と接続するために使用される。これにより、映像再生部104はバスブリッジ205を介してメモリ部203にアクセスすることが可能となる。また、インターフェース制御部206を介して映像再生部104と制御情報のやりとりを行うことが可能な構成になっている。
図3に、第1の実施形態における映像ストリームの伝送フォーマットの一例を示す。
映像配信サーバ101から送られる映像ストリームは、MPEG-2またはH.264方式で符号化され、TS(Transport Stream)パケットの形式でMPEG-2システム規格に基づいて多重化されている。
TSパケット化された映像ストリーム305、306、・・・307は、ペイロード304に配置される。また、RTPヘッダ303、UDPヘッダ302、IP(Internet Protocol)ヘッダ301が付加され、IPパケット化として伝送される。
図4に、映像受信装置100が映像配信サーバ101から送られる映像ストリームを受信するための伝送プロトコルシーケンスの一例を示す。
本シーケンス例では、映像コンテンツの先頭から映像ストリームの配信が開始される(ステップS401〜S403)。また、配信の途中で、特殊再生の1方式である遡ったストリーム位置から送られる映像ストリームの配信を行っている(ステップS404〜S408)。
ステップS401では、映像配信サーバ101に対してRTSPプロトコルにおけるPLAYコマンドを送信する。このとき、再生開始位置として再生時間0秒を指定する。ここで、再生開始位置は映像コンテンツの先頭からの再生時間により指定される。映像コンテンツの先頭を指定する場合には再生時間0秒を指定すればよい。
ステップS402では、PLAYコマンドに対するレスポンスを映像配信サーバ101から受信する。ステップS403では、映像配信サーバ101から送られる映像ストリームを受信する。その後、ユーザ操作等により、ステップS404以降の特殊再生プロトコルシーケンスが実行される。
ステップS404では、RTSPプロトコルにおけるPAUSEコマンドを映像配信サーバ101に対して送信する例を示している。ステップS405では、PAUSEコマンドに対するレスポンスを映像配信サーバ101から受信する。ここで、当該レスポンスにはPAUSEコマンドにより中断された時点の再生時間が記載されている。
映像受信部103は、当該再生時間(映像配信サーバ101が計時している再生時間)と計時部204により計時している再生時間とにずれがある場合には再生時間の調整を行う。
ステップS406では、映像配信サーバ101に対してPLAYコマンドを送信する。このとき、再生開始位置として所望の再生時間を指定する。ステップS407では、PLAYコマンドに対するレスポンスを映像配信サーバ101から受信する。ステップS408では、ステップS406で指定した再生時間に対応したストリーム位置から送られる映像ストリームを受信する。
次に、欠落したRTPパケットを復元するためのFECパケット処理の一例について説明する。
図4で示した伝送プロトコルを実行している間、映像配信サーバ101と映像受信装置100との間でFECパケットの伝送が別途行われている。
図5に、RTPパケットとFECパケットの対応関係の一例を示す。
この例では、D×L個のRTPパケット501に対して、L個の横方向のFECパケット502と、D個の縦方向のFECパケット503が映像配信サーバ101から伝送される。以下の説明においては、D×L個のRTPパケット501単位(以下、FEC処理単位と称する)でFEC処理が行われる。
すなわち、映像受信部103は、D×L個のRTPパケット501に対して、横方向のFECパケット502または縦方向のFECパケット503のいずれかを用いて誤り検出を行う。また、パケット欠落が発生した場合には、対応する横方向のFECパケット502または縦方向のFECパケット503を使用して当該欠落パケットの復元を行う。
バースト的なパケット欠落が発生した場合等において、前述したFECパケット処理で対応不能な伝送エラーが発生した場合には何か別の対応が必要となる。前述の通り、映像配信サーバ101は、映像ストリームをRTP/UDPプロトコルにより伝送するので、エラー再送機能を具備していない。
そこで、本実施形態では、伝送エラーが発生したときには、図4を参照しながら説明したステップS404〜S408の特殊再生プロトコルシーケンスを実行する。そして、伝送エラーが発生した映像ストリーム位置の前から再生を再開することによりエラー再送を実現している。
すなわち、伝送エラーが発生したときに、伝送エラーが発生した映像ストリーム位置より前から再生が開始されるように再生時間を決定し、当該再生時間を指定したPLAYコマンドを映像配信サーバ101に送信する。
次に、再生時間を指定したPLAYコマンドを映像受信装置100から受信した場合に、映像配信サーバ101で行われる処理の一例について説明する。
映像配信サーバ101は、映像受信装置100から指定された再生時間に対応する映像ストリーム位置を特定する。
ここで、映像受信装置100側の再生時間計時と映像配信サーバ101側の再生時間計時とのずれにより、映像受信装置100側で認識する映像ストリーム位置と映像配信サーバ101が認識する映像ストリーム位置がずれるケースが生じる。さらに、一般には、映像配信サーバ101が認識した映像ストリーム位置をそのまま再生開始位置に採用するのではなく、その近傍の区切りの良いストリーム位置を再生開始位置に採用する。例えば、映像ストリームがMPEG-2方式により符号化されている場合には、ランダムアクセス単位としてGOP(Group Of Picture)が存在する。
図6(a)、(b)に示すように、映像ストリーム内における区切りの良い同期符号であるGOPヘッダ601〜604が再生開始位置として採用される。映像受信装置100から送られるPLAYコマンドで指定された再生時間が、符号605で示したストリーム位置を示している場合には、当該ストリーム位置を含んだGOPのGOPヘッダ602が再生開始位置として採用される。
すなわち、映像受信装置100側の再生時間計時と、映像配信サーバ101側の再生時間計時とのずれ、及び映像配信サーバ側の再生開始位置決定プロセスの存在により、映像受信装置100が意図しない再生開始位置が採用される場合が生じる。
例えば、伝送エラー発生位置がストリーム位置605であったとする。この場合、ストリーム位置605に対応した再生時間を指定したPLAYコマンドに対して、映像配信サーバ101側は再生時間計時のずれにより当該PLAYコマンドに対応するストリーム位置を606と認識してしまう場合がある。このような誤認識が行われた場合には、映像配信サーバ101側でGOPヘッダ602ではなくGOPヘッダ603を再生開始位置として決定してしまうことになる。
そこで、本実施形態では、映像再生部への供給が中断したストリーム位置からのデータが確実に再送されるように映像配信サーバ101に指定する再生時間を決定する。図6に示した例では、伝送エラーが発生したストリーム位置605を、エラー発生を検出した検出位置とする。そして、この検出位置が次のGOP先頭であるGOPヘッダ603から所定範囲にある場合には、ストリーム位置605が属するGOPの中央付近のストリーム位置607に対応する再生時間を、再生開始時間としてPLAYコマンドで指定する。
このように再生開始時間指定して、映像配信サーバ101に対して送信要求を行うことにより、映像受信装置100と映像配信サーバ101との間の再生時間計時のずれに対して所定のマージンを確保することができる。したがって、映像受信装置100と映像配信サーバ101との間に再生時間計時のずれが有っても、伝送エラーが発生したストリーム位置605が属するGOPのGOPヘッダ602を再生開始位置とすることができる。
一方、図6(b)に示すように、伝送エラーが発生したストリーム位置608が、自身の属するGOP内の最後尾から所定範囲にある場合には、自身が属するGOPの中央方向のストリーム位置609に対応する再生時間をPLAYコマンドで指定する。これにより、伝送エラーが発生したストリーム位置608が属するGOPのGOPヘッダ603を再生開始位置とすることができる。したがって、再生時間計時のずれにより、PLAYコマンドに対応するストリーム位置を符号610の位置と認識してしまい、必要以上に前方のGOPヘッダ602が再生開始位置となってしまう不都合を防ぐことができる。
伝送エラーが発生したストリーム位置より前のストリームは既受信済みなので、再送時は冗長なデータとなってしまう。そこで、伝送エラーが発生したストリーム位置より必要以上に前のGOPヘッダ602を再生開始位置としないようにすることにより、冗長データの伝送による遅延の発生を抑制した、映像ストリームの供給再開を実現することができる。
図7に、映像受信部103における受信した映像ストリームのデータフローを示す。
映像受信部103は、映像ストリームを受信するためのバッファとして、ソケットバッファ701、RTPバッファ702、TSバッファ703をメモリ部203に有している。
ソケットバッファ701は、ネットワーク制御部202により受信した映像ストリームをUDPパケットレベルで格納する。RTPバッファ702は、ソケットバッファ701に格納されているUDPパケットからRTPパケットを読み出して格納する(データフロー704)。
データフロー704では、RTPパケットヘッダのシーケンス番号が連続しているか否かをチェックすることによりパケット欠落が発生しているか否かを判定する。また、所定期間、次のRTPパケットが取得できない場合にもパケット欠落が発生したものと判定する。欠落したRTPパケットは、図5で説明したFECパケットにより復元される。なお、バースト的なパケット欠落によりFECパケットでも復元できないRTPパケットが存在する場合には、「エラー再送要」と判断する。
TSバッファ703は、RTPパケットのペイロードからTSパケットを読み出して格納する(データフロー705)。そして、「エラー再送要」と判断した場合には、中断位置検出処理、エラー再送処理、及び、再生再開処理を実行する。
中断位置検出処理では、FECで復元できないパケット欠落が発生した場合に、映像再生部104への供給が中断した中断位置と、当該中断位置と映像ストリームにおける所定同期符号(例えば、GOPヘッダ)との位置関係を検出する。
エラー再送処理では、中断位置検出処理で検出した中断位置と位置関係に基づいて、中断位置からのデータが確実に再送されるように映像配信サーバに指定する再生時間を決定し、当該再生時間を指定したPLAYコマンドを映像配信サーバ101に送信する。
再生再開処理では、映像再生部104へのデータ供給を中断位置から再開する。中断位置検出処理、エラー再送処理、及び再生再開処理の詳細は後述する。
TSバッファ703に格納されたTSパケットは、映像再生部104により読み出される。映像再生部104により読み出されたTSパケットのペイロード内の映像ストリームは、デコードされた後、ディスプレイ105に出力される。
映像受信部103によるTSバッファ703へのTSパケットの書き込み、及び映像再生部104によるTSバッファ703からのTSパケットの読み出しのフロー制御情報は、インターフェース制御部206を介してやりとりされる。
本実施形態では、映像受信部103は、映像再生部104に対してPES(Packetized Elementary Stream)単位で読み出し許可を与える。したがって、伝送エラーにより映像再生部104へのストリーム供給が中断した場合、その中断位置は最後に正常に受信されたPESにおけるラストバイトの次のバイトとなる。なお、PESは実質的に1つの映像フレームに対応するデータの固まりであり、映像再生部104で供給する単位としてハンドリングしやすい。
映像受信部103は、映像コンテンツの先頭からの再生開始を行う際に、所定量の映像ストリームがTSバッファ703に蓄積されてから映像再生部104に再生開始を指示する。これは、ネットワーク102上のジッタを吸収するためである。
したがって、FECで救済できない伝送エラーが発生しても、映像再生部104の読み出し位置がエラー中断位置に到達する前にエラー再送により当該中断位置以降のストリームをTSバッファ703内に蓄積することが可能となる。
また、TSバッファ703がアンダーフローした場合は、映像再生部104はエラー中断位置直前の映像フレームをディスプレイ105に出力し続けて映像フリーズ状態になる。この場合も、エラー中断位置以降のストリームが映像再生部104に供給されることで、フリーズ状態にある映像フレームの次の映像フレームからシームレスに再生を再開することが可能となる。
図8は、映像受信部103における中断位置検出処理の一例を示すフローチャートである。このフローチャートに示した処理は図7で示したデータフロー705に相当し、RTPバッファ702への映像ストリームの蓄積が開始されたことに応じて開始する。
先ず、ステップS801では、計時部204により再生時間の計時を開始する。次に、ステップS802では、RTPバッファ702からRTPパケット群をFEC処理単位で読み込む。次に、ステップS803では、ステップS802で読み込んだRTPパケット群に対して、図5で説明したFEC処理を実行する。
次に、ステップS804では、「エラー再送要」か否かを判断する。この判断の結果、否定判断の場合はステップS805に進む。ステップS805では、ステップS802で読み込んだRTPパケット群に対して、GOPヘッダが存在するか否かを判断する。この判断の結果、GOPヘッダが存在する場合には、ステップS806に進んでそのGOPヘッダをメモリ部203のワークメモリに記憶する。更に、その際、当該GOPヘッダに対応する再生時間をメモリ部203のワークメモリ203aに記憶する。
次に、ステップS807では、GOP内カウンタの最大値を取得する。GOP内カウンタは、GOP内のPESヘッダを計数するカウンタである。2番目のGOPヘッダを検出したときに前回GOPのGOPカウンタを最大値として取得する。次に、ステップS808では、GOP内カウンタを零に初期化する。その後、ステップS809に進む。なお、ステップS805の判断の結果、GOPヘッダが存在しない場合にはステップS809に直接進む。
ステップS809では、ステップS802で読み込んだRTPパケット群に対して、PESヘッダが存在するか否かを判断する。この判断の結果、PESヘッダが存在する場合には、ステップS810に進んでGOP内カウンタを1つ増加する。その後、ステップS811に進む。また、ステップS809の判断の結果、PESヘッダが存在しない場合にはステップS810を経由しないでステップS811に進む。
ステップS811では、ステップS802で読み込んだRTPパケット群のペイロードに配置されているTSパケットをTSバッファに書き込む。ここで、ステップS805におけるGOPヘッダの検出、及びステップS809におけるPESヘッダの検出のために、すべてのTSパケットを解析する必要はない。すなわち、パケットIDにより弁別される映像TSパケットについてのみ行えばよい。更には、TSパケットのヘッダ内に存在するペイロードユニット開始インジケータの値が"1"の映像TSパケットとその近傍の映像TSパケットについて解析すればよい。
一方、ステップS804の判断の結果、「エラー再送要」と判断された場合にはステップS812〜S814が実行される。
ステップS812では、ステップS806で記憶したラストのGOPヘッダと、GOP内カウンタの現在値からエラー中断位置を検出する。すなわち、ラストに記憶したGOPヘッダ内のタイムコードにより映像ストリームにおける当該GOPを特定し、更にGOP内カウンタにより当該GOPの何番目のPESがエラー中断位置であるかを特定する。このとき、エラー中断位置に特定されたPESおよび後続のPESを読み出さないように映像再生部104に指示する。
次に、ステップS813では、ステップS812で特定されたエラー中断位置たるGOP内カウンタと、ステップS807で取得したGOP内カウンタ最大値に基づいてエラー中断位置とGOPヘッダとの位置関係を把握する。これにより、映像配信サーバ101に指定する再生時間を決定する。
まず、GOP内カウンタとGOP内カウンタ最大値から、エラー中断位置がGOP内のどの位置にあるかを把握する。たとえば、GOP内カウンタ最大値が"15"でGOP内カウンタが"1"の場合は、エラー中断位置が自身の属するGOPのGOPヘッダの近傍にあると判断する。また、GOP内カウンタ最大値が"15"でGOP内カウンタが"15"の場合は、エラー中断位置が自身の属するGOPの次GOPのGOPヘッダ近傍にあると判断できる。
このように、エラー中断位置とGOPヘッダの位置関係とを把握した後、図6で説明したGOP中央付近に対応する再生時間をPLAYコマンドで指定する。GOP中央付近の再生時間については、ステップS806で記憶したGOPヘッダに対応する再生時間に1つのGOPの再生時間を半分にした値を加えればよい。前述したプロセスにより決定した再生時間を指定したPLAYコマンドを映像配信サーバ101に送信する。
次に、ステップS814では、ステップS813のエラー再生処理に応じて再開した映像配信サーバ101から送られる映像ストリームから、ステップS812で特定したエラー中断位置以降からのデータをTSバッファ703に書き込む。そして、ステップS812でエラー中断位置に特定されたPESがTSバッファに703に蓄積された後、映像再生部104にPESの読み出し再開を指示する。
映像ストリームからエラー中断位置を特定するには、ステップS812で特定したGOPヘッダとGOP内カウンタからPESヘッダのストリーム位置を特定すればよい。以降、映像ストリームの受信及び再生が再開される。ステップS811、またはステップS814の処理を終了した後はステップS802に戻って前述した処理を繰り返し行う。
以上説明したように、第1の実施形態によれば、再送機能の無い映像配信サービスにおいて、誤り訂正処理では復元できない伝送エラーに対する自動再送を実現することができる。
<第2の実施形態>
前述した第1の実施形態では、エラー再送時に指定する再生時間を決定するプロセスで使用する同期符号としてGOPヘッダを例に説明した。しかし、GOPヘッダ以外にも当該同期符号として下記のものを使用するようにしてもよい。
シーケンスヘッダは、画面のフォーマットなど再生に必要な情報を指定する制御情報の同期符号で、映像ストリーム中の所定タイミング毎に挿入される。また、IピクチャのPESヘッダは、単独で復号が可能なため、特殊再生における再生開始位置とされる場合がある。
クローズドGOPは、最初のいくつかの Bピクチャ が前の GOP に依存しないので、映像配信サーバ101で再生開始位置とされる可能性がある。H.264符号化方式により符号化された映像ストリームには複数の同期符号が存在する。1つの同期符号はIDRピクチャ(Instantaneous Decoder Refreshピクチャ)である。また、他の同期符号はリカバリポイントSEI(Supplemental Enhancement Information)である。これらの同期符号は、いずれもランダムアクセスに対応するための同期ポイントであり、映像配信サーバ101で再生開始位置とされる可能性がある。
このように、映像配信サーバ101が再生開始位置として使用する可能性のある同期符号をエラー再送時に指定する再生時間を決定するプロセスに使用することにより、様々な映像配信サーバに対応することが可能となる。
<第3の実施形態>
前述した第2の実施形態では、映像配信サーバ101が再生開始位置として使用する可能性のある同期符号をエラー再送時に指定する再生時間を決定するプロセスに使用することを説明した。
映像配信サーバ101がどの同期符号を再生開始点としているかを映像配信サーバ毎に自動的に検出するようにしてもよい。これは、再生時間を指定したPLAYコマンドを映像配信サーバ101に送信した後、最初に受信した映像TSパケット内に最初に出現する同期符号を、映像配信サーバ101毎の履歴情報として記憶しておく。そして、以前に記憶しておいた履歴情報がある特定の同期符号に集中している場合には、その映像配信サーバは、前述した特定の同期符号を再生開始位置としているものと判断する。
(本発明に係る他の実施の形態)
前述した本発明の実施の形態における映像受信装置を構成する各手段は、コンピュータのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施の形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
なお、本発明は、前述した映像受信方法における各工程を実行するソフトウェアのプログラム(実施の形態では図8に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接、あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては種々の記録媒体を使用することができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施の形態の機能が実現される他、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行うことによっても前述した実施の形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施の形態の機能が実現される。
本発明の第1の実施形態を示し、映像ストリーム受信システムの構成例を示すブロック図である。 本発明の第1の実施形態を示し、映像受信部の構成例を説明するブロック図である。 本発明の第1の実施形態を示し、映像ストリームの伝送フォーマットの一例を説明する図である。 本発明の第1の実施形態を示し、伝送プロトコルシーケンスの一例を説明する図である。 本発明の第1の実施形態を示し、RTPパケットとFECパケットの対応関係の一例を説明する図である。 本発明の第1の実施形態を示し、再生時間決定プロセスの一例を説明する図である。 本発明の第1の実施形態を示し、映像受信部の映像ストリームのデータフローを説明するブロック図である。 本発明の第1の実施形態を示し、映像受信部の処理手順の一例を説明するフローチャートである。
符号の説明
100 映像受信装置
101 映像配信サーバ
102 ネットワーク
103 映像受信部
104 映像再生部
105 ディスプレイ
201 主制御部
202 ネットワーク制御部
203 メモリ部
203a ワークメモリ
204 計時部
205 バスブリッジ
206 インターフェース制御部

Claims (14)

  1. 映像配信装置より受信した映像ストリームを映像再生部へ供給して映像再生を行っている際に発生したエラー発生位置を検出する検出手段と、
    前記検出手段による検出位置前記映像ストリームにおける所定同期符号から所定範囲内にある場合に決定する再生開始位置と、前記検出位置が前記所定同期符号から所定範囲内にない場合に決定する再生開始位置とが異なるようにして再生開始時間を決定する決定手段と、
    前記決定手段により決定された再生開始時間を指定して、前記映像配信装置に対して前記映像ストリームの送信要求を行う制御手段とを備えることを特徴とする映像受信装置。
  2. 前記映像ストリームは、複数の所定同期符号により複数の区間に区切られ、
    前記決定手段は、前記検出位置が前記映像ストリームにおける前記所定同期符号から所定範囲内にある場合には、前記検出位置から前記検出位置を含む区間の中央方向にマージンをもたせて前記再生開始時間を決定することを特徴とする請求項1に記載の映像受信装置。
  3. 前記制御手段は、前記送信要求に応じて前記映像配信装置より送信される映像ストリームから前記検出位置を特定し、前記特定した検出位置から映像ストリームを前記映像再生部へ供給再開することを特徴とする請求項1に記載の映像受信装置。
  4. 前記制御手段は、前記検出位置からの映像ストリームの供給再開を、バッファを介して行うことを特徴とする請求項に記載の映像受信装置。
  5. 前記検出位置は、前記映像ストリーム内の各映像フレームを特定する情報であることを特徴とする請求項に記載の映像受信装置。
  6. 前記所定同期符号は、GOPの開始を示すGOPヘッダであることを特徴とする請求項に記載の映像受信装置。
  7. 前記決定手段は、前記検出位置のGOP内の位置がGOPの最後尾から所定範囲にある場合には、前記検出位置から前記GOPの中央方向にマージンをもたせて前記再生開始時間を決定することを特徴とする請求項に記載の映像受信装置。
  8. 前記決定手段は、前記検出位置のGOP内の位置がGOP先頭から所定範囲にある場合には、前記検出位置から前記GOPの中央方向にマージンをもたせて前記再生開始時間を決定することを特徴とする請求項に記載の映像受信装置。
  9. 前記所定同期符号は、シーケンスヘッダ、Iピクチャ、IDRピクチャまたはリカバリポイントSEIのいずれかの開始を示す同期符号であることを特徴とする請求項に記載の映像受信装置。
  10. 前記決定手段は、前記制御手段が以前に要求した映像ストリームにおいて最初に出現する所定同期符号に基づいて前記再生開始時間を決定することを特徴とする請求項に記載の映像受信装置。
  11. 映像配信装置より受信した映像ストリームを映像再生部へ供給して映像再生を行っている際に発生したエラー発生位置を検出手段が検出する検出工程と、
    前記検出工程において検出された検出位置前記映像ストリームにおける所定同期符号から所定範囲内にある場合に決定する再生開始位置と、前記検出位置が前記所定同期符号から所定範囲内にない場合に決定する再生開始位置とが異なるようにして再生開始時間を決定手段が決定する決定工程と、
    前記決定工程において決定された再生開始時間を指定して、前記映像配信装置に対して前記映像ストリームの送信要求を制御手段が行う制御工程とを備えることを特徴とする映像受信方法。
  12. 前記映像ストリームは、複数の所定同期符号により複数の区間に区切られ、
    前記決定工程において前記決定手段は、前記検出位置が前記映像ストリームにおける前記所定同期符号から所定範囲内にある場合には、前記検出位置から前記検出位置を含む区間の中央方向にマージンをもたせて前記再生開始時間を決定することを特徴とする請求項11に記載の映像受信方法。
  13. 映像配信装置より受信した映像ストリームを映像再生部へ供給して映像再生を行っている際に発生したエラー発生位置を検出する検出工程と、
    前記検出工程において検出された検出位置前記映像ストリームにおける所定同期符号から所定範囲内にある場合に決定する再生開始位置と、前記検出位置が前記所定同期符号から所定範囲内にない場合に決定する再生開始位置とが異なるようにして再生開始時間を決定する決定工程と、
    前記決定工程において決定された再生開始時間を指定して、前記映像配信装置に対して前記映像ストリームの送信要求を行う制御工程とをコンピュータに実行させることを特徴とするコンピュータプログラム。
  14. 前記映像ストリームは、複数の所定同期符号により複数の区間に区切られ、
    前記決定工程において、前記検出位置が前記映像ストリームにおける前記所定同期符号から所定範囲内にある場合には、前記検出位置から前記検出位置を含む区間の中央方向にマージンをもたせて前記再生開始時間を決定する処理をコンピュータに実行させることを特徴とする請求項13に記載のコンピュータプログラム。
JP2008195433A 2008-07-29 2008-07-29 映像受信装置及び映像受信方法 Expired - Fee Related JP5264349B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008195433A JP5264349B2 (ja) 2008-07-29 2008-07-29 映像受信装置及び映像受信方法
US12/510,007 US8233549B2 (en) 2008-07-29 2009-07-27 Video receiving apparatus and video receiving method to address error in received video

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008195433A JP5264349B2 (ja) 2008-07-29 2008-07-29 映像受信装置及び映像受信方法

Publications (2)

Publication Number Publication Date
JP2010034897A JP2010034897A (ja) 2010-02-12
JP5264349B2 true JP5264349B2 (ja) 2013-08-14

Family

ID=41609696

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008195433A Expired - Fee Related JP5264349B2 (ja) 2008-07-29 2008-07-29 映像受信装置及び映像受信方法

Country Status (2)

Country Link
US (1) US8233549B2 (ja)
JP (1) JP5264349B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009060500A1 (ja) * 2007-11-07 2009-05-14 Fujitsu Limited 媒体記憶装置のリード/ライト処理方法及び媒体記憶装置
KR101712102B1 (ko) * 2010-07-29 2017-03-14 삼성전자 주식회사 Rtsp 세션에 기초해 스트리밍 데이터를 송수신하는 방법 및 장치
US9906645B2 (en) * 2013-04-03 2018-02-27 Qualcomm Incorporated Rewinding a real-time communication session
WO2017010261A1 (ja) * 2015-07-10 2017-01-19 ソニー株式会社 検査装置、検査方法、及び、プログラム
US10021438B2 (en) 2015-12-09 2018-07-10 Comcast Cable Communications, Llc Synchronizing playback of segmented video content across multiple video playback devices

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2862064B2 (ja) * 1993-10-29 1999-02-24 三菱電機株式会社 データ復号装置及びデータ受信装置及びデータ受信方法
JP3087826B2 (ja) * 1996-07-15 2000-09-11 日本電気株式会社 Mpeg符号化画像データ復号装置
US7174561B2 (en) * 2001-04-13 2007-02-06 Emc Corporation MPEG dual-channel decoder data and control protocols for real-time video streaming
JP4328602B2 (ja) 2003-11-20 2009-09-09 富士通株式会社 パケットエラー訂正装置及び方法
JP2005303783A (ja) 2004-04-14 2005-10-27 Nippon Telegr & Teleph Corp <Ntt> ストリーム再生方法とそのプログラム
JP2005318473A (ja) * 2004-04-30 2005-11-10 Toshiba Corp 動画像のメタデータ
WO2006059475A1 (en) * 2004-11-30 2006-06-08 Matsushita Electric Industrial Co., Ltd. Recording and reproducing apparatus
US7877514B2 (en) * 2007-05-03 2011-01-25 Samsung Electronics Co., Ltd. System and method for time-constrained transmission of video in a communication system

Also Published As

Publication number Publication date
US20100031307A1 (en) 2010-02-04
JP2010034897A (ja) 2010-02-12
US8233549B2 (en) 2012-07-31

Similar Documents

Publication Publication Date Title
US7813268B2 (en) Retry strategies for use in a streaming environment
US7870281B2 (en) Content playback device, content playback method, computer-readable storage medium, and content playback system
US6910078B1 (en) Methods and apparatus for controlling the transmission of stream data
JP3631439B2 (ja) 非信頼ネットワークにおけるデータ伝送方法及び装置
US7509390B1 (en) Methods and apparatus for controlling the transmission of data
US8266311B2 (en) Strategies for transmitting in-band control information
US8219701B2 (en) Apparatus and method for controlling communication
US8185792B2 (en) Data-transmission device data-reception device and data-transmission-and-reception system
JP5322518B2 (ja) 通信方法
US9525874B2 (en) Transmitting apparatus and transmission method
JP2006211602A (ja) データ送信機及びプログラム
JP5264349B2 (ja) 映像受信装置及び映像受信方法
JP2005051794A (ja) ビデオをオン・デマンドでレンダリングするvcrに似た機能
JP2008048182A (ja) 通信処理装置、および通信制御方法、並びにコンピュータ・プログラム
JP3569241B2 (ja) パケット受信装置及びパケット受信方法
KR20110090596A (ko) 지터 보정 방법 및 장치
JP2007110395A (ja) ストリームデータ転送装置、ストリームデータ転送方法、及びそれらに用いるプログラム及び記録媒体
US20080187075A1 (en) Data transfer apparatus and transfer control method
JP4266733B2 (ja) 映像受信装置
JP5591892B2 (ja) コンテンツ配信サーバ装置及びその制御方法
JP5522987B2 (ja) 送信装置、送信方法、及びコンピュータプログラム
JP2005318190A (ja) 映像配信方法およびシステム
JP2004289862A (ja) パケット受信装置及びパケット受信方法
KR20160075418A (ko) 지터 보정 방법 및 장치
JP2003008640A (ja) ストリーム配信システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130430

R151 Written notification of patent or utility model registration

Ref document number: 5264349

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees