(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022188644
(43)【公開日】2022-12-21
(54)【発明の名称】音響メタデータ処理装置及びプログラム
(51)【国際特許分類】
G10L 19/00 20130101AFI20221214BHJP
G10L 19/008 20130101ALI20221214BHJP
【FI】
G10L19/00 330B
G10L19/008 100
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2021096856
(22)【出願日】2021-06-09
(71)【出願人】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】100147485
【弁理士】
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【弁護士】
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100161148
【弁理士】
【氏名又は名称】福尾 誠
(72)【発明者】
【氏名】久保 弘樹
(72)【発明者】
【氏名】大出 訓史
(57)【要約】
【課題】オブジェクトベース音響において、各時刻に対する動的メタデータが時系列で記述された音響メタデータを変換し、データ量を削減する。
【解決手段】音響メタデータ処理装置1は、ある当該時刻の音響メタデータを当該時刻前までの音響メタデータと比較し、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合するか否かの統合判定を行う統合判定部11と、統合判定に基づき、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合するか、又は当該時刻の音響メタデータを統合しないで当該時刻前までの音響メタデータに追加して、音響メタデータを結合する音響メタデータ結合部12と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
オブジェクトベース音響において、各時刻に対する音声オブジェクトの再生条件が時系列で記述された音響メタデータを結合する音響メタデータ処理装置であって、
当該時刻の音響メタデータを当該時刻前までの音響メタデータと比較し、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合するか否かの統合判定を行う統合判定部と、
前記統合判定に基づき、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合するか、又は当該時刻の音響メタデータを統合しないで当該時刻前までの音響メタデータに追加して、音響メタデータを結合する音響メタデータ結合部と、
を備える音響メタデータ処理装置。
【請求項2】
前記統合判定部は、当該時刻の音響メタデータ及び当該時刻直前の音響メタデータにおける同一の音声オブジェクトの再生位置の変化率又は変化量と閾値とを比較することにより統合するか否かを判定する、請求項1に記載の音響メタデータ処理装置。
【請求項3】
前記統合判定部は、当該時刻の音響メタデータ及び当該時刻直前の音響メタデータにおける前記変化率の相対誤差又は前記変化量の絶対誤差と閾値とを比較することにより統合するか否かを判定する、請求項2に記載の音響メタデータ処理装置。
【請求項4】
前記音響メタデータ結合部は、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合したことにより、音響メタデータに記述されている音声オブジェクトの再生位置の変化量が変化閾値を超えた場合には、前記変化閾値を超えない範囲で分割する、請求項1から3のいずれか一項に記載の音響メタデータ処理装置。
【請求項5】
前記音響メタデータ結合部は、音声オブジェクトの再生位置の変化を記述する際にその変化が連続的になるよう記述可能な、再生位置の変化の補完時間を用いることで、当該時刻直前の音声オブジェクトの再生位置に変化があり、当該時刻における同一の音声オブジェクトの再生位置に変化がない音響メタデータを統合する、請求項1から4のいずれか一項に記載の音響メタデータ処理装置。
【請求項6】
コンピュータを、請求項1から5のいずれか一項に記載の音響メタデータ処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オブジェクトベース音響における音響メタデータを変換する音響メタデータ処理装置及びプログラムに関する。
【背景技術】
【0002】
オブジェクトベース音響とは、音声オブジェクトと音響メタデータを記録・伝送して、再生環境に応じた形式でコンテンツを再生(レンダリング)する音響方式である。立体音響の再生に用いる方式として映画業界を中心に普及が進んでいるが、近年では世界各国でオブジェクトベース音響を次世代放送に用いようとする動きも出てきており、例えば放送方式にATSC3.0を採用しているアメリカや韓国では、音声符号化方式にAC-4あるいはMPEG-H 3DAを用いて放送システムへの導入を始めている。
【0003】
ITU-Rは、国際標準の番組制作用音響メタデータとして音響定義モデル(Audio Definition Model:ADM)を規定している(例えば、非特許文献1参照)。ADMには、番組音声を構成する音声オブジェクトの組み合わせやスピーカ配置、音声オブジェクトの再生位置・ゲインなどがXML(Extensible Markup Language)で記述されている。オブジェクトの再生位置、ゲインなど時間的に値が変化するメタデータは動的メタデータと呼ばれ、音声オブジェクトの組み合わせなどの番組を通して変化しない静的メタデータと区別して扱う場合もある。
【0004】
オブジェクトベース音響を放送やストリーミングサービスなどで使用する場合には、受信を始めた任意の時刻から再生を開始できるよう、音響メタデータを繰り返し伝送する必要がある。そのため、ADMの時系列表現形式(Serial ADM:S-ADM)(例えば、非特許文献2参照)や、S-ADMを音声信号と同期させ、既存の音声デジタルインタフェースを用いて出力する伝送方式(例えば、非特許文献3参照)がそれぞれ国際標準化されている。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】ITU-R, Rec. ITU-R BS.2076-2, ”Audio definition model”, 2019
【非特許文献2】ITU-R, Rec. ITU-R BS.2125-0, “A serial representation of the Audio Definition Model”, 2019
【非特許文献3】SMPTE, SMPTE ST 2116:2019, “Format for Non-PCM Audio and Data in AES3 - Carriage of Metadata of Serial ADM (Audio Definition Model)”, 2020
【発明の概要】
【発明が解決しようとする課題】
【0006】
オブジェクトベース音響によるライブプロダクションでは、ミクシングエンジニアの操作をもとに、音声卓などの制作設備が逐次S-ADMを自動で生成することが予想される。ここで生成されるS-ADMは、静的メタデータは常に同じ内容が記述されるのに対し、動的メタデータは音声卓などで調節した再生位置・ゲインなどの値を定期的に取得してフレーム(S-ADMの送信周期1回分)ごとに新しい値が記述される。当該動的メタデータは、S-ADMの当該フレームの時刻に対応した値として記述され、S-ADMの各フレームの動的メタデータは全て異なるメタデータとして扱われる。
【0007】
オブジェクトベース音響の音源を記録・保存する際には、音声信号と合わせて音響メタデータも合わせて記録する必要がある。オブジェクトベース音響に対応した収録機が音声信号をファイルとして保存する際には、音声信号と合わせて入力されたS-ADMから番組全体の情報がまとめて記述されるADMを再構成して記録することが予想される。前述の音声卓のような制作設備が自動で生成した音響メタデータを記録する場合、静的メタデータは一度記録すればその後番組が変わるまで新たに記録する必要がないのに対し、動的メタデータはフレームごとに新しい記述が追加されるため、記録するデータ量が膨大となる恐れがある。
【0008】
かかる事情を鑑みてなされた本発明の目的は、オブジェクトベース音響において各時刻に対する動的メタデータが時系列で記述されている音響メタデータのデータ量を削減することのできる音響メタデータ処理装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0009】
上記課題を解決するため、本発明に係る音響メタデータ処理装置は、オブジェクトベース音響において、各時刻に対する音声オブジェクトの再生条件が時系列で記述された音響メタデータを結合する音響メタデータ処理装置であって、当該時刻の音響メタデータを当該時刻前までの音響メタデータと比較し、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合するか否かの統合判定を行う統合判定部と、前記統合判定に基づき、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合するか、又は当該時刻の音響メタデータを統合しないで当該時刻前までの音響メタデータに追加して、音響メタデータを結合する音響メタデータ結合部と、を備える。
【0010】
さらに、本発明に係る音響メタデータ処理装置において、前記統合判定部は、当該時刻の音響メタデータ及び当該時刻直前の音響メタデータにおける同一の音声オブジェクトの再生位置の変化率又は変化量と閾値とを比較することにより統合するか否かを判定する。
【0011】
さらに、本発明に係る音響メタデータ処理装置において、前記統合判定部は、当該時刻の音響メタデータ及び当該時刻直前の音響メタデータにおける前記変化率の相対誤差又は前記変化量の絶対誤差と閾値とを比較することにより統合するか否かを判定する。
【0012】
さらに、本発明に係る音響メタデータ処理装置において、前記音響メタデータ結合部は、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合したことにより、音響メタデータに記述されている音声オブジェクトの再生位置の変化量が変化閾値を超えた場合には、前記変化閾値を超えない範囲で分割する。
【0013】
さらに、本発明に係る音響メタデータ処理装置において、前記音響メタデータ結合部は、音声オブジェクトの再生位置の変化を記述する際にその変化が連続的になるよう記述可能な、再生位置の変化の補完時間を用いることで、当該時刻直前の音声オブジェクトの再生位置に変化があり、当該時刻における同一の音声オブジェクトの再生位置に変化がない音響メタデータを統合する。
【0014】
また、上記課題を解決するため、本発明に係るプログラムは、コンピュータを、上記音響メタデータ処理装置として機能させる。
【発明の効果】
【0015】
本発明によれば、オブジェクトベース音響において各時刻に対する動的メタデータが時系列で記述されている音響メタデータのデータ量を削減することができる。
【図面の簡単な説明】
【0016】
【
図1】第1の実施形態に係る音響メタデータ処理装置の構成例を示すブロック図である。
【
図2】第1の実施形態に係る音響メタデータ処理装置における処理手順例を示すフローチャートである。
【
図3】第1の実施形態に係る音響メタデータ処理装置における、前ブロックの終了時点での再生位置の変化の傾きの導出処理例を示すフローチャートである。
【
図4】第1の実施形態に係る音響メタデータ処理装置における、当該ブロックの開始時点での再生位置変化の傾きの導出処理例を示すフローチャートである。
【
図5】第1の実施形態に係る音響メタデータ処理装置における、ブロック結合方法の一例を示すフローチャートである。
【
図6】ブロック統合時の主要なパラメータの設定例を示す表である。
【
図7】第1の実施形態に係る音響メタデータ処理装置における、統合したブロックを分割する例を示す図である。
【
図8】第2の実施形態に係る音響メタデータ処理装置の構成例を示すブロック図である。
【
図9】第2の実施形態に係る音響メタデータ処理装置における処理手順例を示すフローチャートである。
【
図10】第2の実施形態に係る音響メタデータ処理装置における、ブロック結合方法の一例を示すフローチャートである。
【
図12】従来手法により、
図10に示すS-ADMから生成されるADMの一例を示す図である。
【
図13】第1の実施形態に係る音響メタデータ処理装置により、
図10に示すS-ADMから生成されるADMの一例を示す図である。
【
図15】第1の実施形態に係る音響メタデータ処理装置により、
図14に示すS-ADMから生成されるADMの一例を示す図である。
【
図17】第1の実施形態に係る音響メタデータ処理装置により、
図16に示すS-ADMから生成されるADMの第1の例を示す図である。
【
図18】第1の実施形態に係る音響メタデータ処理装置により、
図16に示すS-ADMから生成されるADMの第2の例を示す図である。
【
図19】第2の実施形態に係る音響メタデータ処理装置により、
図14に示すS-ADMから生成されるADMの一例を示す図である。
【
図20】第2の実施形態に係る音響メタデータ処理装置により、
図16に示すS-ADMから生成されるADMの一例を示す図である。
【発明を実施するための形態】
【0017】
実施形態として以下に説明する音響メタデータ処理装置は、S-ADM形式の音響メタデータを入力し、ADM形式の音響メタデータとして保存する。そこで、まず本発明に関係するADM及びS-ADMの記述方法を概説する。ただし、入力する音響メタデータの形式はこれに限定されるものではない。例えば、なんらかのオブジェクトベース音響用の記録装置により、メタデータのデータ量を削減することなくS-ADMからADMが再構成されていた場合などには、入力もADMとなることが考えられる。また、本発明のアルゴリズムで統合した音響メタデータを逐次S-ADM形式に変換して出力することで、S-ADMの変換器として制作機器の系統に挟み込むことも可能である。
【0018】
ADM及びS-ADMにおいて、再生位置が変化する音声オブジェクトなど、一つ一つの音声チャンネルはaudioChannelFormatという記述子を用いて記述される。具体的な再生位置やゲインなどのパラメータの変化はaudioChannelFormatを時間方向にさらに複数のaudioBlockFormatという音声ブロック(以下、単に「ブロック」と称する。)に分割することで表現される。audioBlockFormatにはそのブロックの開始時刻と時間長に関する情報、及びその時間における再生位置(方位角、仰角、距離など)やゲインなどの各パラメータが記述され、パラメータが変化するごとに新しいaudioBlockFormatが追加される。ただし再生位置に関しては、各ブロックで規定されているパラメータは各ブロックの終了時点でのパラメータとなっており、前ブロックと比較して再生位置に変化がある場合には、基本的には前ブロックのパラメータから当該ブロックのパラメータに向けて、当該ブロックの時間長をかけて再生位置が線形に変化していると補完して解釈される。
【0019】
変化にかける時間をブロック長よりも短い時間としたい場合には、audioBlockFormatのオプションであるjumpPositionを記述する。jumpPositionにはさらにそのオプションのinterpolationLengthが記述可能であって、jumpPositionの値が1であり、さらにinterpolationLengthの記述がある場合は、当該ブロックの時間長の代わりにinterpolationLengthの時間長をかけて変化する。jumpPositionの値が1であり、interpolationLengthの記述がない場合には、当該ブロックの開始時点で瞬時に当該ブロックのパラメータに変化する。
【0020】
audioBlockFormatの時間長は一定である必要はなく、パラメータが変化しない場合にはaudioBlockFormatは分割されない。ただし、制作設備が逐次S-ADMを自動で生成するような状況では、前述のように各フレームの動的メタデータは全て異なるメタデータとして扱われるため、各フレームにおいて、フレーム長と同じ時間長の新しいaudioBlockFormatが生成されることが予想される。逆にパラメータがフレーム長よりも短い時間で頻繁に変化する場合には、1フレームの中に複数のaudioBlockFormatが入ることもある。
【0021】
一般に、再生位置の変化は前ブロックのパラメータと比較しないとわからないため、S-ADMではいずれのフレームから受信を開始してもレンダリングが行えるよう、当該S-ADMの時間に対応したブロックと同時に、その一つ前のブロック又は初期化ブロックが合わせて送信される。初期化ブロックは、S-ADMでのみ使用可能な、当該ブロックの開始時点でのパラメータが記述された、durationを持たない特殊なブロックである。
【0022】
また、S-ADMにおいては、audioBlockFormatの時間の基準点に関して、番組(audioProgramme)の開始時間を起点とする場合と、当該ブロックが含まれるS-ADMのフレームの開始時間を起点とする場合の、大きく分けて2通りの記述方法が許容されている。前者はADMと共通する記述方法であり、それぞれの時刻におけるメタデータと時間の関係が分かりやすいため、あらかじめADMを作成しておけるような状況では優先的に使用されることが想定される。一方、ライブプロダクションなどで音声卓のような制作設備が逐次S-ADMを自動で生成する状況では、S-ADMのフレームごとに処理を行う上で、フレームの開始時点を起点とする方が時間の計算がシンプルになるため、後者の記述方法が優先的に使用されることが予想される。
【0023】
以下、図面を参照しながら本発明の実施形態について詳細に説明する。
【0024】
<第1の実施形態>
図1は、第1の実施形態に係る音響メタデータ処理装置1の構成例を示すブロック図である。
図1に示す音響メタデータ処理装置1は、起点変換部10と、統合判定部11と、音響メタデータ結合部12と、音響メタデータ記憶部13と、を備える。音響メタデータ処理装置1は、音響メタデータ記憶部13に記憶されたメタデータを任意の時点で処理済みのADMとして出力する音響メタデータ出力部を備えていてもよい。
【0025】
音響メタデータ処理装置1は、オブジェクトベース音響において、各時刻に対する音声オブジェクトの再生条件(動的メタデータ)が時系列で記述された音響メタデータを結合(統合又は追加)することにより、音響メタデータのデータ量を削減する装置である。本明細書において、「結合」とは、以下に詳細に説明する「統合」と「追加」の両方を含む概念である。
【0026】
起点変換部10は、音響メタデータ処理装置1に入力されたS-ADMの時間の記述方法を確認し、audioBlockFormatの時間の起点がS-ADMのフレームの開始時間である場合には、他のフレームで受信した音響メタデータとの結合を可能とするため、audioProgrammeの開始時間を起点とする記述方法に変換する。そして、起点変換部10は、時間表記を変換した音響メタデータを統合判定部11及び音響メタデータ結合部12に出力する。
【0027】
統合判定部11は、ある当該時刻の音響メタデータ(新たに入力したS-ADM)を、当該時刻前までの音響メタデータ(前フレームまでの結合処理済みの、音響メタデータ記憶部13に記憶されたADM)と比較する。そして、統合判定部11は、比較に基づいて、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合するか否かの統合判定を行い、判定結果を示す判定情報を音響メタデータ結合部12に出力する。
【0028】
例えば、統合判定部11は、当該時刻の音響メタデータ及び当該時刻直前の音響メタデータにおける同一の音声オブジェクトのゲイン、再生位置などのパラメータ、特に再生位置の変化率又は変化量を比較することで、統合判定を行う。統合判定部11は、再生位置の変化率が閾値以下である場合には統合し、再生位置の変化率が閾値を超える場合には統合しないと判定してもよい。ここで、閾値は、予め決められた絶対誤差であってもよいし、直前の変化率に対する当該時刻の変化率の割合によって決まる相対誤差であってもよい。
【0029】
音響メタデータ結合部12は、統合判定部11から入力した判定情報に基づき、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合するか、又は当該時刻の音響メタデータを統合しないで当該時刻前までの音響メタデータに追加して、音響メタデータを一つに結合する。すなわち、統合判定部11から入力した判定情報が統合可能であることを示している場合には、新たに受信した音響メタデータと音響メタデータ記憶部13に記憶済みの音響メタデータとを統合して新しい音響メタデータを生成する。音響メタデータ結合部12は、統合判定部11から入力した判定情報が統合不可能であることを示している場合には、新たに受信した音響メタデータを音響メタデータ記憶部13に記憶済みの音響メタデータに追加して新しい音響メタデータを生成する。そして、音響メタデータ結合部12は、結合した音響メタデータを音響メタデータ記憶部13に出力する。
【0030】
音響メタデータ結合部12は、分割部121を備えていてもよい。分割部121は、当該時刻の音響メタデータを当該時刻前までの音響メタデータと統合したことにより、音響メタデータに記述されている音声オブジェクトの再生位置の変化量が変化閾値を超えた場合には、変化閾値を超えない範囲で分割する。これにより、変換後の音響メタデータを読み込んだオブジェクトベース音響の再生装置が、制作意図と異なる再生信号を生成することを防ぐことができる。具体例については後述する。
【0031】
図2は、音響メタデータ処理装置1の処理手順の一例を示すフローチャートである。
【0032】
ステップS11では、起点変換部10により、audioBlockFormatの時間の起点がS-ADMのフレームの開始時間である場合には、audioProgrammeの開始時間を起点とする記述方法に変換する。
【0033】
ステップS12では、統合判定部11により、まだ比較を行っていないブロックのうち、初期化ブロックを除く最も若番の(時刻が最も早い)ブロックから比較処理を開始する。
【0034】
ステップS13では、統合判定部11により、当該ブロックが、当該audioChannelFormatの第1ブロックであるか否かを判定する。当該ブロックがaudioChannelFormatの第1ブロックである場合には(ステップS13-Yes)、統合する前のブロックが存在しないため、統合不可と判断して処理をステップS21に進める。当該ブロックがaudioChannelFormatの第1ブロック以外である場合には(ステップS13-No)、処理をステップS14に進める。
【0035】
ここで、音響メタデータ処理装置1が、S-ADMを途中から受信した場合でも可能な範囲で音響メタデータを変換できるよう、受信したブロックをもとに第1ブロックを生成してもよいし、あるいはS-ADMの受信を始めた最初のブロックを第1ブロックと同様に扱い、以降に受信したブロックはそのあとに結合を始めてもよい。後者の場合は以降の処理において、「第1ブロック」を「受信を始めた最初のブロック」と読み替えることで、同じ処理を適応できる。また前述のとおりS-ADMでは、当該S-ADMの時間に対応したブロックと同時にその一つ前のブロック又は初期化ブロックも合わせて送信される。最初にS-ADMを受信し始めた際に、一つ前のブロックを合わせて受信した場合にはそのブロックを第1ブロックとして処理し、初期化ブロックを合わせて受信した場合には、初期化ブロックのパラメータを用いたduration=0のブロックを生成し第1ブロックとする。
【0036】
ステップS14では、統合判定部11により、当該ブロックと前ブロックのパラメータを比較し、再生位置以外にも異なるパラメータがあるか否かを判定する。ゲインなど、再生位置以外に異なるパラメータが存在する場合には(ステップS14-Yes)、単一のaudioBlockFormatに複数の値を記述することができないため、結合不可と判断し、処理をステップS21に進める。再生位置以外に異なるパラメータが存在しない場合、すなわち該ブロックと前ブロックで異なるパラメータが再生位置のみであるか、あるいは全てのパラメータが同一であった場合には(ステップS14-No)、処理をステップS15に進める。ここで、ゲインなど再生位置以外に異なるパラメータが存在する場合でも、その変化が前ブロックと比較して小さい場合(例えばゲインが0.700から0.705に変化している場合)などは、音響メタデータのデータ量削減を優先し、ゲインの変化がなかったものとして、処理をステップS15に進めてもよい。映像・音声の圧縮と同様、データ量の削減の必要性によっては、音響メタデータも不可逆圧縮を行う可能性がある。
【0037】
ステップS15では、統合判定部11により、前ブロックの終了時点での再生位置の変化率(変化の傾き)を計算する。ステップS15の処理の詳細については後述する。
【0038】
ステップS16では、統合判定部11により、ステップS15で計算した変化の傾きが0であるか否かを判定する。前ブロックの終了時点での再生位置の変化の傾きが0である場合には(ステップS16-Yes)、処理をステップS17に進め、傾きが0でない場合には(ステップS16-No)、処理をステップS18に進める。
【0039】
ステップS17では、統合判定部11により、当該ブロックと前ブロックの再生位置を比較する。再生位置が同じである場合、すなわち両ブロックのパラメータが同一である場合には(ステップS17-Yes)、統合可能と判断して処理をステップS20に進める。両ブロックのパラメータが同一でない場合には(ステップS17-No)、統合不可と判断して処理をステップS21に進める。
【0040】
ステップS18では、統合判定部11により、当該ブロックの開始時点の再生位置の変化の傾きを計算する。ステップS18の処理の詳細については後述する。
【0041】
ステップS19では、統合判定部11により、前ブロックの終了時点と当該ブロックの開始時点の傾きを比較する。その傾きが一致する場合には(ステップS19-Yes)、統合可能と判断して処理をステップS20に進める。傾きが異なる場合には(ステップS19-No)、統合不可と判断して処理をステップS21に進める。
【0042】
ステップS19において、傾きが一致するという判断基準には、計算誤差や、制作設備のパラメータの読み取り精度なども考慮し、ある程度の幅を設ける必要がある。例えば、前ブロックの終了時点での再生位置変化の傾きωn-1 endと当該ブロックの開始時点での再生位置変化の傾きωn startとの相対誤差R[%]が下記の式のように閾値α以下であれば傾きが一致すると判断してもよい。
【0043】
【0044】
閾値αの値を小さくすると傾きが厳密に一致するブロックのみが統合され、制作時点で生成されたS-ADMと再生位置の変化がより一致するADMが生成されるが、データ量の削減効率は落ちることが予想される。一方、閾値αの値を大きくすると、傾きがある程度異なるブロックも統合され、厳密には生成時点のS-ADMと再生位置の変化が異なるADMが生成され得るが、その分データ量の削減には寄与し得る。このように、再生位置の変化の厳密性とデータ量の削減効率はトレードオフの関係にあり、音響メタデータ処理装置1を用いる状況に応じて、一致を判断する傾きの幅を調整可能である。
【0045】
傾きが一致するという判断基準に相対誤差R[%]を用いると、ωn-1 end=0又はωn start=0となる点では式(1)の左辺が発散又は100%となり、統合不可と判断されやすくなるため、再生位置の変化が開始又は終了する時刻を音響メタデータの変換前から保つ効果が期待できる。判断基準に、相対誤差R[%]の代わりに絶対誤差A[度/秒]を用いてもよいが、ωn-1 end=0又はωn start=0となる点でも統合可能と判断されうるため、再生位置の変化が開始又は終了する時刻が音響メタデータの変換前からずれる可能性がある。相対誤差R[%]は再生位置の変化率を基準にしており、絶対誤差A[度/秒]は変化量を基準にしていることになる。このように、統合判定部11は、当該時刻の音響メタデータ及び当該時刻直前の音響メタデータにおける変化率の相対誤差R[%]又は変化量の絶対誤差A[度/秒]と閾値αとを比較することにより統合するか否かを判定してもよい。
【0046】
ステップS20では、音響メタデータ結合部12により、再生位置変化の傾きに基づいて、当該ブロックにjumpPositionの記述があるか否かで異なる方法で、当該ブロックを前ブロックと統合する。ステップS20の処理の詳細については後述する。
【0047】
ステップS21では、音響メタデータ結合部12により、当該ブロックが統合不可と判断された場合の処理として、当該ブロックを新しいブロックとして、前ブロックの次のブロックに追加する。具体的には、audioBlockFormatIDに、前ブロックのaudioBlockFormatIDの値をインクリメントした値を設定し、そのほかのパラメータは当該ブロックのパラメータをそのまま採用する。
【0048】
ステップS22では、このブロックの統合判定処理及び結合処理を、受信した全てのブロックに対して行ったか否かを判定し、全てのブロックの処理が完了するまで、ステップS12からステップS21の処理を繰り返し行う。音響メタデータ結合部12は、変換したADMを音響メタデータ記憶部13に、1ブロックを処理するごとに出力してもよいし、S-ADMの1フレームごとに出力してもよいし、S-ADMの受信が終了した時点で出力してもよい。
【0049】
図3は、
図2のステップS15における、統合判定部11による、前ブロックの終了時点での再生位置の変化の傾きの導出処理を示すフローチャートである。
【0050】
ステップS151では、前ブロックが当該audioChannelFormatの第1ブロックであるか否かを判定する。前ブロックが当該audioChannelFormatの第1ブロックである場合には(ステップS151-Yes)、処理をステップS155に進める。この場合は、前ブロックを通して前ブロックに記述の再生位置でレンダリングが行われるため、前ブロックの終了時点においてもその変化の傾きは0となる。前ブロックが当該audioChannelFormatの第1ブロックでない場合には(ステップS151-No)、処理をステップS152に進める。なお、ステップS151の第1ブロックの判定は前ブロックに対して行われているのに対し、
図2のS13の第1ブロックの判定は当該ブロックに対して行っており、判定を行っている対象が異なっている。
【0051】
ステップS152では、前ブロックのさらに1つ前のブロック(以下、「前々ブロック」と称する。)と当該ブロックの再生位置を比較する。再生位置に変化がない場合、すなわち両ブロックのパラメータが同一である場合には(ステップS152-Yes)、処理をステップS155に進め、再生位置に変化がある場合には(ステップS152-No)、処理をステップS153に進める。
【0052】
ステップS153では、jumpPositionの値が1であるか否かを判定する。前ブロックにjumpPositionの記述があり、値が1である場合には(ステップS153-Yes)、処理をステップS155に進める。前ブロックにjumpPositionの記述がない、あるいはjumpPositionの値が0である場合には(ステップS153-No)、処理をステップS154に進める。
【0053】
ここで、interpolationLengthはフレーム長より短く設定すると規格で規定されているため、本来は前ブロックの終了時点の傾きを計算するためにinterpolationLengthの値を確認する必要はない。ただし、仮に受信したS-ADM(ADM)に記述のinterpolationLengthが誤ってフレーム長よりも長く設定されていた場合、本来統合できないブロックの統合が生じ得るため、安全性を考慮して、interpolationLengthがフレーム長より短いことを確認するステップを挟んでもよい。interpolationLengthがフレーム長より長く設定されていた場合、jumpPositionの値が0であるものとして扱う。
【0054】
ステップS154では、再生位置は前々ブロックの終了時点から前ブロックの終了時点までの時間をかけて変化するため、前ブロックの終了時点での再生位置変化の傾きωn-1 end[度/秒]を下記の式で求める。ここで、Pn-1[度]は前ブロックの再生位置であり、Pn-2[度]は前々ブロックの再生位置であり、Tn-1 durは前ブロックのduration[秒]である。
【0055】
【0056】
ステップS155では、前ブロックの終了時点の再生位置変化の傾きを0とする。
【0057】
図4は、
図2のステップS18における、統合判定部11による、当該ブロックの開始時点での再生位置変化の傾きの導出処理例を示すフローチャートである。
【0058】
ステップS181では、当該ブロックと前ブロックの再生位置を比較する。再生位置に変化がない場合、すなわち両ブロックのパラメータが同一である場合には(ステップS181-Yes)、処理をステップS186に進め、再生位置に変化がある場合には(ステップS181-No)、処理をステップS182に進める。
【0059】
ステップS182では、jumpPositionの値が1であるか否かを判定する。当該ブロックにjumpPositionの記述があり、値が1である場合には(ステップS182-Yes)、処理をステップS183に進める。jumpPositionの記述がない、あるいはjumpPositionの値が0である場合には、(ステップS182-No)、処理をステップS185に進める。
【0060】
ステップS183ではinterpolationLengthの値を確認する。当該ブロックにinterpolationLengthの記述がない場合には(ステップS183-No)、当該ブロックの開始と同時に、当該ブロックの再生位置に瞬時に変化することを意味するため、処理をステップS186に進める。interpolationLengthが0でない値を持つ場合には(ステップS183-Yes)、処理をステップS184に進める。
【0061】
ステップS184では、interpolationLengthの長さをかけて、前ブロックに記述の再生位置から当該ブロックに記述の再生位置に変化するため、当該ブロックの開始時点での再生位置変化の傾きωn start[度/秒]を下記の式で求める。ここで、Pn[度]は当該ブロックの再生位置、Tn intは当該ブロックのinterpolationLength[秒]である。
【0062】
【0063】
ステップS185では、ブロック長の時間をかけて、前ブロックに記述の再生位置から当該ブロックに記述の再生位置に変化するため、当該ブロックの開始時点での再生位置変化の傾きωn start[度/秒]を下記の式で求める。ここで、Tn durは当該ブロックのduration[秒]である。
【0064】
【0065】
ステップS186では、当該ブロックの開始時点の再生位置変化の傾きを0とする。
【0066】
図5は、
図2のステップS20における、音響メタデータ結合部12による、ブロック統合方法の一例を示すフローチャートである。
【0067】
ステップS201では、jumpPositionの値が1であるか否かを判定する。当該ブロックにjumpPositionの記述があり、値が1である場合には(ステップS201-Yes)、処理をステップS203に進める。jumpPositionの記述がない、あるいはjumpPositionの値が0である場合には、(ステップS201-No)、処理をステップS202に進める。なお、ここで、事前の統合可否を判断する中で、jumpPositionの記述があって統合可能と判断されたブロックは、jumpPositionの値が1で、interpolationLengthの設定があるブロックに限定されている。
【0068】
図6は、ブロック統合時の、主要なパラメータ(audioBlockFormatID,rtime,duration,position,jumpPosition,interpolationLength)の設定例を示す表である。
【0069】
ステップS202では、
図6に示す※1の設定で前ブロックと統合する。すなわち、audioBlockFormatID及びrtimeには、前ブロックの値を設定する。durationには、前ブロックのdurationと当該ブロックのdurationを加算した値を設定する。positionには、当該ブロックのpositionの値を設定する。jumpPosition及びinterpolationLengthには、前ブロックが存在する場合には前ブロックの値を設定する。
【0070】
ステップS203では、まず当該ブロックを、interpolationLengthとその残りの時間長の2つのブロックに分割する。
【0071】
ステップS204では、分割した前半のブロックを、
図6に示す※2の設定で前ブロックと統合する。すなわち、audioBlockFormatID及びrtimeには、前ブロックの値を設定する。durationには、前ブロックのdurationと当該ブロックのinterpolationLengthを加算した値を設定する。positionには、当該ブロックのpositionの値を設定する。jumpPosition及びinterpolationLengthは、設定されない。
【0072】
ステップS205では、統合によって方位角の変化の差分の絶対値(再生位置の変化量)が変化閾値N[度]を超えるか否かを確認する。変化閾値Nを超えていた場合には(ステップS205-Yes)処理をステップS206に進め、変化閾値N以下である場合には(ステップS205-No)処理をステップS208に進める。
【0073】
図7(a)は、統合前の音声オブジェクトの動作例を示す図である。
図7(b)は、音響メタデータを統合した場合に、レンダラーが生成し得る、意図しない再生信号の例を示す図である。
図7(c)は、意図した動作となるように音響メタデータを分割した場合に、レンダラーが生成する再生信号の例を示す図である。
図7に示すように統合後の再生位置の変化量が180度を超えていた場合、そのブロックを読み込んだレンダラーが、再生位置を上方から見て時計回りと反時計回りのどちらで再生位置を動かせばよいかを判断が分かれ得る。
【0074】
そこで、ステップS206では、再生位置の変化量が180度を超えないよう、改めて統合したブロックを分割する。最終的な分割数を最も少なくしたい場合には、Nを179度などと180度を超えない範囲で最も大きくなるように設定して分割してもよいし、音響メタデータの可読性を上げたい場合にはNを160度、120度などときりのよい値に設定して分割してもよい。分割する前後のブロックは、分割の前後で傾きが等しくなるように時間幅を設定する。分割したブロックの前半のブロックは、そのまま分割前のブロックのaudioBlockFormatIDを引き継ぎ、後半のブロックは分割前のブロックのaudioBlockFormatIDの値をインクリメントした値を設定する。
【0075】
ステップS207では、ステップS206で分割した後半のブロックを新しいブロックとしてブロックに追加する。
【0076】
ステップS208では、ステップS203においてinterpolationLengthによって分割された後半のブロックが存在するか否かを判定する。後半のブロックが存在する場合には(ステップS208-Yes)処理をステップS209に進め、後半のブロックが存在しない場合には(ステップS208-No)処理を終了する。
【0077】
ステップS209では、ステップS203において分割された後半のブロックを、ステップS202又はステップS204において統合されたブロックの次のブロック、あるいはステップS206において分割された後半のブロックの次のブロックに、新しいブロックとしてaudioBlockFormatIDをインクリメントして追加する。
【0078】
<第2の実施形態>
上述した再生位置の変化の傾きによる統合に加えて、jumpPosition及びinterpolationLengthを利用して当該ブロックと前ブロックを統合し、さらにデータ量を圧縮することも可能である。jumpPosition及びinterpolationLengthも利用してデータ量を圧縮する例を、第2の実施形態として以下に説明する。
【0079】
図8は、第2の実施形態に係る音響メタデータ処理装置2の構成例を示すブロック図である。
図8に示す音響メタデータ処理装置2は、起点変換部10と、統合判定部11と、音響メタデータ結合部12’と、音響メタデータ記憶部13と、を備える。第2の実施形態に係る音響メタデータ処理装置2は、第1の実施形態に係る音響メタデータ処理装置1と比較して、音響メタデータ結合部の処理が相違する。その他は第1の実施形態と同じであるため、説明を省略する。
【0080】
音響メタデータ結合部12’は、音声オブジェクトの再生位置の変化を記述する際にその変化が連続的になるよう記述可能な、再生位置の変化の補完時間(interpolationLength)を用いることで、当該時刻直前の音声オブジェクトの再生位置に変化があり、当該時刻における同一の音声オブジェクトの再生位置に変化がない音響メタデータを統合する。
【0081】
図9は、音響メタデータ処理装置2における処理手順例を示すフローチャートである。図の破線内は、
図2と相違する箇所である。
【0082】
jumpPosition及びinterpolationLengthを利用して統合を行うことができるのは、前ブロックの終了時点と当該ブロックの開始時点の傾きが異なり(ステップS19-No)、かつ当該ブロックが前ブロックと同じパラメータを持つ場合(ステップS23-Yes)である。
【0083】
ステップS24では、音響メタデータ結合部12により、前ブロックを前々ブロックの再生位置から当該ブロックの再生位置に変化するinterpolationにあたる部分として、前ブロックと当該ブロックを
図6に示す※3の設定で統合する。すなわち、audioBlockFormatID及びrtimeには、前ブロックの値を設定する。durationには、前ブロックのdurationと当該ブロックのdurationを加算した値を設定する。positionには、当該ブロックのpositionの値を設定する。jumpPositionには1を設定し、interpolationLengthには、前ブロックのdurationの値を設定する。なお、前ブロックが既にjumpPosition及びinterpolationLengthの値を持つ場合には統合不可であるが、その場合は前ブロックの終了時点の傾きが0となるため、jumpPositionなどの判定を行う必要はない。
【0084】
また、前ブロックの終了時点の傾きと当該ブロックの開始時点での傾きが一致する場合(ステップS19-Yes)のブロック結合処理(ステップS20’)も、一部変化が生じる。
【0085】
図10は、音響メタデータ処理装置2における、ブロック結合方法の一例を示すフローチャートである。図の破線内は、
図5と相違する箇所である。
【0086】
図10に示すように、当該ブロックがjumpPosition及びinterpolationLengthを持つ場合、統合可否の判断については
図9から分かるように
図2から変化はないが、統合の前に当該ブロックを分割する必要はなく、そのままjumpPosition及びinterpolationLengthを残して統合が可能である。したがって、当該ブロックのjumpPositionの値が1である場合には(ステップS201-Yes)、
図6示す※4の設定で前ブロックと統合する(ステップS210)。すなわち、audioBlockFormatID及びrtimeには、前ブロックの値を設定する。durationには、前ブロックのdurationと当該ブロックのdurationを加算した値を設定する。positionには、当該ブロックのpositionの値を設定する。jumpPositionには1を設定し、interpolationLengthには前ブロックのdurationと当該ブロックのinterpolationLengthを加算した値を設定する。
【0087】
なお、上述した第1の実施形態及び第2の実施形態において、再生位置の記述には方位角と仰角の2つのパラメータが用いられるが、この2つのうち、一方のパラメータで統合可能という判断になったとしても、他方のパラメータが統合不可という判断になった場合には、当該ブロックを新しいブロックとして、前ブロックの次のブロックに追加してもよい。この場合、2つのパラメータのいずれもが統合可能という判断となった場合に限り、当該ブロックを前ブロックと統合する。
【0088】
<実施例>
次に、音響メタデータ処理装置1又は音響メタデータ処理装置2により結合処理されたADMの具体例について、以下に実施例1から実施例5として説明する。
【0089】
(実施例1)
実施例1として、各ブロックのパラメータは再生位置以外に変化がなく、再生位置の変化の傾きが常に一定なS-ADMに関して、当該audioChannelFormatの第6ブロックから第8ブロックまで(S-ADMの3フレーム分)を受信した際の、音響メタデータ処理装置1の動作例を説明する。なお、音響メタデータの変換によりaudioBlockFormatのID(audioBlockFormatID)が変わるため、以降では変換元のaudioBlockFormatIDを変換元AB_yyyyxxxx_zzzzzzzzと記し、変換先のaudioBlockFormatIDを変換先AB_yyyyxxxx_zzzzzzzzと記す。
【0090】
図11は、S-ADMの一例を示す図である。
図12は、従来手法により、
図11に示すS-ADMから生成されるADMの一例を示す図である。
図13は、音響メタデータ処理装置1により、
図11に示すS-ADMから生成されるADMの一例を示す図である。以下、
図11及び
図13を参照して、audioChannelFormatの第6ブロックから第8ブロックまでの統合処理について説明する。
【0091】
S-ADMをフレームFF_00000006から順に受信した際、まず起点変換部10は、全てのブロックの時間表記(起点)を変更する。lstart及びldurationはそれぞれ、S-ADMの各フレームの開始時間を起点とした時間の記述方法であり、当該ブロックの開始時間及びブロック長を表す。lstartをフレームのstart時間と加算し、ADMの表記法である番組(audioProgramme)の開始時間を起点とする表記法のrtimeを計算する。ブロック長はどちらの表記法でも同じであるため、ldurationはそのままdurationに置き換え可能である。
【0092】
その後、初期化ブロックを除き最も若番である変換元ブロック(audioBlockFormatID:AB_00030001_00000006)から順に比較、統合を行う。
【0093】
audioBlockFormatIDの下8桁で表される数字は、時間方向に並べられたブロック一つひとつを区別するインデックスであり、第1ブロックには00000001が用いられ、初期化ブロックには00000000が用いられる。AB_00030001_00000006と、その前の初期化ブロックAB_00030001_00000000のパラメータとを比較し、再生位置の変化は30度であり、180度を下回っているため、当該ブロックは分割不要と判断する。
【0094】
次に、統合判定部11は、当該ブロックが当該チャンネルの第1ブロックであるかを確認する。インデックスからAB_00030001_00000006は第1ブロックではないと分かるが、実施例1ではS-ADMを第6フレームから受信し始めた際に初期化ブロック(initializeBlock = 1が記述されたブロック)を合わせて受信しているため、初期化ブロックのパラメータを用い、duration=0の第1ブロック(変換先AB_00030001_00000001)を生成する。
【0095】
次に、統合判定部11は、前ブロックと再生位置以外に異なるパラメータが存在するかを確認する。実施例1では再生位置のみが異なっていることが確認できる。
【0096】
次に、統合判定部11は、
図3に示したフローに従い、前ブロック終了時点の再生位置変化の傾きω
n-1 endを計算する。いま、初期化ブロックから当該チャンネルの第1ブロックを生成したため、当該ブロック(変換元AB_00030001_00000006)の前ブロックは当該チャンネルの第1ブロック(変換先AB_00030001_00000001)となっており、ω
n-1 end=0と判断する。
【0097】
ωn-1 endが0なので、統合判定部11は、当該ブロック(変換元AB_00030001_00000006)と前ブロック(変換先AB_00030001_00000001)のパラメータを比較する。再生位置が異なるため、統合判定部11は、当該ブロックは前ブロックと統合不可と判断する。音響メタデータ結合部12は、当該ブロックを前ブロックの次に新しいブロックとして追加する(変換先AB_00030001_00000002)。
【0098】
S-ADMのフレームFF_00000006で受信した全てのブロックの処理が完了したため、フレームFF_00000007で受信したブロックの処理に移る。FF_00000006と同様に、起点変換部10は、全てのブロックの時間表記(起点)を変更する。
【0099】
その後、初期化ブロックを除いた若番のブロック(変換元AB_00030001_00000007)の処理に移る。統合判定部11は、前ブロック(変換先AB_00030001_00000002)と比較し、再生位置の変化が180度を下回っていることを確認する。
【0100】
前ブロック(変換先AB_00030001_00000002)が存在するため、当該ブロック(変換元AB_00030001_00000007)が第1ブロックではない。
【0101】
統合判定部11は、当該ブロック(変換元AB_00030001_00000007)と前ブロック(変換先AB_00030001_00000002)とを比較し、再生位置のみが異なるパラメータとなっているため、
図3に従い前ブロックの前ブロック終了時点の再生位置変化の傾きω
n-1 endを計算する。
【0102】
前ブロック(変換先AB_00030001_00000002)が第1ブロックではないこと、及び前々ブロック(変換先AB_00030001_00000001)と同じパラメータではないことは、既に確認済みである。また、jumpPositionの記述はないため、統合判定部11は、式(2)よりωn-1 end=15度/秒と計算する。
【0103】
統合判定部11は、ω
n-1 endが0ではないので、次に
図4に従い当該ブロック開始時点の再生位置変化の傾きω
n startを計算する。前ブロック(変換先AB_00030001_00000002)と同じパラメータではないことは、既に確認済みである。また、jumpPositionの記述はないため、統合判定部11は、式(4)によりω
n start=15度/秒と計算する。
【0104】
統合判定部11は、前ブロック終了時と当該ブロック開始時で再生位置変化の傾きが15度/秒で一致するため、前ブロック(変換先AB_00030001_00000002)と当該ブロック(変換元AB_00030001_00000007)とを統合可能と判断する。
【0105】
次に、音響メタデータ結合部12は、
図5に従い統合処理を行う。jumpPositionの記述がないため、音響メタデータ結合部12は、当該ブロックを
図6に示す※1の設定で前ブロック(変換先AB_00030001_00000002)と統合する。統合する前の前ブロックと比較し、統合後のブロックではdurationに当該ブロック(変換元AB_00030001_00000007)のdurationが加算され、再生位置が当該ブロックの再生位置に書き換えられている。
【0106】
フレームFF_00000008についてもフレームFF_00000007と同様に処理を行う。最終的には、音響メタデータ処理装置1で変換を行わずにADMを生成した例(
図12参照)では4つのブロックで記述されるのに対し、音響メタデータ処理装置1を用いることによりADMを2つのブロックで記述することができ、データ量が削減されていることが分かる。
【0107】
なお、本実施形態ではS-ADMを2秒に1フレームの周期で送信したが、オブジェクトベース音響の放送導入に向けては、S-ADMを映像のフレーム周期と一致させて送信することも検討されている。
【0108】
仮にパラメータの変化が実施例1のように一定、又は変化がないS-ADMを用いる場合、映像のフレーム周期が30fpsの1時間番組では、おおよそ30ブロック×3600秒で108000ブロックが生成されるが、音響メタデータ処理装置1を用いれば2ブロックで記述することができるため、データ量の大幅な削減が期待できる。
【0109】
(実施例2)
実施例2として、各ブロックのパラメータは再生位置以外に変化がなく、再生位置の変化の傾きに変化があるS-ADMに関して、当該audioChannelFormatの第1ブロックから第5ブロックまでを受信した際の、変化閾値Nを160度に設定した音響メタデータ処理装置1の動作例を説明する。
【0110】
図14は、S-ADMの一例を示す図である。
図15は、音響メタデータ処理装置1により、
図14に示すS-ADMから生成されるADMの一例を示す図である。以下、
図14及び
図15を参照して、audioChannelFormatの第1ブロックから第5ブロックまでの統合処理について説明する。
【0111】
S-ADMをフレームFF_00000001から順に受信した際、起点変換部10は、実施例1と同様に、全てのブロックの時間表記(起点)を変更する。その後、初期化ブロックを除き最も若番である変換元ブロック(audioBlockFormatID:AB_00030001_00000001)から順に比較、統合が行う。
【0112】
当該ブロック(変換元AB_00030001_00000001)はIDの下8桁が第1ブロックを示す数字となっているが、初期化ブロックを合わせて受信しているため、初期化ブロック(変換元AB_00030001_00000000)を当該チャンネルの第1ブロック(変換先AB_00030001_00000001)として扱う。そのため当該ブロック(変換元AB_00030001_00000001)は第1ブロックではなくなり、再生位置などの比較に進む。
【0113】
当該ブロック(変換元AB_00030001_00000001)は再生位置以外に前ブロック(変換先AB_00030001_00000001)と異なるパラメータはないため、統合判定部11は、
図3に示したフローに従い、前ブロック(変換先AB_00030001_00000001)の終了時点での再生位置変化の傾きω
n-1 endを計算する。前ブロック(変換先AB_00030001_00000001)は第1ブロックであるため、ω
n-1 end=0と判断する。
【0114】
当該ブロック(変換元AB_00030001_00000001)と前ブロック(変換先AB_00030001_00000001)とでは再生位置が異なるため、統合判定部11は、当該ブロックは前ブロックと統合不可と判断する。音響メタデータ結合部12は、当該ブロック(変換元AB_00030001_00000001)を前ブロック(変換先AB_00030001_00000001)の次に新しいブロックとして追加する(変換先AB_00030001_00000002)。
【0115】
次のブロック(変換元AB_00030001_00000002)も同様に処理を進め、音響メタデータ結合部12は、実施例1と同様に、前ブロック(変換先AB_00030001_00000002)と統合する。
【0116】
さらに次のブロック(変換元AB_00030001_00000003)について音響メタデータ結合部12は、まず一度、その傾きの一致から前ブロック(変換先AB_00030001_00000002)と統合し、前ブロック(変換先AB_00030001_00000002)はduration=3秒をかけて再生位置を方位角+160度から-80度まで-240度変化させるブロック(傾きは-80度/秒)となる。しかし、その方位角の変化の絶対値240度がN=160度を超える。そのため、分割部121は、方位角の変化が160度を超える点で再度分割し、分割の前後で傾きが等しく(ωn-1 end=ωn start)なるよう、ブロックの時間長を2秒と1秒で分割する。そして音響メタデータ結合部12は、分割した後半のブロックを前ブロック(変換先AB_00030001_00000002)の後に追加する(変換先AB_00030001_00000003)。
【0117】
さらに次のブロック(変換元AB_00030001_00000004)について、統合判定部11は、式(3)により、ブロックの開始時点での再生位置変化の傾きωn start=-80度/秒と計算する。統合判定部11は、ωn startが、前ブロック(変換先AB_00030001_00000003)の終了時点の再生位置変化の傾きωn-1 endと一致するため、統合可能と判断する。
【0118】
当該ブロック(変換元AB_00030001_00000004)にはjumpPositionが設定されているため、音響メタデータ結合部12は、
図5に従い、interpolationLengthの終了時点で当該ブロックを分割し、分割した前半のブロックを
図6に示す※2の設定で前ブロック(変換先AB_00030001_00000003)と統合する。音響メタデータ結合部12は、分割した後半のブロックを新しいブロックとして、前ブロック(変換先AB_00030001_00000003)の次に追加する(変換先AB_00030001_00000004)。
【0119】
統合判定部11は、最後のブロック(変換元AB_00030001_00000005)を前ブロック(変換先AB_00030001_00000004)と比較すると、前ブロック(変換先AB_00030001_00000004)の傾きは0であり、2つのブロックの再生位置は一致するため、当該ブロック(変換元AB_00030001_00000005)は前ブロック(変換先AB_00030001_00000004)と傾き一致により、統合可能と判断する。音響メタデータ結合部12は、当該ブロックを
図6に示す※1の設定により統合する。
【0120】
(実施例3)
実施例3として、各ブロックのパラメータは再生位置以外に変化がなく、再生位置の変化に加え、ゲインにも変化があるS-ADMに関して、当該audioChannelFormatの第1ブロックから第5ブロックまでを受信した際の、音響メタデータ処理装置1の動作例を説明する。
【0121】
図16は、S-ADMの一例を示す図である。
図17は、音響メタデータ処理装置1により、
図16に示すS-ADMから生成されるADMを生成した例(αを3%に設定)である。
図18は、音響メタデータ処理装置1により、
図16に示すS-ADMから生成されるADMを生成した例(αを5%に設定)である。以下、
図16から
図18を参照して、audioChannelFormatの第1ブロックから第5ブロックまでの統合処理について説明する。
【0122】
初期化ブロック(変換元AB_00030001_00000000)及び初期化ブロックを除き最も若番である変換元ブロック(変換元AB_00030001_00000001)をそれぞれ、変換先の第1ブロック(変換先AB_00030001_00000001)及びその次のブロック(変換先AB_00030001_00000002)とするところまでは、実施例2と同様であるため説明を省略する。
【0123】
次のブロック(変換元AB_00030001_00000002)以降は、傾きが一致するという判断基準の許容範囲である相対誤差のαの設定値によって異なる変換となる。まず、
図17を参照して、αを3%に設定していた場合から説明する。
【0124】
統合判定部11は、前ブロック(変換先AB_00030001_00000002)の終了時点の再生位置変化の傾きωn-1 end=22度/秒と、当該ブロック(変換元AB_00030001_00000002)の開始時点での傾きωn start=23度/秒を比較し、その相対誤差を式(1)より約4.5%と算出し、α=3%を超えているため、当該ブロック(変換元AB_00030001_00000002)は統合不可と判断する。音響メタデータ結合部12は、当該ブロックを新しいブロックとして追加する(変換先AB_00030001_00000003)。
【0125】
また、さらに次のブロック(変換元AB_00030001_00000003)について、統合判定部11は、その開始時点の再生位置変化の傾きωn start=0度/秒をその前ブロック(変換先AB_00030001_00000003)の終了時点の再生位置変化の傾きωn-1 end=23度/秒と比較し、その相対誤差は式(1)より100%となるため、当該ブロック(変換元AB_00030001_00000003)は統合不可と判断する。音響メタデータ結合部12は、当該ブロックを新しいブロックとして追加する(変換先AB_00030001_00000004)。
【0126】
さらに次のブロック(変換元AB_00030001_00000004)について、統合判定部11は、前ブロック(変換先AB_00030001_00000004)の終了時点の再生位置変化の傾きがω
n-1 end=0度/秒であり、また当該ブロック(変換元AB_00030001_00000004)と前ブロック(変換先AB_00030001_00000004)の再生位置が一致するため、統合可能と判断する。音響メタデータ結合部12は、当該ブロックを
図6に示す※1の設定で前ブロック(変換先AB_00030001_00000004)と統合する。
【0127】
さらに次のブロック(変換元AB_00030001_00000005)について、統合判定部11は、再生位置のパラメータが前ブロック(変換先AB_00030001_00000004)と一致してはいるものの、再生位置以外のパラメータであるゲインが異なるため、統合不可と判断する。音響メタデータ結合部12は、当該ブロックを新しいブロックとして追加する(変換先AB_00030001_00000005)。
【0128】
また、相対誤差αを5%に設定していた場合について、
図18を参照して説明する。統合判定部11は、前ブロック(変換先AB_00030001_00000002)の終了時点の再生位置変化の傾きω
n-1 end=22度/秒と当該ブロック(変換元AB_00030001_00000002)の開始時点での傾きω
n start=23度/秒の相対誤差約4.5%がα=5%を下回るため、当該ブロック(変換元AB_00030001_00000002)は傾き一致により統合可能と判断する。音響メタデータ結合部12は、当該ブロックを
図6に示す※1の設定で前ブロックと統合する(変換先AB_00030001_00000002)。その後の処理はα=3%と設定した場合と同様に行われ、audioBlockFormatIDはα=3%と設定した場合のIDから1ずつデクリメントされた数値となる。
【0129】
(実施例4)
実施例4として、実施例2と同じS-ADMを受信した際の、音響メタデータ処理装置2の動作例を説明する。
【0130】
図19は、音響メタデータ処理装置2により、実施例2の
図14に示すS-ADMから生成されるADMの一例を示す図である。
【0131】
第3ブロック(変換元AB_00030001_00000003)の処理までは実施例2と同じように行われる(変換先AB_00030001_00000003)。
【0132】
その次のブロック(変換元AB_00030001_00000004)の処理では、音響メタデータ結合部12’は、
図9に示すように、interpolationLengthの終了時点で当該ブロックを分割することなく、そのまま前ブロック(変換先AB_00030001_00000003)と
図6に示す※4の設定で統合する。
【0133】
最後のブロック(変換元AB_00030001_00000005)について、統合判定部11は、前ブロック(変換先AB_00030001_00000003)と比較し、前ブロック(変換先AB_00030001_00000003)の傾きはω
n-1 end=0度/秒であり、2つのブロックの再生位置は一致するため、当該ブロック(変換元AB_00030001_00000005)は前ブロック(変換先AB_00030001_00000003)と傾き一致により統合可能と判断する。音響メタデータ結合部12’は、当該ブロックを、
図6に示す※1の設定で統合する。
【0134】
実施例4で変換されたADM(
図19参照)と、実施例2で変換されたADM(
図15参照)とを比較すると、4ブロックで記述されていた動的メタデータを3ブロックで記述できるようになるため、さらにデータ量を削減可能となることが分かる。
【0135】
(実施例5)
実施例5として、実施例3と同じS-ADMを受信した際の、音響メタデータ処理装置2の動作例を説明する。
【0136】
図20は、音響メタデータ処理装置2により、実施例3の
図16に示すS-ADMから生成されるADMの一例を示す図である。ここで、αは5%に設定されている。
【0137】
初期化ブロック(変換元AB_00030001_00000000)及び初期化ブロックを除き最も若番である変換元ブロック(変換元AB_00030001_00000001)をそれぞれ、変換先の第1ブロック(変換先AB_00030001_00000001)及びその次のブロック(変換先AB_00030001_00000002)とするところまでは実施例3と同様である。また、次のブロック(変換元AB_00030001_00000002)も、α=5%に設定されているため、実施例3と同様に前ブロックと統合される(変換先AB_00030001_00000002)。
【0138】
さらに次のブロック(変換元AB_00030001_00000003)について、統合判定部11は、その前ブロック(変換先AB_00030001_00000003)の終了時点の再生位置変化の傾きがω
n-1 end=23度/秒と0よりも大きいため、
図8のフローに従い、当該ブロック(変換元AB_00030001_00000003)の開始時点の再生位置変化の傾きω
n start=0度/秒と比較する。その相対誤差の大きさから傾きは不一致と判定されるが、当該ブロック(変換元AB_00030001_00000003)と前ブロック(変換先AB_00030001_00000003)の再生位置は等しい。そのため、音響メタデータ結合部12’は、当該ブロック(変換元AB_00030001_00000003)を
図6に示す※3の設定で前ブロックと統合する(変換先AB_00030001_00000002)。
【0139】
その後の処理は実施例3と同様に行われ、audioBlockFormatIDは実施例3のα=5%と設定した場合のIDからさらに1ずつデクリメントされた数値となる。
【0140】
実施例5で変換されたADM(
図20参照)と、実施例3(α=5%)で変換されたADM(
図18参照)とを比較すると、4ブロックで記述されていた動的メタデータを3ブロックで記述できるようになるため、さらにデータ量を削減可能となることが分かる。
【0141】
<プログラム>
なお、上述した音響メタデータ処理装置1,2として機能させるために、プログラム命令を実行可能なコンピュータを用いることも可能である。ここで、コンピュータは、汎用コンピュータ、専用コンピュータ、ワークステーション、PC(Personal Computer)、電子ノートパッドなどであってもよい。プログラム命令は、必要なタスクを実行するためのプログラムコード、コードセグメントなどであってもよい。
【0142】
コンピュータは、プロセッサと、記憶部と、入力部と、出力部と、通信インターフェースとを備える。プロセッサは、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)、SoC(System on a Chip)などであり、同種又は異種の複数のプロセッサにより構成されてもよい。プロセッサは、記憶部からプログラムを読み出して実行することで、上記各構成の制御及び各種の演算処理を行う。なお、これらの処理内容の少なくとも一部をハードウェアで実現することとしてもよい。入力部は、ユーザの入力操作を受け付けてユーザの操作に基づく情報を取得する入力インターフェースであり、ポインティングデバイス、キーボード、マウスなどである。出力部は、情報を出力する出力インターフェースであり、ディスプレイ、スピーカなどである。通信インターフェースは、外部の装置と通信するためのインターフェースである。
【0143】
プログラムは、コンピュータが読み取り可能な記録媒体に記録されていてもよい。このような記録媒体を用いれば、プログラムをコンピュータにインストールすることが可能である。ここで、プログラムが記録された記録媒体は、非一過性(non-transitory)の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROM、DVD-ROM、USB(Universal Serial Bus)メモリなどであってもよい。また、このプログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【0144】
このように、本発明によれば、オブジェクトベース音響において各時刻に対する動的メタデータが時系列で大量に記述されている音響メタデータ、特に再生位置の変化を伴う動的メタデータが記述されたS-ADMを記録・保存する際に、受信したS-ADMを逐次変換して前フレームまでに受信し再構築したADMと値の変化の傾きを用いて統合することで、データ量の増大を抑えながらADMを記録・保存することができる。
【0145】
また、再生位置の変化の補完時間を利用して統合することで、さらにデータ量を削減することができる。
【0146】
また、統合を行う際に方位角の変化が180度などの一定の値を超えないよう適切に分割することで、再構成したADMを読み込んだオブジェクトベース音響の再生機(レンダラー)が制作者の意図しない再生信号を生成することを防止できる。
【0147】
なお、本発明を適用することで、S-ADMを音声信号としてそのまま記録した音声ファイルを読み込みADMとして記録し直すといった、オフラインでの変換も可能であることは、当業者には明らかである。
【0148】
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態の構成図に記載の複数の構成ブロックを1つに組み合わせたり、あるいは1つの構成ブロックを分割したりすることが可能である。
【符号の説明】
【0149】
1,2 音響メタデータ処理装置
10 起点変換部
11 統合判定部
12,12’ 音響メタデータ結合部
13 音響メタデータ記憶部
121 分割部