(57)【要約】【課題】受信開始から再生スタートまでの時間を短縮することができるデータ伝送方法を提供する。【解決手段】ストリーミングデータをフレームに分割し、インターリーブを施してパケット化して送信する。各フレームのデータは、パケット列に対して１方向に順次分散される。これにより、どのパケットから受信を開始してもそのパケットから伝送が開始されるフレームが存在し、受信しているパケットを無駄にすることなく、そのフレームのデータを受信し終えた時点からストリーミングデータの再生をスタートすることができ、パケットの受信を開始してから再生をスタートするまでの待ち時間を短縮することができる。【選択図】  図３
2005318291.tif 000002
【特許請求の範囲】
【請求項１】
ｆ（１），ｆ（２），…，ｆ（ｕ），…の順に連続して入力されるフレームを、ｐ（１），ｐ（２），…，ｐ（ｕ），…の順に連続して出力されるパケットに乗せて伝送するデータ伝送方法であって、フレームｆ（ｕ）のデータをｐ（ｕ）〜ｐ（ｋ＋ｕ−１）のパケットに分散して伝送することを特徴とするデータ伝送方法。
【請求項２】
各フレームのデータを行列状に配列してｍ行×ｎ列のマトリクスデータとし、フレームｆ（ｕ）の第ｉ行第ｊ列のデータを、ｐ（ｕ＋（ｊ−１）ｂ＋ｉ）のパケットに分散して伝送することを特徴とする請求項１に記載のデータ伝送方法。
【請求項３】
前記パケットのデータエリアをｍ行×ｎ列のマトリクスとし、フレームｆ（ｕ）の第ｉ行第ｊ列のデータを、パケットｐ（ｕ−１＋（ｊ−１）ｂ＋ｉ）の第ｉ行第ｊ列に配置することを特徴とする請求項２に記載のデータ伝送方法。
【請求項４】
ストリーミングコンテンツを記憶または発生するコンテンツ発生手段と、コンテンツ発生手段からストリーミングコンテンツを入力し、このストリーミングコンテンツを請求項１、請求項２または請求項３に記載したデータ伝送方法を用いてストリーミング伝送する制御部と、を備えたサーバ装置。
【請求項５】
請求項１乃至請求項３のいずれかに記載したデータ伝送方法によって伝送されてくるストリーミングコンテンツのパケットを受信する受信制御手段と、
該受信制御手段が受信したパケットからフレームを復元して前記ストリーミングコンテンツを再生する再生手段と、を備えたデータ受信装置であって、
前記再生手段は、前記受信制御手段が受信を開始して最初のパケットであるパケットｆ（１）から前記ｆ（ｋ）までを受信したとき、これらのパケットに書き込まれているフレームｆ（１）をデコードして前記ストリーミングコンテンツの再生を開始することを特徴とするデータ受信装置。
【請求項６】
請求項４に記載のサーバ装置および請求項５に記載のデータ受信装置をインターネットを介して接続し、前記サーバでストリーミングコンテンツのブロードキャスト配信を行うことを特徴とするデータ伝送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、インターネット等を通じてオーディオデータ等のストリーミングコンテンツをブロードキャスト配信することに適したデータ伝送方法に関するものである。
【背景技術】
【０００２】
現在インターネット放送が提案され（たとえば特許文献１）、一部実用化されている。インターネット放送に代表されるインターネット上のストリーミング配信においては、パケットの欠落によるバーストエラーによってコンテンツの再生が中断する（たとえば音飛びが発生する）ことをさけるために、シーケンシャルなストリーミングデータの順序を入れ換えて複数のパケットに分散して送信するというインターリーブが用いられている。
【０００３】
図８は従来のインターリーブ方式を説明する図である。この例では、シーケンシャルなストリーミングデータを所定長さずつの複数のフレームに区切り、この複数のフレームに対して同図（Ａ）のように横断的に複数のパケットを割り当てて、複数のフレームで複数のパケットを送信するようにし、１つのパケットが伝送中に欠損してもそれがストリーミングデータにとってバーストエラーとならないように（各フレームにおけるランダムエラーとなるように）していた。
【特許文献１】特開2002-202950
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記のようにインターリーブすることにより、パケットの欠損が生じても、データ順序を入れ換えてフレーム（ストリーミングデータ）を復元したときには、このバーストエラーがランダムエラーに拡散され、エラー訂正が可能になって、音飛びがなくなるような処理がされている。
【０００５】
しかし、従来のインターリーブ方式は、図８に示すように、複数のフレームが複数のパケットに対応しているため、このひとかたまりのパケット群を最初から受信したときフレームデータのデコードを行うことができる。したがって、パケット群の途中から受信を開始した場合には、そのパケット群の最後までは受信したパケットを捨てて、次の新たなパケット群の先頭から有効なパケットの受信が開始されることになり、受信を開始してから再生をスタートするまで非常に長い時間（１０秒以上）かかってしまうという問題点があった。
【０００６】
この発明は、受信開始から再生スタートまでの時間を短縮することができるデータ伝送方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
請求項１の発明は、ｆ（１），ｆ（２），…，ｆ（ｕ），…の順に連続して入力されるフレームを、ｐ（１），ｐ（２），…，ｐ（ｕ），…の順に連続して出力されるパケットに乗せて伝送するデータ伝送方法であって、フレームｆ（ｕ）のデータをｐ（ｕ）〜ｐ（ｋ＋ｕ−１）のパケットに分散して伝送することを特徴とする。
【０００８】
請求項２の発明は、各フレームのデータを行列状に配列し、各行および各列毎にエラー訂正符号を付加することによってｍ行×ｎ列のマトリクスデータとし、フレームｆ（ｕ）の第ｉ行第ｊ列のデータを、ｐ（ｕ＋（ｊ−１）ｂ＋ｉ）のパケットに分散して伝送することを特徴とする。
【０００９】
なお、この発明におけるマトリクス（行列）は、横方向（左から右）へ複数「列」のデータを配列して「行」とし、この「行」を縦方向（上から下）に順次配列したものである。したがって、下へゆくほど行番号が増加し、右へゆくほど列番号が増加する。
【００１０】
また、この発明において、ｂは、隣接するデータ（たとえばｄ（１）とｄ（２）を配置するパケットの間隔であり、フレームのデータを１つずつ別々のパケットに配置する場合には、ｂ＝ｍである。ｂ＜ｍであれば一部（または全部）のパケットに同じフレームから複数のデータが配置される。
【００１１】
請求項３の発明は、前記パケットのデータエリアをｍ行ｎ列のマトリクスとし、フレームｆ（ｕ）の第ｉ行第ｊ列のデータを、パケットｐ（ｕ−１＋（ｊ−１）ｂ＋ｉ）の第ｉ行第ｊ列に配置することを特徴とする。
【００１２】
請求項４の発明は、ストリーミングコンテンツを記憶または発生するコンテンツ発生手段と、コンテンツ発生手段からストリーミングコンテンツを入力し、このストリーミングコンテンツを上記データ伝送方法を用いてストリーミング伝送する制御部と、を備えたことを特徴とする。
【００１３】
請求項５の発明は、上記データ伝送方法によって伝送されてくるストリーミングコンテンツのパケットを受信する受信制御手段と、該受信制御手段が受信したパケットからフレームを復元して前記ストリーミングコンテンツを再生する再生手段と、を備えたデータ受信装置であって、前記再生手段は、前記受信制御手段が受信を開始して最初のパケットであるパケットｆ（１）から前記ｆ（ｋ）までを受信したとき、これらのパケットに書き込まれているフレームｆ（１）をデコードして前記ストリーミングコンテンツの再生を開始することを特徴とする。
【００１４】
請求項６の発明は、上記サーバ装置および上記データ受信装置をインターネットを介して接続し、前記サーバでストリーミングコンテンツのブロードキャスト配信を行うことを特徴とする。
【００１５】
［作用］
この発明では、フレームｆ（１）のデータがｐ（１）〜ｐ（ｋ）のパケットに分散され、フレームｆ（２）のデータをｐ（２）〜ｐ（ｋ＋１）のパケットに分散され、フレームｆ（ｕ）のデータがｐ（ｕ）〜ｐ（ｋ＋ｕ−１）のパケットに分散される。このように、各フレームのデータは、パケット列に対して１方向に順次分散されてゆく。ここで、１方向に順次分散するとは、前の（先に再生されるべき）フレームほど前の（伝送順序の早い）パケットから伝送が開始されること、または、前の（先に再生されるべき）フレームほど前の（伝送順序の早い）パケットで伝送が終了することをいう。
【００１６】
このようなインターリーブ方式を採用することによって、どのパケットから受信を開始してもそのパケットから伝送が開始されるフレームが存在し、そのフレームのデータを受信し終えた時点、すなわち、そのフレームのデータが分散されている最後のパケットである伝送終了パケットを受信し終えた時点から、ストリーミングデータ（オーディオコンテンツ）の再生をスタートすることができる。
【００１７】
これにより、どのパケットから受信を開始しても、受信しているパケットを無駄にすることなく、そのパケットが分散の先頭になっているフレームのデータから再生をスタートさせることができ、ストリーミングコンテンツのパケットの受信を開始してから再生をスタートするまでの待ち時間を短縮することができる。
【００１８】
この発明では、フレームｆ（１）については、第１行第１列のデータをｐ（１）、第２行第１列のデータをｐ（２）、第ｍ行第１列のデータをｐ（ｍ）のパケットに分散し、第１行第２列のデータをｐ（ｂ＋１）、第２行第２列のデータをｐ（ｂ＋２）、第ｍ行第２列のデータをｐ（ｂ＋ｍ）のパケットに分散し、第１行第ｎ列のデータをｐ（（ｎ−１）ｂ＋１）、第２行第ｎ列のデータをｐ（（ｎ−１）ｂ＋２）、第ｍ行第ｎ列のデータをｐ（（ｎ−１）ｂ＋ｍ）のパケットに分散（ただし、（ｎ−１）ｂ＋ｍ＝ｋ）して伝送し、
フレームｆ（２）については、第１行第１列のデータをｐ（２）、第２行第１列のデータをｐ（３）、第ｍ行第１列のデータをｐ（ｍ＋１）のパケットに分散し、第１行第２列のデータをｐ（ｂ＋２）、第２行第２列のデータをｐ（ｂ＋３）、第ｍ行第２列のデータをｐ（ｂ＋ｍ＋１）のパケットに分散し、第１行第ｎ列のデータをｐ（（ｎ−１）ｂ＋２）、第２行第ｎ列のデータをｐ（（ｎ−１）ｂ＋３）、第ｍ行第ｎ列のデータをｐ（（ｎ−１）ｂ＋ｍ＋１）のパケットに分散して伝送し、
フレームｆ（ｕ）については、第１行第１列のデータをｐ（ｕ＋１）、第２行第１列のデータをｐ（ｕ＋２）、第ｍ行第１列のデータをｐ（ｕ＋ｍ）のパケットに分散し、第１行第２列のデータをｐ（ｕ＋ｂ＋１）、第２行第２列のデータをｐ（ｕ＋ｂ＋２）、第ｍ行第２列のデータをｐ（ｕ＋ｂ＋ｍ）のパケットに分散し、第１行第ｎ列のデータをｐ（ｕ＋（ｎ−１）ｂ＋１）、第２行第ｎ列のデータをｐ（ｕ＋（ｎ−１）ｂ＋２）、第ｍ行第ｎ列のデータをｐ（ｕ＋（ｎ−１）ｂ＋ｍ）のパケットに分散して伝送する。
【００１９】
このように分散することにより、フレームデータをパケットに分散するとき、データ順が入れ換わり、複数パケットが連続して欠損した場合でも、受信側で復元したフレームデータではこれをランダムエラー化することができ、フレーム欠損に対する耐性が高くなる。
【００２０】
この発明では、マトリクス状に配列したフレームデータを複数のパケットに分散するとき、分散したパケットにおいても同じマトリクスの同じ座標（ｉ，ｊ）に表示する。このようにすることにより、１つのパケットに対して複数フレームのデータを分散配置した場合でも、同じ座標に複数のデータが重複することがない。
【００２１】
上記のようにパケットへのデータの分散は行方向（上から下）に順次行われるため、シーケンシャルなデータ（列方向に連続したデータ）は、ｂの間隔を開けて分散される。
【００２２】
この場合において、ｂ＜ｍとしてマトリクスの行数ｍよりもパケット分散間隔ｂを小さくしても、この分散の仕方は同じであるため、エラー耐性をそれほど損なうことがなく、その一方で１つのフレームが分散するパケット範囲を小さくすることができるため、受信側においてパケットの受信を開始してから再生をスタートするまでの時間を短縮することができる。
【発明の効果】
【００２３】
以上のようにこの発明によれば、連続するフレームのデータにインターリーブを施して複数のパケットに分散して伝送する場合において、受信側がどのパケットから受信をスタートした場合でも、受信したパケットを無駄にする（捨てる）ことなく最短の時間でフレームデータの復元（ストリーミングコンテンツの再生）を開始することができる。
【発明を実施するための最良の形態】
【００２４】
図１はこの発明の実施形態であるオーディオ配信システムの構成図である。サーバ装置１はオーディオコンテンツのデータを蓄積記憶するストレージ２を備えている。このストレージ２はたとえばハードディスクで構成される。サーバ装置１はインターネット３に接続されており、インターネット３を介してオーディオコンテンツをストリーミング放送（ブロードキャスト配信）する。
【００２５】
この放送（ブロードキャスト配信）においては、ストリーミングデータ列を所定の長さ（ｍ−１）×（ｎ−１）バイト毎のフレームに分割し、このフレームにさらにエラー訂正符号を付加したものをインターリーブをかけてパケット化したものを伝送する。通信プロトコルは、順序制御は行うが伝送中に欠損したパケットの再送制御は行わないものを用いる。
【００２６】
インターネット３には、複数の受信端末４が接続されている。受信端末４は、サーバ装置１がインターネット３にストリーミング出力したオーディオコンテンツを受信して再生する。
【００２７】
受信端末４は、通信制御部１０、デコーダ１１、アンプ１２、スピーカ１３を備えている。通信制御部１０は、インターネット３へのアクセスを制御する機能部であり、上記ストリーミング放送のプロトコルで配信されてくるパケットを受信する。デコーダ１１は、通信制御部１０が受信したパケットに含まれるストリーミングデータをデコードしてオーディオコンテンツのデータ列に復元する。また、デコーダ１１はＤＡコンバータを含んでおり、このオーディオデータ列をアナログのオーディオ信号に変換する。アンプ１２は、デコーダ１１から出力されたオーディオ信号を増幅してスピーカ１３から音響として出力する。
【００２８】
上記構成において、サーバ装置１がストリーミング出力するコンテンツは、オーディオコンテンツに限定されない。また、コンテンツはストレージ２に記憶されているものに限定されず、マイクやカメラからリアルタイムに入力された音声や映像（ライブ）であってもよい。
【００２９】
図２〜図５を参照して、ストリーミング放送で用いられるインタリーブ方式について説明する。
図２（Ａ）は、ストリーミングデータ列をパケット化するデータ単位であるフレームに分割した状態を示す図である。また、同図（Ｂ）はフレームデータが分散配置された１つのパケットの内容を示す図である。
同図（Ａ）において、サーバ装置１は、ストリーミングデータ列を（ｍ−１）×（ｎ−１）バイトずつのフレームに分割する。各フレームデータを（ｍ−１）×（ｎ−１）のマトリクスに配置する。データの配置順序は、横方向（１行１列→ｎ−１列、２行１列→ｎ−１列、・・・、ｍ−１行１列→ｎ−１列の順）である。各行、各列ごとに１バイトのエラー訂正符号を付加してｍ×ｎバイトのマトリクスとする。
【００３０】
このフレームデータを複数のパケットに分散（インターリーブ）して送信する。同図（Ａ）のマトリクスの各枡目に記載した符号は、そのバイトが配置されるパケットの番号（パケットの順序）を示す符号である。また、同図（Ｂ）のマトリクスの各枡目に記載した符号は、そのバイトがどのフレームから分散されてきたかを示すフレームの番号（フレームの順序）を示す符号である。
【００３１】
このインタリーブ方式では、１〜ｍ行の１列目を連続するパケットｐ（１）〜ｐ（ｍ）に配置し、次に１〜ｍ行の２列目を連続するパケットｐ（ｂ＋１）〜ｐ（ｂ＋ｍ）に配置するというように、各パケットに対して、各バイトデータをマトリクスの縦方向（１行１列→ｍ行１列、１行２列→ｍ行２列、・・・、１行ｎ列→ｍ行ｎ列の順）に読み出して順次分散してゆく。ストリーミングデータは、上記のように横方向に配列されているため、この分散方式により、各パケットに配置されるデータの順序がストリーミングデータのシーケンシャルなデータ順から変更される。
【００３２】
図２（Ｂ）に示すように、パケットのデータ部はフレームデータと同じ構成（ｍ×ｎバイト）であり、各パケットに分散配置された各フレームデータは、そのパケットにおける同じ座標に配置される。すなわち、フレームにおいてｉ行ｊ列に配置されていたバイトは、分散されたパケットにおいてもｉ行ｊ列に配置される。
【００３３】
各フレームのｍ行・ｎ列のバイトは空欄であるが、各パケットにおいて、このバイトにはパケット番号が書き込まれる。各パケットには、パケットの送信順に０〜２５５の番号がサイクリックに与えられる。２５６パケット毎に同じ番号が付与されるが、パケット伝送中に２５６バイトを隔ててパケットの順序が入れ替わることはほぼあり得ないため、この１バイトのパケット番号によって受信側でパケットの順序を正確に識別することができる。
【００３４】
上記フレームデータの分散順とパケット内での配置を図３を参照して説明する。図３では、説明を簡略化するために、３行×４列のマトリクスで説明する。同図（Ａ）が連続する４個のフレームデータの例を示しており、同図（Ｂ）がフレームｓのデータが分散される各（１２個の）パケットを示している。この図において、フレームデータの再生順は左から右、パケットの伝送順は、左から右向けに順次縦方向である。
【００３５】
同図において、フレームｓの１行１列のデータであるｄ（ｓ，１）は、パケットｐ（ｔ）の１行１列に配置される。フレームｓの２行１列のデータであるｄ（ｓ，５）は、パケットｐ（ｔ＋１）の２行１列に配置される。フレームｓの３行１列のデータであるｄ（ｓ，９）は、パケットｐ（ｔ＋２）の３行１列に配置される。また、フレームｓの１行２列のデータであるｄ（ｓ，２）は、パケットｐ（ｔ＋ｂ）の１行２列に配置される。フレームｓの２行２列のデータであるｄ（ｓ，６）は、パケットｐ（ｔ＋ｂ＋１）の２行２列に配置される。フレームｓの３行２列のデータであるｄ（ｓ，１０）は、パケットｐ（ｔ＋ｂ＋２）の３行２列に配置される。
【００３６】
さらに、フレームｓの１行３列のデータであるｄ（ｓ，３）は、パケットｐ（ｔ＋２ｂ）の１行３列に配置される。フレームｓの２行３列のデータであるｄ（ｓ，７）は、パケットｐ（ｔ＋２ｂ＋１）の２行３列に配置される。フレームｓの３行３列のデータであるｄ（ｓ，１１）は、パケットｐ（ｔ＋２ｂ＋２）の３行３列に配置される。同様に、フレームｓの１行４列のデータであるｄ（ｓ，４）は、パケットｐ（ｔ＋３ｂ）の１行４列に配置される。フレームｓの２行４列のデータであるｄ（ｓ，８）は、パケットｐ（ｔ＋３ｂ＋１）の２行４列に配置される。フレームｓの３行４列のデータであるｄ（ｓ，１２）は、パケットｐ（ｔ＋３ｂ＋２）の３行４列に配置される。
【００３７】
このように、この例では、フレームｓのデータは、パケットｐ（ｔ）〜ｐ（ｔ＋３ｂ＋２）のデータに分散され、その伝送順は、データをｄ（ｓ，ｉ）とすると、ｉ＝１，５，９，２，６，１０，３，７，１１，４，８，１２の順であり、ストリーミングデータの伝送順がランダム化されていることがわかる。このように、伝送順をランダム化することにより、複数のパケットが連続して欠損しても、これをランダムエラー化することができる。
【００３８】
なお、この例においては、シーケンシャルな（横方向に連続する）データを分散させるパケットの間隔（たとえば、ｄ（ｓ，１）を配置するパケットとｄ（ｓ，２）を配置するパケットの間隔）である間隔ｂを、同図（Ｂ）において縦（行方向）に並ぶパケットの数（ｍ）と同数にしている。このため、各フレームｆ（ｓ）の各データは１つずつ別々のパケットに分散される。
【００３９】
一方、この間隔ｂをｍよりも小さい数にしてもよく、たとえば、間隔ｂを２とすると、同図（Ｂ）におけるｐ（ｔ＋２）とｂ（ｔ＋ｂ）、ｐ（ｔ＋ｂ＋２）とｂ（ｔ＋２ｂ）、ｐ（ｔ＋２ｂ＋２）とｂ（ｔ＋３ｂ）はそれぞれ同じパケットとなり、ｄ（ｓ，９）とｄ（ｓ，２）、ｄ（ｓ，１０）とｄ（ｓ，３）、ｄ（ｓ，１１）とｄ（ｓ，４）が同じパケットに配列されることになる。
【００４０】
このように、ｂをｍ未満とすると、パケットｐ（(ｉ＋１)・ｂ＋１）〜ｐ（ｉ・ｍ）に、マトリクスの第ｉ列のｂ＋１行〜ｍ行のバイトと第ｉ＋１列の１行〜ｍ−ｂ行のバイトが重複して配置されることになる（ｉは任意の整数）。
【００４１】
ｂをｍと同数とすれば、フレームデータが１バイトずつ別々のパケットに分散されるため、パケット欠損に対する耐性が最高に高くなるが、１つのフレームデータを完全に送信（受信）し終えるためには、ｍ×ｎ個のパケットを送信（受信）する必要がある。一方、ｂをｍよりも小さくすれば同じフレームデータの複数の（２つ）のバイトが配置されるパケットが生じるため、パケット損失に対する耐性が若干弱くなるが、１つのフレームデータを完全に送信（受信）し終えるために必要なパケット数は、（ｎ−１）ｂ＋ｍでよくなり、受信側で１つのフレームデータを復元するのに必要なパケット数が少なくてすみ再生スタートが速くなる。
【００４２】
図４は、連続するフレームのデータが連続するパケットにどのように分散される
かを説明する図、図５（Ａ）は、連続するパケットにおける連続するフレームデータの分散範囲（伝送開始パケット〜伝送終了パケット）の関係を説明する図である。また、図５（Ｂ）は、従来のインターリーブ方式における連続するフレームデータの分散範囲を説明する図である。
【００４３】
先に説明したようなインターリーブ方式により、連続する各フレームデータは、図４および図５（Ａ）に示すように、連続するパケット列に対して１方向に順次分散されてゆく。ここで、１方向に順次分散するとは、前の（先に再生されるべき）フレームほど前の（伝送順序の早い）パケットから伝送が開始されること、または、前の（先に再生されるべき）フレームほど前の（伝送順序の早い）パケットで伝送が終了することをいう。
【００４４】
このようなインターリーブ方式を採用することによって、どのパケットから受信を開始してもそのパケットから伝送が開始されるフレームが存在し、そのフレームのデータを受信し終えた時点から、すなわち、そのフレームのデータが分散されている最後のパケットである伝送終了パケットを受信し終えた時点から、ストリーミングデータ（オーディオコンテンツ）の再生をスタートすることができる。
【００４５】
さらに、そののちパケットを連続して受信していれば、後続のフレームデータの受信が順次終了してゆくため、継続してストリーミングデータの再生を行うことができる。
【００４６】
これに対して、同図（Ｂ）に示す従来のインタリーブの方式では、複数のフレームが同じパケットから分散が始まり、且つ同じパケットで分散が終了している。したがって、途中のパケット（たとえば同図におけるパケットＷ）から受信をスタートすると、このパケット群のデータ全てを捨てて、次のパケット群の先頭から実質的な受信スタートとなるため、この実施形態のインターリーブ方式に比べて再生開始までの時間が長く掛かることになる。
【００４７】
図６は、サーバ装置の動作を示すフローチャートである。ストリーミング配信処理は複数のプロセスの並行処理であるが、このフローチャートでは、データがどの順序で処理されるかを示すために順次処理で記述している。
まずストレージ２からオーディオコンテンツを読み出す（ｓ１）。そして、このオーディオコンテンツを（ｍ−１）×（ｎ−１）バイトのフレームデータに分割し（ｓ２）、マトリクスに配列して行毎・列毎にエラー訂正符号を付加する（ｓ３）。このエラー訂正符号が付加されたフレームの各データをそれぞれ所定のパケットに分散配置する（ｓ４）。データが揃ったパケットを所定のタイミングに順次、ストリーミング配信のプロトコルでインターネットに送信する（ｓ５）。
【００４８】
図７は受信端末４の動作を示すフローチャートである。同図（Ａ）は、受信制御動作を示すフローチャートであり、同図（Ｂ）は、再生（デコード）動作を示すフローチャートである。
同図（Ａ）において、インターネット経由で送られてくるストリーミングデータのパケットを受信する（ｓ１１）。受信したパケットは通信プロトコルに含まれているエラー訂正機能およびそのパケットのデータに付加されたエラー訂正符号によってエラー訂正される（ｓ１２）。このエラー訂正によってエラー訂正がされると（ｓ１３）、パケットに含まれているパケット番号（図２（Ｂ）参照）を読み出し、このパケット番号に対応するバッファエリアにデータをバッファする（ｓ１４）。以上の処理をパケットを受信する毎に繰り返し行う。
【００４９】
そして、（ｎ−１）ｂ＋ｍのパケット（欠損したパケットも含む）を受信したとき再生動作に対して再生スタートを指示する（ｓ１６）。こののちも、パケットが到来する毎に上記ｓ１１〜ｓ１４の動作を繰り返し実行する。
【００５０】
上記バッファは、通信制御部１０およびデコーダ１１に共通に設けられており、（ｎ−１）ｂ＋ｍ若しくはそれ以上の記憶容量を有するものであり、サイクリックに新しいパケットが記憶される。すなわち、ｓ１４の動作で新しいパケットを古いパケットに上書きする。再生処理動作において、インターリーブを解除してフレームデータを復元するためには、（ｎ−１）ｂ＋ｍ個のパケットがあればよい（このうち、エラー訂正可能な範囲の欠損があってもよい）。
【００５１】
同図（Ｂ）は、再生処理動作を示すフローチャートである。同図（Ａ）の受信制御動作から再生スタートが指示されたとき、この動作がスタートする。まずバッファに蓄積されている複数のパケットのそれぞれからデータを取り出してフレームデータを復元する（ｓ２０）。このデータの取り出しは、あるフレームのｉ行ｊ列のデータｄ（ｉ，ｊ）を取り出す場合（第１行１列のデータが書き込まれているパケットをｐ（１）とすると）、ｐ((j-1)b+i)の座標（ｉ，ｊ）にあるデータを取り出せばよい。この処理をｄ（１，１）からｄ（ｍ，ｎ）まで繰り返してフレームを復元する。このとき欠損したパケットに書き込まれていたバイトは欠損したままである。
【００５２】
次に、このフレームに行毎・列毎に付加されているエラー訂正符号を用いて上記欠損したデータを復元する。さらに、ストリーミングデータにもともと付加されているエラー訂正機能を用いてもデータの復元を行う（ｓ２１）。以上の処理で復元したフレームデータを連続したデータとして扱うことでストリーミングデータを復元し（ｓ２２）、このデータをＤ／Ａコンバータに入力してアナログのオーディオ信号を再生する。
【００５３】
この実施形態では、フレームのデータをマトリクスにして、行毎・列毎にエラー訂正符号を付したことにより、よりエラー耐性を高くすることができる。また、データ順ではなく、横方向に配列されたフレームデータを縦方向に読み出して順次パケットに分散することにより、分散性を高くすることができ、パケット欠損があった場合でも復元可能性を高くすることができる。このことは、実験により実証された。
【図面の簡単な説明】
【００５４】
【図１】この発明の実施形態であるオーディオ配信システムの構成図
【図２】同オーディオ配信システムで伝送されるフレームデータおよびパケットの構成図
【図３】フレームデータの分散順とパケット内での配置を説明する図
【図４】連続するフレームデータが連続するパケットにどのように分散配置されるかを説明する図
【図５】連続するパケットにおける連続するフレームデータの分散範囲の関係を説明する図
【図６】配信サーバの動作を示すフローチャート
【図７】受信端末の動作を示すフローチャート
【図８】従来のインターリーブ方式を説明する図
【符号の説明】
【００５５】
１…サーバ装置、２…ストレージ、３…インターネット、４…受信端末
１０…通信制御部、１１…デコーダ
【図１】
2005318291.tif 000003
【図２】
2005318291.tif 000004
【図３】
2005318291.tif 000005
【図４】
2005318291.tif 000006
【図５】
2005318291.tif 000007
【図６】
2005318291.tif 000008
【図７】
2005318291.tif 000009
【図８】
2005318291.tif 000010