以下に、本願の開示する符号化装置、符号化システム及び信号伝送方法の実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示する符号化装置、符号化システム及び信号伝送方法が限定されるものではない。
図1は、実施例1に係る符号化システムのブロック図である。本実施例に係る符号化システムは現用系符号化装置1及び待機系符号化装置2を有している。この現用系符号化装置1が第1符号化装置の一例である。また、待機系符号化装置2が第2符号化装置の一例である。
図1に示すように、現用系符号化装置1は、第2送信用バッファ11、送信部12及びデータ処理部16を有している。
データ処理部16は、外部装置から映像信号の入力を受ける。そして、データ処理部16は、映像信号に対して符号化処理を施す。そして、データ処理部16は、符号化した映像信号を第2送信用バッファ11に出力する。
第2送信用バッファ11は、メモリなどの記憶装置である。第2送信用バッファ11は、データ処理部16から映像信号の入力を受ける。そして、第2送信用バッファ11は、データ処理部16から入力された映像信号を蓄積していく。
送信部12は、第2送信用バッファ11に蓄積された映像信号を読み出し、後述する待機系符号化装置2の受信部23に向けてデータ処理部16に向けて読み出した映像信号を伝送路3を介して順次送出していく。また、送信部12は、待機系符号化装置2に障害が発生した場合には、読み出した映像信号を伝送路3を介してエンドユーザに送信する。
図1に示すように、待機系符号化装置2は、第2送信用バッファ21、送信部22、受信部23、データ処理部26を有している。
受信部23は、現用系符号化装置1の送信部12が出力した映像信号を伝送路3を介して受信する。そして、受信部23は、送信部12から受信した映像信号を第2送信用バッファ21へ出力する。ただし、現用系符号化装置1に何らかの障害が発生し、送信部12からの映像信号が受信できない場合には、受信部23は、第2送信用バッファ21への映像信号の出力は行えない。以下では、映像信号を受信できないことを「映像信号の未受信」と言うことがある。
データ処理部26は、外部装置から入力された映像信号に対し符号化処理を行う。ここで、データ処理部26が映像信号の入力を受ける外部装置とは、データ処理部16が映像信号の入力を受ける外部装置と同一の装置である。そして、データ処理部26は、処理を施した映像信号を第2送信用バッファ21へ出力する。
第2送信用バッファ21は、メモリなどの記憶装置である。第2送信用バッファ21は、データ処理部26から映像信号の入力を受ける。そして、データ処理部26は、データ処理部26から入力された映像信号を蓄積していく。
送信部22は、送信部12が送信したデータを受信部23が受信している場合には、受信部23が受信した映像信号を読み出す。そして、送信部22は、第1送信用バッファ24から読み出した映像信号に所定時間の遅延を与えて伝送路3に順次送出する。
また、送信部22は、現用系符号化装置1に障害が発生した場合には、映像信号が連続するように、受信部23が受信した映像信号及び第2送信用バッファ21に蓄積されている映像信号を読み出す。そして、送信部22は、読み出した映像信号を伝送路3に順次送出する。この送信部22から送出されたデータは、エンドユーザに送信される。
以上に説明したように、本実施例に係る符号化システムは、現用系に障害が発生しない状態では、現用系が符号化した映像信号を待機系から伝送路に送出する。そして、現用系に障害が発生した場合、本実施例に係る符号化システムは、待機系で映像信号の符号化を行い、第2送信用バッファに蓄積した後、第1送信用バッファ及び第2送信用バッファに蓄積されたデータを繋ぎ合わせて送出する。また、待機系に障害が発生した場合、現用系で符号化した映像信号をそのまま現用系から送出する。
すなわち、本実施例に係る符号化システムは、現用系符号化装置と待機系符号化装置とを直列に並べ、いずれかに障害が発生した場合に、その障害が発生した装置を迂回して映像信号を送出する。このように、本実施例に係る符号化システムは、自装置による切り替えが行える。言い換えれば、NMSなどによる切り替え制御を受けなくてすむ。そのため、NMSなどの外部装置への障害発生の通知及び制御命令の受信といった時間がかからなくなる。これにより、待機系への切り替えが発生しても、コマ落ちなどのデータの抜けを発生させずに、連続してデータの送出を行える。したがって、映像サービスの中断の発生を低減することが可能となる。
また、本実施例のように、現用系符号化装置と待機系符号化装置が直列に並べることで、同一装置内の回路規模を小さくでき、コストを抑えることが可能となる。
図2は、実施例2に係る符号化システムのブロック図である。本実施例に係る符号化システムは、現用系エンコーダ1及び待機系エンコーダ2を有している。現用系エンコーダ1が「第1符号化装置」の一例である。また、待機系エンコーダ2が「第2符号化装置」の一例である。そして、現用系エンコーダ1及び待機系エンコーダ2はいずれも放送局4から映像ストリームを受信する。ここで、本実施例では、現用系エンコーダ1及び待機系エンコーダ2は、映像機器で撮影された映像素材を映像ストリームとして放送局4から受けているが、これは、映像素材を撮影した映像機器などから映像ストリームを受けてもよい。現用系エンコーダ1及び待機系エンコーダ2はIPTVヘッドエンドである。また、現用系エンコーダ1及び待機系エンコーダ2は、伝送路3を介して接続されている。現用系エンコーダ1と待機系エンコーダ2とは互いにデータの授受を行うことができる。ただし、以下では、説明の都合上、現用系エンコーダ1と待機系エンコーダ2とのデータの授受において伝送路3を省略して説明することがある。
以下の説明において、エンコーダの障害とはエンコーダから映像ストリームが送出できなくなった状態を指すものとする。
図2に示すように、現用系エンコーダ1は、第2送信用バッファ11、送信部12、受信部13、第1送信用バッファ14、制御部17、ネットワークインタフェース18、信号入力部161及び符号化部162を有している。また、待機系エンコーダ2は、第2送信用バッファ21、送信部22、受信部23、第1送信用バッファ24、中断位置特定部25、制御部27、ネットワークインタフェース28、信号入力部261、符号化部262及び受信用バッファ29を有している。
まず、現用系エンコーダ1について説明する。ネットワークインタフェース18は、伝送路3と現用系エンコーダ1の各部とのデータの受け渡しの仲介を行うインタフェースである。実際には現用系エンコーダ1の各部と伝送路3とデータの授受はネットワークインタフェース18を介して行われるが、以下では、説明の都合上、伝送路3と現用系エンコーダ1とのデータの授受においてネットワークインタフェース18を省略して説明することがある。
信号入力部161は、放送局4から送信された映像ストリームの入力を受ける。そして、信号入力部161は、映像ストリームを符号化部162へ出力する。
符号化部162は、映像ストリームの入力を信号入力部161から受ける。そして、符号化部162は、映像ストリームに対し符号化処理を施す。本実施例では、符号化部162は、例えば、符号化処理の一つとして映像ストリームに対して圧縮処理を施す。本実施例では、符号化処理を施された映像ストリームの圧縮データにはその映像ストリームのシーケンス番号も含まれている。以下では、符号化処理を施された映像ストリームを単に「映像ストリーム」と呼ぶことがある。符号化部162は、映像ストリームを送信用バッファ11へ出力する。信号入力部161と符号化部162とが「第1処理部」の一例である。
第2送信用バッファ11は、メモリなどの情報記憶装置である。そして、第2送信用バッファ11は、符号化部162から入力された映像ストリームを蓄積していく。ここで、第2送信用バッファ11に蓄積されている映像ストリームは、後述する送信部12が受信部23又は伝送路3を介してエンドユーザに向けて送信を行うと、その送信された映像ストリームに該当する映像ストリームが削除される。このように、第2送信用バッファ11には映像ストリームが一定時間の間蓄積される。
受信部13は、待機系エンコーダ2の障害発生前には、送出確認パケットを送出確認通知部271から受信する。そして、受信部13は、送出確認パケットの受信通知を制御部17へ出力する。この受信通知には、例えばシーケンス番号などの映像ストリームの識別情報が含まれている。受信部13は「情報受信部」の一例である。
ここで、送出確認パケットの構造について説明する。図3は送出確認パケット及び制御パケットを説明するための図である。図3に示すように送信確認パケットは、アドレスフィールド301、送出確認/制御フィールド302及びデータ領域303といった領域を有する。そして、図3の各領域の下段にはその領域に含まれる情報の一例を記載している。アドレスフィールド301には、送信先アドレスや送信元アドレスが含まれる。送信先アドレスはマルチキャストアドレスでもユニキャストアドレスでもよい。送出確認パケットの送出確認/制御フィールド302には、待機系エンコーダ2から現用系エンコーダ1への送出確認パケットには、例えば送出確認の情報が含まれる。そして、待機系エンコーダ2から現用系エンコーダ1への送出確認パケットには、データ領域には、シーケンス番号が含まれる。現用系エンコーダ1は、このような送出確認パケットを送信することで、データ領域303に記載されたシーケンス番号を有する映像ストリームの送出が完了したことが把握できる。
第1送信用バッファ14は、メモリなどの情報記憶装置である。現用系エンコーダ1に障害が発生していない場合には、第1送信用バッファ14は、送信部12が受信部23に向けて送信した映像ストリームの送信先アドレスをエンドユーザ向けのアドレスに書き換え蓄積していく。この第1送信用バッファ14に蓄積された映像ストリームは、後述するように、送出確認パケットを受信部13が受領した後、制御部17によって削除される。そして、現用系エンコーダ1の障害発生後は、第1送信用バッファ14は、受信用バッファ19から入力された映像ストリームを蓄積していく。第1送信用バッファ11には映像ストリームが一定時間の間蓄積される。
次に、送信部12について説明するが、送信部12は、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合、現用系エンコーダ1で障害が発生した場合、待機系エンコーダ2で障害が発生した場合で動作が異なる。そこで、以下では場合分けをして説明する。
まず、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合について説明する。送信部12は、第2送信用バッファ11に蓄積された映像ストリームを読み出す。そして、送信部12は、読み出した映像ストリームを待機系エンコーダ2の受信部23に向けて送出する。ここで、送信部12から受信部23に向けて送出した映像ストリームは、待機系エンコーダ2を送信先アドレスとして指定しているので、伝送路3を介してエンドユーザに送信されることはない。また、本実施例ではコストを下げるため現用系エンコーダ1と待機系エンコーダ2との間の通信に伝送路3を用いているが、これは専用の回線を用いても良い。
次に、現用系エンコーダ1に障害が発生した場合について説明する。送信部12は、現用系エンコーダ1に障害が発生しているため、待機系エンコーダ2の受信部23に向けて送出できない。そこで、送信部12は映像ストリームの送信を行わず、待機状態となる。
次に、待機系エンコーダ2に障害が発生した場合について説明する。送信部12は、映像ストリームのエンドユーザへの送信命令を制御部17から受ける。そして、送信部12は、第1送信用バッファ14に蓄積された映像ストリームを読み出す。ここで、第1送信用バッファ14に蓄積されている映像ストリームは送信先アドレスがエンドユーザになっている。そこで、送信部12は、第1送信用バッファ14から読み出した映像ストリームをエンドユーザに送信する。
ここで、送信部12による映像ストリームの送出は、例えば、図3に示すような制御パケットを用いて行われる。この場合、制御パケットのアドレスフィールドには待機系エンコーダ2のアドレスが記載される。また、送出確認/制御フィールド302は映像ストリームの送出の情報を含む。さらに、データ領域303は、映像ストリームを含む。この映像ストリームは符号化されたものであり、シーケンス番号なども含む。
次に、制御部17について説明するが、制御部17は、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合、現用系エンコーダ1で障害が発生した場合、待機系エンコーダ2で障害が発生した場合で動作が異なる。そこで、以下では場合分けをして説明する。制御部17は、「第1制御部」の一例である。
まず、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合について説明する。制御部17は、後述する待機系エンコーダ2の送出確認通知部271から送出確認パケットを受け取ると、第1送信用バッファ14に蓄積された送出確認が行われた該当映像ストリームを削除する。
次に、現用系エンコーダ1で障害が発生した場合について説明する。制御部17は、受信部13から送出確認パケットの受信通知を受けても無視する。また、障害により現用系エンコーダ1は映像ストリームを送信できないが、その後映像ストリームを遅れる状態に復旧する場合も考えられる。しかし、待機系エンコーダ2に切り替わった後に、現用系エンコーダ1から映像ストリームが送出されることは好ましくない。そこで、制御部17は、データを送信しないように送信部12を制御する。
次に、待機系エンコーダ2で障害が発生した場合について説明する。制御部17は、受信部13から、制御部27から送出確認パケットを受信しない旨の通知を受信する。そして、制御部17は、最後に受信した送出確認パケットに対応するフレームを特定する。そして、制御部17は、最後に受信した送出確認パケットに対応するフレームの次のフレームからの映像ストリームを第1送信用バッファ14から読み出し、その読み出した映像ストリームをエンドユーザに送信するよう送信部12を制御する。
次に、待機系エンコーダ2について説明する。ネットワークインタフェース28は、伝送路3と待機系エンコーダ2の各部とのデータの受け渡しの仲介を行うインタフェースである。実際には待機系エンコーダ2の各部と伝送路3との間のデータの授受はネットワークインタフェース28を介して行われるが、以下では説明の都合上、待機系エンコーダ2と伝送路3との間のデータの授受においてネットワークインタフェース28を省略して説明することがある。
信号入力部261は、放送局4から送信された映像ストリームの入力を受ける。そして、信号入力部261は、映像ストリームを符号化部262へ出力する。
符号化部262は、映像ストリームの入力を信号入力部261から受ける。そして、符号化部262は、現用系エンコーダ1に障害が発生していない場合、受信した映像ストリームを破棄していく。これに対して、現用系エンコーダ1に障害が発生した場合、符号化部262は、符号化の実効の命令を制御部17から受けて、映像ストリームに対し符号化処理を施す。そして、符号化部262は、映像ストリームを第2送信用バッファ21へ出力する。ここで、本実施例では符号化部262は、現用系エンコーダ1に障害が発生していない場合には、符号化を行わない。ただし、現用系エンコーダ1に障害が発生していない場合にも、符号化部262は符号化を行ってもよい。信号入力部261と符号化部262とは「第2処理部」の一例である。
第2送信用バッファ21は、メモリなどの情報記憶装置である。そして、送信用バッファ21は、現用系エンコーダ1に障害が発生した場合、符号化部262から入力された映像ストリームを蓄積していく。符号化部262に蓄積された映像ストリームのうち、後述する送信部22がエンドユーザに向けて送信した映像ストリームと一致するものは削除されていく。
次に、受信部23について説明するが、受信部23は、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合、現用系エンコーダ1に障害が発生した場合、待機系エンコーダ2に障害が発生した場合で動作が異なる。そこで、以下では場合分けをして説明する。
まず、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合について説明する。受信部23は、送信部12から送信された映像ストリームを受信する。そして、受信部23は、映像ストリームを受信用バッファ29へ出力する。また、受信部23は、現用系エンコーダ1から映像ストリームを受信した旨を制御部27に通知する。
次に、現用系エンコーダ1が障害した場合について説明する。受信部23は、送信部12からの映像ストリームを受信できなくなる。そこで、受信部23は、現用系エンコーダ1からの映像ストリームが受信できなくなった旨を制御部27へ通知する。
次に、待機系エンコーダ2が障害した場合について説明する。この場合、送信部12からの映像ストリームの入力が停止するため、受信部23は待機状態となる。
受信用バッファ29は、メモリなどの情報記憶装置である。そして、受信用バッファ29は、受信部23から入力された映像ストリームを記憶して、蓄積していく。ただし、受信部23からの映像ストリームの入力が停止すると、受信用バッファ29には映像ストリームが蓄積していかないため、受信用バッファには停止するまでの映像ストリームが蓄積された状態となる。そして、受信用バッファ29は、蓄積している映像ストリームの送信先アドレスをエンドユーザ向けのアドレスに変換して、第1送信用バッファ24に出力する。
第1送信用バッファ24は、メモリなどの情報記憶装置である。そして、第1送信用バッファ24は、現用系エンコーダ1で符号化された映像ストリームの入力を受信用バッファ29から受ける。そして、第1送信用バッファ24は、現用系エンコーダ1で符号化された映像ストリームを蓄積していく。
次に、送信部22について説明するが、送信部22は、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合、現用系エンコーダ1に障害が発生した場合、待機系エンコーダ2に障害が発生した場合で動作が異なる。そこで、以下では場合分けをして説明する。
まず、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合について説明する。送信部22は、第1送信用バッファ24に蓄積された映像ストリームを読み出す。ここで、第1送信用バッファ24に蓄積されている映像ストリームの送信先アドレスはエンドユーザ向けとなっている。そこで、送信部22は、第1送信用バッファ24から読み出した映像ストリームをエンドユーザに送信する。ここで、送信部22は、第1送信用バッファ24から映像ストリームを読み出し、エンドユーザに送信するに際して、現用系エンコーダ1の出力に対して所定時間の遅延を与える。本実施例では、送信部22は、170msの所定時間の遅延を与えるものとする。本実施例では、170msは5つの映像ストリーム(5フレーム)分の時間にあたるものとする。すなわち、本実施例では、現用系エンコーダ1で出力された映像ストリームに第1送信用バッファ24で遅延が与えられて、現用系エンコーダ1で出力されたタイミングに対して170ms後に送信部22から送出されることになる。
また、送信部22は、エンドユーザに向けて送信した映像ストリームの送出確認パケットを現用系エンコーダ1の制御部17へ送信する。この送信確認パケットには、例えば映像ストリームのシーケンス番号などの映像ストリームの識別情報が含まれている。
次に、現用系エンコーダ1に障害が発生した場合について説明する。送信部22は第1送信用バッファ24から映像ストリームを読み出す。そして、送信部22は、読み出した映像ストリームを伝送路3を介してエンドユーザに送信する。ここで、後述するように、障害発生による映像ストリームの中断位置からデータが連続するように、第2送信用バッファ21に蓄積されている映像ストリームが繋ぎあわされた映像ストリームが第1送信用バッファ21に蓄積されている。そのため、送信部22が送信する映像ストリームは中断が発生しない連続した映像ストリームとなる。
次に、待機系エンコーダ2に障害が発生した場合について説明する。送信部22は、映像ストリームが送信できなくなると、現用系エンコーダ1の受信部13への送出確認パケットの送信を停止する。
中断位置特定部25は、現用系エンコーダ1で障害が発生した場合、第2送信用バッファ21が蓄積している映像ストリームで、第1送信用バッファ24が蓄積している映像ストリームの中断位置と一致する位置を特定する命令を制御部27から受信する。そして、中断位置特定部25は、第2送信用バッファ21が蓄積している映像ストリームと第1送信用バッファ24が蓄積している映像ストリームとを比較する。例えば、中断位置特定部25は、第1送信用バッファ24が蓄積している映像ストリームに含まれている中断位置の直前のチェックポイントを特定する。そして、中断位置特定部25は、第2送信用バッファ21が蓄積している映像ストリームにおける同じ位置のチェックポイントを特定する。そして、中断位置特定部25は、そのチェックポイントから第1送信用バッファ24が蓄積している映像ストリームと第2送信用バッファ21が蓄積している映像ストリームとを順番に確認していく。これにより、中断位置特定部25は、第1送信用バッファ24の映像ストリームが中断した位置にあたる第2送信用バッファ21の映像ストリームの位置を特定する。そして、中断位置特定部25は、第2送信用バッファ21の映像ストリームにおける特定した位置及び第1送信用バッファ24に蓄積されている映像ストリームの中断した位置を制御部27へ出力する。
次に、制御部27について説明するが、制御部27は、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合、現用系エンコーダ1で障害が発生した場合、待機系エンコーダ2で障害が発生した場合で動作が異なる。そこで、以下では場合分けをして説明する。
まず、現用系エンコーダ1及び待機系エンコーダ2のいずれにも障害が発生していない場合について説明する。制御部27は、現用系エンコーダ1から映像ストリームを受けた旨の通知を受信部23から受ける。この場合、制御部27は、現用系エンコーダ1から入力された映像ストリームを第1送信用バッファ24から読み出し、エンドユーザへ送出する状態を維持するよう送信部22を制御する。
次に、待機系エンコーダ2に障害が発生した場合について説明する。制御部27は、待機系エンコーダ2からの映像ストリームが受信できなくなった旨の通知を受信部23から受ける。そして、制御部27は、第2送信用バッファ21が蓄積している映像ストリームにおける、第1送信用バッファ24が蓄積している映像ストリームの中断位置と一致する位置を特定する命令を中断位置特定部25へ出力する。そして、制御部27は、第2送信用バッファ21の映像ストリームにおける特定した位置及び第1送信用バッファ24に蓄積されている映像ストリームの中断した位置の入力を中断位置特定部25から受ける。制御部27は、第1送信用バッファ24に蓄積されている映像ストリームに連続するように、第2送信用バッファ21に蓄積されている映像ストリームを第1送信用バッファ24に転送して蓄積させる。例えば、制御部27は、第1送信用バッファ24が蓄積している映像ストリームの中断位置のから後の映像ストリームを、第2送信用バッファ21の映像ストリームから読み出して第1送信用バッファ24に転送する。そして、制御部27は、ここで、制御部27は、第2送信用バッファ21に蓄積されている映像ストリームの送信先アドレスをエンドユーザ向けに変更する。これにより、制御部27は、第1送信用バッファ24が蓄積している映像ストリームと第2送信用バッファ21が蓄積している映像ストリームとを連続するように繋ぎ合わせることができる。そして、制御部27は、第1送信用バッファ24が蓄積している映像ストリームをエンドユーザに向けて送信するよう送信部22を制御する。ここで、送信部22が映像ストリームに所定時間の遅延を与えているため、第2送信用バッファ21が蓄積している映像ストリームは、現用系エンコーダ1の送信部12から受信する映像ストリームに対して所定時間前の映像ストリームが残っている。そのため、中断位置までには所定時間の余裕があり、その間に、中断位置の特定及び映像信号の繋ぎ合わせを行うことができる。
次に、待機系エンコーダ2に障害が発生した場合について説明する。制御部27は、映像ストリームが送信部22から出力できなくなると、送出確認通知部271による制御部17に向けた送信確認パケットの送信を停止する。また、障害により制御部27から送信確認パケットが送信できなくなった場合も、送出確認通知部271による送信確認パケットの送信は停止する。
次に、図4を参照して、現用系障害発生時の切り替えの全体的な処理の流れを説明する。ここで、図4は、現用系障害発生時の切り替えの処理を説明するための図である。
図4に示すように、本実施例に係る情報伝送システムは、実際には、MatrixSW5、スイッチ6、ルータ7を備えている。また、ここでは、エンコーダがn台配置されているものとする。そして、現用系エンコーダ1と待機系エンコーダ2が冗長構成として組み合わされているものとする。図4では分かりやすいように、実線の矢印で障害発生前のデータの流れを示し、点線の矢印で障害発生後のデータの流れを示している。
現用系エンコーダ1に障害が発生する前は、放送局4から送信された映像ストリームは、MatrixSW5を介して現用系エンコーダ1に入力される(ステップS101)。そして、映像ストリームは、現用系エンコーダ1から待機系エンコーダ2に送信される(ステップS102)。そして、待機系エンコーダ2から現用系エンコーダ1に対して送出確認パケットが送信される(ステップS103)。そして、待機系エンコーダ2は、スイッチ6及びルータ7を経由させ、IPネットワークを介してエンドユーザに映像ストリームを送信する(ステップS104)。
現用系エンコーダ1に障害が発生すると、障害発生前のデータの流れのうち、ステップS102におけるデータの流れが停止してしまう。そこで、ステップS102における映像ストリームの受信ができなくなると、待機系エンコーダ2への切り替えが行われる。すると処理は次のようになる。すなわち、待機系エンコーダ2は放送局4から送信された映像ストリームを受信する(ステップS201)。そして、待機系エンコーダ2は、スイッチ6及びルータ7を経由させ、IPネットワークを介してエンドユーザに映像ストリームを送信する(ステップS202)。
次に、図5を参照して、現用系障害発生時の切り替えにおける映像ストリームの流れを説明する。ここで、図5は、現用系障害発生時の切り替えにおける映像ストリームの流れを説明するための図である。図5の現用系エンコーダ1及び待機系エンコーダ2では、説明を分かりやすくするため、以下の説明に必要のない各部を省略して記載している。さらに、図5において、実線の矢印が切り替え前の映像ストリームの流れを現しており、点線の矢印が切り替え後の映像ストリームの流れを表している。
まず、切り替え前の映像ストリームの流れについて説明する。信号入力部161は、映像ストリームの入力を受ける(ステップS301)。そして、信号入力部161から符号化部162に映像ストリームが入力され(ステップS302)、符号化部162において圧縮などの符号化が行われる。そして、符号化部162から第2送信用バッファ11に映像ストリームが入力される(ステップS303)。そして、送信部12は、第2送信用バッファ11から映像ストリームを読み出し(ステップS304)、受信部23へ送信する(ステップS305)。そして、受信部23から第1送信用バッファ24に映像ストリームが入力される(ステップS306)。そして、第1送信用バッファ24に蓄積されている映像ストリームは、第2送信用バッファ21に転送される(ステップS307)。そして、送信部22は、第2送信用バッファ21から映像ストリームを読み出し(ステップS308)、伝送路を介してエンドユーザに映像ストリームを送信する(ステップS309)。
次に、切り替え後の映像ストリームの流れについて説明する。信号入力部261は、映像ストリームの入力を受ける(ステップS401)。そして、信号入力部261から符号化部262へ映像ストリームが入力され(ステップS402)、符号化部262において圧縮などの符号化が行われる。そして、符号化部262から第2送信用バッファ21へ映像ストリームが入力される(ステップS403)。そして、送信部22は、第2送信用バッファ21から映像ストリームを読み出し(ステップS404)、伝送路を介してエンドユーザに映像ストリームを送信する(ステップS405)。
このように、現用系エンコーダ1と待機系エンコーダ2とが直列に配置されており、現用系障害発生前には現用系エンコーダ1で符号化された映像ストリームは待機系エンコーダ2を経由して伝送路に送出される。そして、現用系障害発生による切り替え後には、直接待機系エンコーダ2に映像ストリームが入力され、その映像ストリームに対して待機系エンコーダ2により符号化がなされた後、映像ストリームが伝送路に送出される。
次に、図6を参照して、待機系障害発生時の切り替えの全体的な処理の流れを説明する。ここで、図6は、待機系障害発生時の切り替えの処理を説明するための図である。
図6では、説明が分かりやすいように、実線の矢印で障害発生前のデータの流れを示し、点線の矢印で障害発生後のデータの流れを示している。
待機系エンコーダ2に障害が発生する前の処理の流れは、図4に示される現用系エンコーダ1に障害が発生する前の処理の流れと同様であり、ステップS101〜ステップS104で表される。
次に、待機系エンコーダ2に障害が発生した場合を説明する。この場合、障害発生前のデータの流れのうち、ステップS103における送出確認パケットの送信が停止してしまう。そこで、ステップS103における送出確認パケットの受信ができなくなると、現用系エンコーダ1による映像ストリームの送出に切り替わる。この場合の処理は次のようになる。すなわち、現用系エンコーダ1は放送局4から送信された映像ストリームを受信する(ステップS401)。そして、現用系エンコーダ1は、スイッチ6及びルータ7を経由させ、IPネットワークを介してエンドユーザに映像ストリームを送信する(ステップS402)。
次に、図7を参照して、待機系障害発生時の切り替えにおける映像ストリームの流れを説明する。ここで、図7は、待機系障害発生時の切り替えにおける映像ストリームの流れを説明するための図である。図7の現用系エンコーダ1及び待機系エンコーダ2では、説明を分かりやすくするため、以下の説明に必要のない各部を省略して記載している。さらに、図7において、実線の矢印が切り替え前の映像ストリームの流れを現しており、点線の矢印が切り替え後の映像ストリームの流れを表している。
切り替え前の映像ストリームの流れは、図5に示される現用系エンコーダ1に障害が発生する前の流れと同様であり、ステップS301〜ステップS309で表される。
次に、切り替え後の映像ストリームの流れについて説明する。信号入力部161は、映像ストリームの入力を受ける(ステップS501)。そして、信号入力部161から符号化部162へ映像ストリームが入力され(ステップS502)、符号化部162において圧縮などの符号化が行われる。そして、符号化部162から第2送信用バッファ11へ映像ストリームが入力される(ステップS503)。そして、送信部12は、第2送信用バッファ11から映像ストリームを読み出し(ステップS504)、伝送路を介してエンドユーザに映像ストリームを送信する(ステップS505)。
このように、現用系エンコーダ1と待機系エンコーダ2とが直列に配置されており、現用系障害発生前には現用系エンコーダ1で符号化された映像ストリームは待機系エンコーダ2を経由して伝送路に送出される。そして、現用系障害発生による切り替え後には、現用系エンコーダ1に映像ストリームが入力され、現用系エンコーダ1で符号化がなされた後、現用系エンコーダ1から映像ストリームが伝送路に送出される。
さらに、図8を参照して、現用系エンコーダ1に障害が発生した場合の処理の流れを説明する。図8は、現用系エンコーダに障害が発生した場合のシーケンス図である。図8の各縦軸は紙面に向かって下側に時間の経過を現している。
現用系エンコーダ1は、符号化した映像ストリームを第2送信用バッファ14に蓄積する(ステップS601)。そして、現用系エンコーダ1は、映像ストリームを待機系エンコーダ2に送信する(ステップS602)。さらに、現用系エンコーダ1は、第2送信用バッファ14に蓄積している映像ストリームを第1送信用バッファ11に転送し、第2送信用バッファ14に保持させる(ステップS603)。待機系エンコーダ2は、現用系エンコーダ1から受信した映像ストリームを第1送信用バッファ24に蓄積する(ステップS604)。そして、待機系エンコーダ2は、第1送信用バッファ24に蓄積している現用系エンコーダ1が符号化した映像ストリームを伝送路3に向けて送出する(ステップS605)。そして、待機系エンコーダ2は、送出した映像ストリームの送出確認パケットを現用系エンコーダ1に送信する(ステップS606)。
障害が発生するまでは、ステップS601からステップS606までが繰り返される。
ここで、現用系エンコーダ1に障害が発生する(ステップS607)と、現用系エンコーダ1は、映像ストリームの送信を停止する(ステップS608)。
すると、待機系エンコーダ2は、現用系エンコーダ1からの映像ストリームの未受信をトリガとして、現用系エンコーダ1の障害発生を検知する(ステップS609)。
そして、待機系エンコーダ2は、映像ストリームに対する符号化処理を開始し、符号化した映像ストリームを第2送信用バッファ24に蓄積する(ステップS610)。
そして、待機系エンコーダ2は、ステップS604において第1送信用バッファ24に蓄積された映像ストリームと、ステップS610において第2送信用バッファ21に蓄積された映像ストリームとを比較する。そして、待機系エンコーダ2は、中断位置を特定し、第1送信用バッファ24に蓄積された映像ストリームと、第2送信用バッファ21に蓄積された映像ストリームとを繋ぎ合わせる(ステップS611)。
そして、待機系エンコーダ2は、自装置で符号化した映像ストリームを伝送路3に向けて送出する(ステップS612)。
さらに、図9を参照して、待機系エンコーダ2に障害が発生した場合の処理の流れを説明する。図9は、待機系エンコーダに障害が発生した場合のシーケンス図である。図9の各縦軸は紙面に向かって下側に時間の経過を現している。
現用系エンコーダ1は、符号化した映像ストリームを第2送信用バッファ14に蓄積する(ステップS701)。そして、現用系エンコーダ1は、映像ストリームを待機系エンコーダ2に送信する(ステップS702)。さらに、現用系エンコーダ1は、第2送信用バッファ14に蓄積している映像ストリームを第1送信用バッファ11に転送し、第2送信用バッファ14に保持させる(ステップS703)。待機系エンコーダ2は、現用系エンコーダ1から受信した映像ストリームを第1送信用バッファ24に蓄積する(ステップS704)。そして、待機系エンコーダ2は、第1送信用バッファ24に蓄積している現用系エンコーダ1が符号化した映像ストリームを伝送路3に向けて送出する(ステップS705)。そして、待機系エンコーダ2は、送出した映像ストリームの送出確認パケットを現用系エンコーダ1に送信する(ステップS706)。
障害が発生するまでは、ステップS701からステップS706までが繰り返される。
ここで、待機系エンコーダ2に障害が発生する(ステップS707)と、待機系エンコーダ2は、送出確認パケットの送信を停止する(ステップS708)。
すると、現用系エンコーダ1は、待機系エンコーダ2からの送出確認パケットの未受信をトリガとして、待機系エンコーダ2の障害発生を検知する(ステップS709)。
そして、現用系エンコーダ1は、ステップS703において第1送信用バッファ14に蓄積された映像ストリームから、送出確認パケットを受信した映像ストリームの次の映像ストリームを特定する(ステップS710)。
そして、待機系エンコーダ2は、特定した映像ストリーム以降の映像ストリームを伝送路3に創出する。(ステップS711)。
このように、現用系エンコーダ1及び待機系エンコーダ2のいずれが故障したとしても、その前の段階で、故障が発生していないエンコーダに中断位置を含む映像ストリームが蓄積されている。これにより、連続した映像ストリームを送信することができる。
以上に説明したように、本実施例に係る伝送システムは、現用系エンコーダと待機系エンコーダを直列に並べている。そして、各エンコーダに障害が発生しない状態では、現用系エンコーダが符号化した映像ストリームを待機系エンコーダの第1送信用バッファで蓄積した後に待機系から伝送路に送出する。そして、現用系エンコーダに障害が発生した場合、待機系エンコーダで映像ストリームの符号化した映像ストリームと、障害発生前に現用系エンコーダから受信した映像ストリームとを繋ぎ合わせて送出する。また、待機系エンコーダに障害が発生した場合には、現用系エンコーダから映像ストリームを送出する。
すなわち、本実施例に係る伝送システムは、自装置による障害発生時の切り替えが行える。言い換えれば、NMSなどによる切り替え制御を受けなくてすむ。そのため、NMSなどの外部装置への障害発生の通知及び制御命令の受信といった無駄な時間が必要なくなる。これにより、待機系への切り替えが発生しても、コマ落ちなどのデータの抜けを発生させずに、連続して映像ストリームの送出を行える。したがって、映像サービスの中断の発生を低減することが可能となる。
また、本実施例のように、現用系エンコーダと待機系エンコーダとを直列に並べることで、同一装置内の回路規模を小さくでき、コストを抑えることが可能となる。
ここで、本実施例では、現用系エンコーダと待機系エンコーダとの役割を分けたため、待機系エンコーダの各部の中に現用系エンコーダが備えないものがある。ただし、いずれのエンコーダも現用系及び待機系のいずれにも用いるようにするためには、現用系エンコーダとなるエンコーダにも受信用バッファや中断位置特定部を設けたほうが好ましい。このように、受信用バッファや中断位置特定部を設けたとしても、現用系エンコーダは本実施例で説明した動作は可能である。
図10は、実施例3に係る符号化システムのブロック図である。本実施例に係る伝送システムは、障害が発生による切り替えが行われた場合に、障害を修正した後に障害発生前の状態に復旧することが、実施例1と異なるものである。以下では、障害発生前の状態に復旧することを「切戻し」と言うことがある。そこで、以下の説明では、切戻しを行う構成及び動作について主に説明する。図10において図2と同じ符号を有するものは、特に説明のない限り同じ機能を有するものとする。
本実施例に係る現用系エンコーダ1は、実施例1の現用系エンコーダに加えて、受信用バッファ19及び送出確認通知部171を備える。まず、現用系エンコーダ1の各部について説明する。
受信部13は、現用系エンコーダ1の障害発生後その障害が修正されると、符号化部262で符号化された映像ストリームの入力を待機系エンコーダ2の送信部22から受ける。そして、受信部13は、映像ストリームを受信用バッファ19へ出力する。
また、受信部13は、待機系エンコーダ2の障害発生後その障害が修正されると、待機系エンコーダ2の送信部22から映像ストリームの入力を受ける。そして、受信部13は、受信した映像ストリームの識別情報を制御部17へ出力する。
受信用バッファ19は、映像ストリームの入力を受信部13から受け、その映像ストリームを蓄積していく。さらに、受信用バッファ19は、蓄積した映像ストリームの送信先アドレスをエンドユーザ向けのアドレスに変換して、第1送信用バッファ14へ出力する。
第1送信用バッファ14は、現用系エンコーダ1の障害発生後その障害が修正されると、待機系エンコーダ2で符号化された映像ストリームの入力を受信用バッファ19から受け、その映像ストリームを蓄積していく。そして、第1送信用バッファ14は、後述するように制御部17が特定した切替位置以降の映像ストリームを、第2送信用バッファ11から受信して蓄積していく。この時、第1送信用バッファ14は、送信先アドレスをエンドユーザ向けに変更して映像ストリームを蓄積していく。
符号化部162は、現用系エンコーダ1の障害発生後その障害が修正されると、放送局4より入力された映像ストリームの符号化を開始する。そして、符号化部162は、符号化した映像ストリームを送信用バッファ11に出力する。また、符号化部162は、現用系エンコーダ1の障害発生後その障害が修正されると、放送局4より入力された映像ストリームの符号化を開始する。
第2送信用バッファ11は、待機系エンコーダ2の障害発生後その障害が修正されると、映像ストリームの入力を符号化部162より受ける。そして、第2送信用バッファ11は、映像ストリームを蓄積していく。また、第2送信用バッファ11は、現用系エンコーダ1の障害発生後その障害が修正された場合も同様に、映像ストリームの入力を符号化部162より受け、その映像ストリームを蓄積していく。そして、第2送信用バッファ11は、制御部17が特定した切替位置以降の映像ストリームを第2送信用バッファ11に出力する。ここで、第2送信用バッファ11に蓄積されている切替位置より前の映像ストリームは破棄される。
送信部12は、待機系エンコーダ2の障害発生後その障害が修正されると、エンドユーザに向けた映像ストリームの送信の停止命令を制御部17から受ける。そして、送信部12は、エンドユーザに向けた映像ストリームの送信を停止する。さらに、送信部12は、待機系エンコーダ2の受信部23に向けた映像ストリームの送信を開始する。ここで、待機系エンコーダ2と現用系エンコーダ1とにおいては、映像ストリームの送信において所定の遅延が与えられている。そこで、送信部12が受信部23に向けて送信する映像ストリームは、障害が修正され切戻しトリガとなる待機系エンコーダ2から送信された映像ストリームに対して所定時間分だけ先の映像ストリームとなる。本実施例では、170ms先の映像ストリームとなる。
また、送信部12は、現用系エンコーダ1の障害発生後その障害が修正されると、第1送信用バッファ11に蓄積されている映像ストリームを、待機系エンコーダ2の受信部23へ送信する。ここで、第1送信用バッファ11には、切替位置以降の映像ストリームが蓄積されているため、送信部12は、受信部23に対して切替位置以降の映像ストリームを送信することになる。
制御部17は、現用系エンコーダ1の障害発生後その修正がされると、第1送信用バッファ14及び第2送信用バッファ11に蓄積された映像ストリーム、並びに待機系エンコーダ2の第1送信用バッファ21の遅延時間を比較し、映像ストリームの切替位置を特定する。そして、制御部17は、切替位置以降の映像ストリームを第2送信用バッファ11から第1送信用バッファ14へ転送し、第2送信用バッファ11に蓄積するよう制御する。さらに、制御部17は、第1送信用バッファ14に蓄積されている映像ストリームのうち、切替位置より前のものを削除するよう制御する。
また、制御部17は、待機系エンコーダ2の障害発生後その修正がされると、待機系エンコーダ2からの映像ストリームを受信した旨の通知を受信部13より受ける。そして、制御部17は、受信部13が受信した映像ストリームに該当する映像ストリーム以降の映像ストリームをエンドユーザに送信しないよう送信部12を制御する。さらに、制御部17は、第2送信用バッファ11に蓄積されている映像ストリームを待機系エンコーダ2の受信部23へ出力するよう送信部12を制御する。
次に、待機系エンコーダ2の各部について説明する。
受信部23は、現用系エンコーダ1の障害発生後その修正がされると、現用系エンコーダ1の送信部12から切替位置以降の映像ストリームの入力を受ける。そして、受信部23は、映像ストリームを受信用バッファ29へ出力する。
また、受信部23は、待機系エンコーダ2の障害発生後その修正がされると、現用系エンコーダ1の送信部12から映像ストリームの入力を受ける。そして、受信部23は、映像ストリームを受信用バッファ29へ出力する。
受信用バッファ29は、映像ストリームの入力を受信部23から受け、その映像ストリームを蓄積していく。さらに、受信用バッファ29は、蓄積した映像ストリームの送信先アドレスをエンドユーザ向けのアドレスに変換して、第1送信用バッファ24へ出力する。
第1送信用バッファ24は、現用系エンコーダ1の障害発生後その修正がされると、受信用バッファ29から切替位置以降の映像ストリームの入力を受け、その映像ストリームを蓄積していく。
また、第1送信用バッファ24は、待機系エンコーダ2の障害発生後その修正がされると、受信用バッファ29から映像ストリームの入力を受け、その映像ストリームを蓄積していく。ここで、第1送信用バッファ24が蓄積する映像ストリームは、障害が修正され切戻しトリガとなる待機系エンコーダ2から送信された映像ストリームに対して所定時間先の映像ストリーム以降の映像ストリームとなる。例えば、遅延時間が5フレーム分の映像ストリームを送信する時間にあたるとすると、第1送信用バッファ24には、待機系エンコーダ2が送信を再開した映像ストリームから5つあとの映像ストリーム以降の映像ストリームが蓄積されることになる。
符号化部262は、現用系エンコーダ1の障害発生後その修正がされると、制御部27が特定した切替位置以降の映像ストリームの符号化停止の命令を制御部27から受ける。そして、符号化部262は、切替位置以降の映像ストリームの符号化を停止する。
また、符号化部262は、待機系エンコーダ2の障害発生後その修正がされると、放送局4からの映像ストリームに対して符号化を開始する。そして、符号化部262は、符号化した映像ストリームを第2送信用バッファ21に出力する。そして、符号化部262は、現用系エンコーダ1より映像フレームを受信すると、映像ストリームの符号化を終了する。ただし、符号化部262は、少なくとも障害が修正され切戻しトリガとなる待機系エンコーダ2から送信された映像ストリームに対して所定時間先の映像ストリームまでの符号化を行っているものとする。
第2送信用バッファ21は、現用系エンコーダ1の障害発生後その修正がされると、符号化部262が符号化を停止するまで、符号化部262から映像ストリームの入力を受けて、その映像ストリームを蓄積していく。
また、第2送信用バッファ21は、待機系エンコーダ2の障害発生後その修正がされると、符号化部262が符号化を停止するまで、符号化部262から映像ストリームの入力を受けて、その映像ストリームを蓄積していく。
送信部22は、現用系エンコーダ1の障害発生後その修正がされるまでは、符号化部262で符号化された映像ストリームを第2送信用バッファ21から読み出し、伝送路3へ送出する。そして、修正がされると、送信部22は、制御部27が特定した切替位置以降の映像ストリームを第1送信用バッファ24から読み出し、伝送路3へ送出する。
また、送信部22は、待機用エンコーダ2の障害発生後その修正がされると、第2送信用バッファ21に蓄積された符号化部262が符号化した映像ストリームのうち、制御部27が特定した切替位置以降の映像ストリームを伝送路3に送出する。また、送信部22は、伝送路3に送出した映像ストリームと同じ映像ストリームを現用系エンコーダ1の受信部13に送信する。そして、送信部22は、受信部13に最初に送信した映像ストリームから所定時間先の映像ストリームまでは、第2送信用バッファ21に蓄積された自装置で符号化した映像ストリームを読み出し、伝送路3へ出力する。そして、送信部22は、受信部13に最初に送信した映像ストリームから所定時間先の映像ストリーム以降の映像ストリームは、第2送信用バッファ24から読み出し、伝送路3へ送出する。
制御部27は、現用系エンコーダ1の障害発生後その修正がされると、第1送信用バッファ24及び第2送信用バッファ21のそれぞれに蓄積された映像ストリームを比較し、切替位置を特定する。具体的には、第1送信用バッファ24には、制御部17が特定した切替位置以前の映像ストリームが蓄積されている。また第2送信用バッファ21には、符号化部262が符号化した映像ストリームが蓄積されており、この映像ストリームには制御部17が特定した切替位置の映像ストリームも含まれている。そこで、制御部27は、第2送信用バッファ21に蓄積されている映像ストリームにおける制御部17が特定した切替位置を特定する。そして、制御部27は、特定した切替位置までは第2送信用バッファ21に蓄積された映像ストリームを送出するように送信部22を制御する。そして、制御部27は、特定した切替位置以降の映像ストリームは第1送信用バッファ24に蓄積されている映像ストリームを送出するように送信部22を制御する。
また、制御部27は、待機系エンコーダ2の障害発生後その修正がされると、第1送信用バッファ24及び第2送信用バッファ21、並びに第2送信用バッファ21における遅延時間を用いて、切替位置を特定する。例えば、制御部27は、第1送信用バッファ24に蓄積されている映像ストリームであって、遅延時間以上後の映像ストリームのうちの一つを切替位置として特定する。そして、制御部27は、特定した切替位置の映像ストリームから遅延時間分にあたる映像ストリームを第2送信用バッファ24から読み出し、伝送路3及び現用系エンコーダ1の受信部13へ送出するよう送信部22を制御する。さらに、制御部27は、特定した切替位置の映像ストリームから遅延時間以降の映像ストリームを第1送信用バッファ24から読み出し、伝送路3及び現用系エンコーダ1の受信部13へ送出するよう送信部22を制御する。
次に、図11を参照して、現用系障害発生時の切戻しの全体的な処理の流れを説明する。ここで、図11は、現用系障害発生時の切戻し処理を説明するための図である。
図11では、点線の矢印で切戻し前のデータの流れを示し、実線の矢印で切戻し後のデータの流れを示している。
現用系エンコーダ1に障害が発生する前は、放送局4から送信された映像ストリームは、MatrixSW5を介して待機系エンコーダ2に入力される(ステップS801)。そして、待機系エンコーダ2は、スイッチ6及びルータ7を経由させ、IPネットワークを介してエンドユーザに映像ストリームを送信する(ステップS802)。さらに、待機系エンコーダ2は、映像ストリームを現用系エンコーダ1に送信する(ステップS803)。
現用系エンコーダ1の障害が修正されると、現用系エンコーダ1は、ステップS803において待機系エンコーダ2から送信された映像ストリームを受信することができる。これにより切戻しが開始される。この場合の処理は次のようになる。すなわち、現用系エンコーダ1は放送局4から送信された映像ストリームを受信する(ステップS804)。そして、現用系エンコーダ1は、第1送信用バッファ14及び第2送信用バッファ11に蓄積された映像ストリーム、並びに待機系エンコーダ2の第1送信用バッファ21の遅延時間を比較し、切替位置を特定する。そして、現用系エンコーダ1は、切替位置以降の映像ストリームを待機系エンコーダ2に送信する(ステップS805)。待機系エンコーダ2は、現用系エンコーダ1から受信した切替位置以降の映像ストリームを、スイッチ6及びルータ7を経由させ、IPネットワークを介してエンドユーザに送信する(ステップS806)。さらに、待機系エンコーダ2は、エンドユーザに送信した映像ストリームの送出確認パケットを現用系エンコーダ1に送信する(ステップS807)。
次に、図12を参照して、待機系障害発生時の切戻しの全体的な処理の流れを説明する。ここで、図12は、待機系障害発生時の切戻し処理を説明するための図である。
図12では、点線の矢印で切戻し前のデータの流れを示し、実線の矢印で切戻し後のデータの流れを示している。
現用系エンコーダ1に障害が発生する前は、放送局4から送信された映像ストリームは、MatrixSW5を介して現用系エンコーダ1に入力される(ステップS901)。そして、現用系エンコーダ1は、スイッチ6及びルータ7を経由させ、IPネットワークを介してエンドユーザに映像ストリームを送信する(ステップS902)。
待機系エンコーダ2の障害が修正された場合について説明する。現用系エンコーダ1は放送局4から送信された映像ストリームを受信する(ステップS903)。そして、現用系エンコーダ1は、待機系エンコーダに映像ストリームを送信する(ステップS904)。ただし、この時点ではステップS902における現用系エンコーダ1による映像ストリームの送信は行われている。そして、待機系エンコーダ2は、現用系エンコーダ1に送出確認パケットを送信する(ステップS905)。そして、待機系エンコーダ2は、第1送信用バッファ24及び第2送信用バッファ21に蓄積された映像ストリーム、並びに第1送信用バッファ21の遅延時間を用いて、切替位置を特定する。そして、待機系エンコーダ2は、切替位置以降の映像ストリームをスイッチ6及びルータ7を経由させ、IPネットワークを介してエンドユーザに送信する(ステップS906)。そして、ステップS902における現用系エンコーダ1による映像ストリームの送信は、切替位置以降の映像ストリームでは行われなくなる。
次に、図13を参照して、現用系エンコーダ1に障害が発生した場合の切戻し処理の流れを説明する。図13は、現用系エンコーダに障害が発生した場合の切戻し処理のシーケンス図である。図13の各縦軸は紙面に向かって下側に時間の経過を現している。
待機系エンコーダ2は、現用系エンコーダ1の障害時には、待機系エンコーダ2で符号化した映像ストリームを伝送路3へ送出する(ステップS1001)。
現用系エンコーダ1において障害復旧が行われると(ステップS1002)、現用系エンコーダ1は待機系エンコーダ2から映像ストリームを受信する(ステップS1003)。そして、現用系エンコーダ1は、第1送信用バッファ11に待機系エンコーダ2から受信した映像ストリームを蓄積する(ステップS1004)。そして、現用系エンコーダ1は、映像ストリームの符号化を開始し、符号化した映像ストリームを第2送信用バッファ14へ蓄積する(ステップS1005)。そして、現用系エンコーダ1は、第1送信用バッファ11及び第2送信用バッファ14に蓄積されている映像ストリーム、並びに待機系エンコーダ2の第1送信用バッファ24の遅延時間を用いて切替位置を特定する(ステップS1006)。そして、現用系エンコーダ1は、切替位置以降の映像ストリームを待機系エンコーダ2に送信する(ステップS1007)。
待機系エンコーダ2は、現用系エンコーダ1から受信した映像ストリームを第1送信用バッファ24に蓄積し、第2送信用バッファ21に蓄積している映像ストリームと比較して、切替位置を特定する(ステップS1008)。そして、待機系エンコーダ2は、符号化を停止する(ステップS1009)とともに、切替位置以降の映像ストリームとして現用系エンコーダ1が符号化した映像ストリームを伝送路3に送出する(ステップS1010)。そして、待機系エンコーダ2は、送出した映像ストリームの送信確認パケットを現用系エンコーダ1へ送信する(ステップS1011)。
次に、図14を参照して、待機系エンコーダ2に障害が発生した場合の切戻し処理の流れを説明する。図14は、待機系エンコーダに障害が発生した場合の切戻し処理のシーケンス図である。図14の各縦軸は紙面に向かって下側に時間の経過を現している。
現用系エンコーダ1は、待機系エンコーダ2の障害時には、現用系エンコーダ1で符号化した映像ストリームを伝送路3へ送出する(ステップS1101)。
待機系エンコーダ2において障害復旧が行われると(ステップS1102)、待機系エンコーダ2は、映像ストリームの符号化を開始し、符号化した映像ストリームを第2送信用バッファ21へ蓄積する(ステップS1103)。
現用系エンコーダ1は、自装置で符号化した映像ストリームを待機系エンコーダ2へ送信する(ステップS1104)。
待機系エンコーダ2は、現用系エンコーダ1から受信した映像ストリームを第1送信用バッファ24に蓄積する(ステップS1105)。そして、待機系エンコーダ2は、送信確認パケットを現用系エンコーダ1へ送信する(ステップS1106)。さらに、待機系エンコーダ2は、第1送信用バッファ24及び第2送信用バッファ21に蓄積されている映像ストリーム、並びに第1送信用バッファ24の遅延時間を用いて、切替位置を特定する(ステップS1107)。そして、待機系エンコーダ2は、特定した切替位置まで自己が符号化した映像ストリームを伝送路3に送出する(ステップS1108)。
現用系エンコーダ1は、待機系エンコーダ2に映像ストリームを送信する(ステップS1109)。
待機系エンコーダ2は、自装置における符号化を停止し(ステップS1110)、切替位置以降の映像ストリームとして現用系エンコーダ1が符号化した映像ストリームを伝送路3へ送出する(ステップS1111)。
以上に説明したように、本実施例にかかる伝送システムは、障害発生によって切り替わった状態で、障害が発生したエンコーダの障害復旧が行われると、NMSなどの外部装置を使用せずに障害発生前の状態に復旧する。これにより、障害発生前の状態に復旧する場合にも、コマ落ちなどによる映像ストリームの中断を発生させずに連続した映像サービスを提供することが可能となる。
また、本実施例では、障害が発生した場合、障害発生前の状態に復旧する構成を説明したが、例えば、現用系エンコーダに障害が発生した場合、障害復旧後に現用系エンコーダと待機系エンコーダの役割を反対にしてもよい。その場合には、現用系エンコーダにも、中断位置特定部を設けることになる。
本実施例に係る伝送システムは、映像ストリームの送出が行えないという障害以外の障害が発生した場合にも切り替えを行うことができることが、実施例1〜3と異なるものである。そこで、以下では映像ストリームの送出が行えないという障害以外の障害における切り替えについて主に説明する。以下の説明では、実施例2に映像ストリームの送出が行えないという障害以外の障害における切り替える機能を付加した伝送システムを例に説明する。本実施例に係る伝送システムは図2に示すブロック図で表されるものとする。
制御部17は、障害発生を検出するための障害検出条件を記憶している。この障害検出条件とは、例えば温度の上限値などである。そして、制御部17は、例えば、第2送信用バッファ11、送信部12、受信部13、第1送信用バッファ14、ネットワークインタフェース18、信号入力部161及び符号化部162などの状態を監視している。そして、制御部21は、監視対象において障害検出条件を満たす状態が発生した場合に、障害の発生を検出する。例えば、制御部21は、符号化部162における温度が所定温度以上になれば障害発生を検出する。ここで、制御部17が検出する障害は、映像ストリームが送信できなくなるエラーと比較して軽微なエラーである。
制御部17は、障害発生を検出すると、障害発生の通知を制御部27に向けて送信する。この障害発生の通知には、図3で示されるような制御パケットを用いることが好ましい。障害発生の通知に用いられる制御パケットには、アドレスフィールド301の送信先アドレスとして待機系エンコーダのアドレスが用いられる。また、送出確認/制御フィールド302は障害通知の情報を含む。また、切替や切戻しを行う場合には、送出確認/制御フィールド302は切替/切戻し制御の情報を含む。さらに、データ領域303には動作状態などを含む。そして、制御部17は、現用系エンコーダ1から映像ストリームの送出が行いない場合と同様の動作を行うように各部を制御する。具体的には、受信部13から送出確認パケットの受信通知を受けても無視するよう制御する。また、制御部17は、送信部12に映像ストリームを送信させないなどといった制御を行う。
また、制御部17は、待機系エンコーダ2において映像ストリームの送出が行えないという障害以外の障害が発生した場合、障害発生の通知を制御部27から受ける。この場合、制御部17は、待機系エンコーダ2において映像ストリームの送出が行えない場合と同様の動作を各部が行うように各部を制御する。具体的には、制御部17は、最後に受信した送出確認パケットに対応するフレームの次のフレームからの映像ストリームを第1送信用バッファ14から読み出し、その読み出した映像ストリームをエンドユーザに送信するよう送信部12を制御する。
制御部27は、障害発生を検出するための障害検出条件を記憶している。そして、制御部27は、例えば、第2送信用バッファ21、送信部22、受信部23、第1送信用バッファ24、中断位置特定部25、ネットワークインタフェース28、信号入力部261及び符号化部262などの状態を監視している。そして、制御部27は、監視対象において条件を満たす状態が発生した場合に、障害発生を検出する。
制御部27は、障害発生を検出すると、障害発生の通知を制御部17に向けて送信する。そして、制御部27は、待機系エンコーダ2から映像ストリームの送出が行えない場合と同様の動作を行うように各部を制御する。具体的には、制御部27は、送信部22に対してデータを送信しないようにするなどの制御を行う。
また、制御部27は、現用系エンコーダ1において映像ストリームの送出が行えない障害以外の障害が発生した場合、障害発生の通知を制御部17から受ける。この場合、制御部27は、現用系エンコーダ1において映像ストリームの送出が行えない場合と同様の動作を各部が行うように各部を制御する。具体的には、制御部27は、中断位置の特定、映像ストリームの繋ぎ合せ、繋ぎ合せた映像ストリームの送出などが行われるように各部を制御する。
以上に説明したように、本実施例に係る伝送システムは、映像ストリームの送出が行えない障害以外の障害が発生した場合にも切り替えを行う。この点、映像ストリームの送出が行えていても、正常な処理を行えていない場合が考えられる。そして、正常な処理が行えていない映像ストリームを送出すると、正常な映像サービスを提供できないおそれがある。そこで、本実施例に係る伝送システムは、サービスの中断を軽減するとともに、より安全性の高い冗長構成を提供することができる。
さらに、以上に説明した各実施例の構成に、図15のようにNMS8を付加することも可能である。NMS8は、点線で表される管理用の回線81を介して現用系エンコーダ1、待機系エンコーダ2を含むエンコーダ群、MatrixSW5、スイッチ6及びルータ7を管理する。このように、NMS8を付加することで、NMS8を介した切替を行うことも可能となる。これにより、より冗長性を高めることが可能となる。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)外部装置からの映像信号を符号化し、符号化された前記映像信号をバッファに蓄積するとともに、前記バッファに蓄積された前記映像信号を送信する第1符号化部と、
前記第1符号化部が送信した前記映像信号を受信するとともに、前記外部装置からの映像信号を符号化し、前記第1符号化部が送信した映像信号に所定時間の遅延を与えた映像信号又は自己が符号化した映像信号のいずれかを選択的に伝送路へ送出する第2符号化部とを備え、
前記第1符号化部は、前記第2符号化部に障害が発生した場合に、前記伝送路に自己が符号化した映像信号を送出し、
前記第2符号化部は、前記第1符号化部に障害が発生した場合に、自己が符号化した映像信号を前記伝送路に送出する
ことを特徴とする符号化装置。
(付記2)前記第1符号化部又は前記第2符号化部のいずれかに障害が発生した後、該障害が復旧されると、前記第1符号化部は、前記第2符号化部へ映像信号を送信し、前記第2符号化部は、前記第1符号化部から受信した信号を伝送路へ送出することを特徴とする付記1に記載の符号化装置。
(付記3)前記第1符号化部は、
前記外部装置からの映像信号を符号化する第1処理部と、
前記第1符号化部により符号化された映像信号を蓄積する送信用バッファと、
前記送信用バッファに蓄積された映像信号を送信する第1送信部とを備え、
前記第2符号化部は、
前記第1符号化部が送信した映像信号を受信する受信部と、
前記受信部が受信した映像信号を蓄積する第1送信用バッファと、
前記外部装置から受信した映像信号を符号化する第2処理部と、
前記第2符号化部により符号化された映像信号を蓄積する前記第2送信用バッファと、
前記第2送信用バッファに蓄積された映像信号と前記第1送信用バッファに蓄積された映像信号とを比較し、前記第2送信用バッファに蓄積された映像信号における、前記第1送信用バッファに蓄積された映像信号の中断した位置に一致する位置を特定する中断位置特定部と、
前記第1符号化部が送信した映像信号を前記受信部が受信しない場合に、前記第1符号化部に障害が発生したと判定し、前記中断位置特定部が特定した位置を基に、前記第1送信用バッファに蓄積された映像信号と、前記第2送信用バッファに蓄積された映像信号とを繋ぎ合わせる制御部と、
前記第1符号化部が送信した映像信号を前記受信部が受信する場合に、前記第1送信用バッファに蓄積された映像信号に所定時間の遅延を与えて伝送路に送出し、前記第1符号化部が送信した映像信号を前記受信部が受信しない場合に、前記制御部が繋ぎ合わせた映像信号を送出する第2送信部と
を備えたことを特徴とする付記1又は付記2に記載の符号化装置。
(付記4)前記第2符号化部は、前記受信部が受信した映像信号を前記第2送信部が送出した場合に、前記第1送信部に送出確認の通知を行う送出確認通知部を備え、
前記第1符号化部は、前記送出確認通知部からの送出確認の通知を受信する情報受信部を備え、
前記第1送信部は、前記情報受信部が前記送出確認の通知を受信しない場合に、前記第2符号化部に障害が発生したと判定し、前記送信用バッファに蓄積された映像信号を前記伝送路へ送出する
ことを特徴とする付記3に記載の符号化装置。
(付記5)前記第1符号化部は、
前記第1符号化部が送信した映像信号を前記受信部が受信しなくなった後、前記情報受信部が前記第2送信部から映像信号の入力を受けた場合、前記送信用バッファに蓄積されている映像信号における切替位置を特定する第1制御部を備え、
前記第1送信部は、特定された切替位置以降の映像信号を前記受信部に送信し、
前記第2送信部は、前記第2送信用バッファから前記特定された切替位置より前の映像信号を読み出して送信し、前記第1送信用バッファから前記特定された切替位置以降の映像信号を読み出して送信する
ことを特徴とする付記3又は付記4に記載の符号化装置。
(付記6)前記第1送信部は、前記情報受信部が前記送出確認の通知を受信しなくなった後、映像信号が送出できるようになると、映像信号を前記受信部へ送信し、
前記制御部は、前記情報受信部が前記送出確認の通知を受信しなくなった後、受信部が前記第1送信部から映像信号を受信すると、前記第2送信用バッファに蓄積されている映像信号における切替位置を特定し、
前記第2送信部は、前記第2送信用バッファから前記特定された切替位置より前の映像信号を読み出して送信し、前記第1送信用バッファから前記特定された切替位置以降の映像信号を読み出して送信する
ことを特徴とする付記3乃至付記5のいずれか一つに記載の符号化装置。
(付記7)前記第1符号化部は、所定の異常を検出する第1異常検出部をさらに備え、
前記制御部は、前記異常検出部が所定の異常を検出した場合に、前記第1符号化部に障害が発生したと判定し、前記第1送信用バッファに蓄積された映像信号と、前記第2送信用バッファに蓄積されたデータとを繋ぎ合わせ、
前記送信部は、前記制御部が繋ぎ合わせた映像信号を送出する
ことを特徴とする付記3乃至付記6のいずれか一つに記載の符号化装置。
(付記8)前記第2符号化部は、異常を検出する第2異常検出部をさらに備え、
前記第1送信部は、前記第2異常検出部が異常を検出した場合に、前記第2符号化部に障害が発生したと判定し、前記送信用バッファに蓄積された映像信号を、前記伝送路へ送出する
ことを特徴とする付記3乃至付記7のいずれか一つに記載の符号化装置。
(付記9)第1符号化装置と第2符号化装置を有する符号化システムであって、
前記第1符号化装置は、外部装置からの映像信号を符号化し、符号化された前記映像信号をバッファに蓄積するとともに、前記バッファに蓄積された前記映像信号を送信し、前記第2符号化部に障害が発生した場合に、前記伝送路に自己が符号化した映像信号を送出し、
前記第2符号化装置は、前記第1符号化部が送信した前記映像信号を受信するとともに、前記外部装置からの映像信号に処理を施し、前記第1符号化部が送信した映像信号に所定時間の遅延を与えた映像信号又は自己が符号化した映像信号のいずれかを選択的に伝送路へ送出し、前記第1符号化部に障害が発生した場合に、自己が符号化した映像信号を前記伝送路に送出する
ことを特徴とする符号化システム。
(付記10)外部装置からの映像信号を第1符号化装置が符号化するステップと、
符号化された前記映像信号を前記第1符号化装置のバッファに蓄積するステップと、
前記第1符号化装置の前記バッファに蓄積された前記映像信号を第2符号化装置に送信するステップと、
前記第1符号化装置から送信された前記映像信号を前記第2符号化装置が受信するステップと、
前記第2符号化装置が前記第1符号化装置から受信した映像信号に所定時間の遅延を与えて伝送路へ送出するステップと、
前記第1符号化装置又は前記第2符号化装置の障害の発生を検出するステップと
前記障害を検出すると、前記第2符号化装置による前記第1符号化装置が送信した映像信号の伝送路への送出を停止するステップと、
前記第1符号化装置に障害が発生した場合に、前記伝送路に前記第2符号化装置が符号化した映像信号を前記第2符号化装置が送出するステップと、
前記第2符号化部に障害が発生した場合に、前記外部装置からの映像信号を前記第2符号化装置が符号化するステップと、
前記第1符号化装置が符号化した映像信号を前記伝送路に前記第1符号化装置が送出するステップと
を有することを特徴とする信号伝送方法。