(57)【要約】  本出願は、オーディオデータ処理方法および端末に関する。方法は、オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得するステップであって、第1のオーディオフレームは、時間シーケンスにおいて第2のオーディオフレームに先行する、ステップと、フレームセグメント化位置を判断するステップであって、第1のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値は距離近さ条件を満足する、ステップと、第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成し、第1のオーディオフレームと第2のオーディオフレームとの間に第3のオーディオフレームを挿入するステップとを含む。
2019508722.tif 000002
【特許請求の範囲】
【請求項１】
オーディオデータ処理方法であって、
オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得するステップであって、前記第1のオーディオフレームは、前記オーディオデータストリームの時間シーケンスにおいて前記第2のオーディオフレームに先行する、ステップと、
フレームセグメント化位置を判断するステップであって、前記第1のオーディオフレーム中の前記フレームセグメント化位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の前記フレームセグメント化位置におけるサンプリングポイント値は距離接近条件を満足する、ステップと、
前記第2のオーディオフレーム中の前記フレームセグメント化位置に先行するそれぞれのサンプリングポイント値および前記第1のオーディオフレーム中の前記フレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得するステップと、
前記第2のオーディオフレームから取得された前記それぞれのサンプリングポイント値と、前記第1のオーディオフレームから取得された前記それぞれのサンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成するステップと、
前記第1のオーディオフレームと前記第2のオーディオフレームとの間に前記第3のオーディオフレームを挿入するステップとを含む方法。
【請求項２】
前記オーディオデータストリームに対してリアルタイムの再生処理を実施するとき、少なくとも1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを確保するステップをさらに含み、
互いに隣接する前記第1のオーディオフレームおよび前記第2のオーディオフレームを前記オーディオデータストリームから取得するステップは、
オーディオフレームを挿入するための命令が検出されると、前記第1のオーディオフレームとして、再生処理が現在実施されているサンプリングポイント値の前の、再生処理が実施されたサンプリングポイント値の確保されたコピーを取得し、前記第2のオーディオフレームとして、再生処理が現在実施されている前記サンプリングポイント値に後続する、1つのオーディオフレームの長さをもつサンプリングポイント値を取得するステップを含む、請求項1に記載の方法。
【請求項３】
前記フレームセグメント化位置を判断するステップは、
複数の候補位置を取得するステップであって、前記複数の候補位置の各々について、前記第1のオーディオフレーム中の前記候補位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値は前記距離接近条件を満足する、ステップと、
前記複数の候補位置の各々について、前記候補位置における前記第1のオーディオフレームおよび前記第2のオーディオフレームのそれぞれの局所相似度を取得するステップと、
前記それぞれの局所相似度に従って前記フレームセグメント化位置を判断するステップを含む、請求項1に記載の方法。
【請求項４】
前記フレームセグメント化位置を判断するステップは、
複数の候補位置を取得するステップであって、少なくとも1つの候補位置の各々について、前記第1のオーディオフレーム中の前記候補位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値は前記距離接近条件を満足する、ステップと、
前記複数の候補位置の各々について、あらかじめ設定された長さを有し、前記第1のオーディオフレームおよび前記第2のオーディオフレーム中の前記候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離のそれぞれの和を取得するステップと、
最も小さい距離和に対応する候補位置を前記フレームセグメント化位置として判断するステップとを含む、請求項1に記載の方法。
【請求項５】
前記距離接近条件は、
第1の差と第2の差の積が0以下であるという第1の要件を含み、
前記第1の差は、前記第1のオーディオフレーム中の前記候補位置における前記サンプリングポイント値と、前記第2のオーディオフレーム中の前記対応する候補位置における前記サンプリングポイント値との間の差であり、
前記第2の差は、前記第1のオーディオフレーム中の前記候補位置に後続する位置におけるサンプリングポイント値と、前記第2のオーディオフレーム中の対応する位置におけるサンプリングポイント値との間の差である、請求項4に記載の方法。
【請求項６】
互いに隣接するとともに、指定されたチャネルの前記オーディオデータストリームから取得された前記第1のオーディオフレームおよび前記第2のオーディオフレームについて、音効果がオンにされたとき、前記第2のオーディオフレーム中の前記フレームセグメント化位置に先行するそれぞれのサンプリングポイント値および前記第1のオーディオフレーム中の前記フレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得し、前記それぞれのサンプリングポイント値を順にスティッチングして、前記第3のオーディオフレームを生成し、前記第1のオーディオフレームと前記第2のオーディオフレームとの間に前記第3のオーディオフレームを挿入し、前記挿入された第3のオーディオフレームに対してフェードイン処理を実施するステップであって、そうすることによって、前記挿入された第3のオーディオフレームは、時間シーケンスに従って、音効果なし状態から無損傷音効果状態に漸進的に遷移する、ステップをさらに含む、請求項1に記載の方法。
【請求項７】
オーディオデータ処理方法であって、
オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得するステップであって、前記第1のオーディオフレームは、前記オーディオデータストリームの時間シーケンスにおいて前記第2のオーディオフレームに先行する、ステップと、
フレームセグメント化位置を判断するステップであって、前記第1のオーディオフレーム中の前記フレームセグメント化位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の前記フレームセグメント化位置におけるサンプリングポイント値は距離接近条件を満足する、ステップと、
前記第1のオーディオフレーム中の前記フレームセグメント化位置に先行するそれぞれのサンプリングポイント値および前記第2のオーディオフレーム中の前記フレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得し、前記それぞれのサンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成するステップと、
前記第1のオーディオフレームおよび前記第2のオーディオフレームを前記第4のオーディオフレームに置き換えるステップとを含む方法。
【請求項８】
前記オーディオデータストリームに対してリアルタイムの再生処理を実施するとき、少なくとも1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを確保するステップをさらに含み、
互いに隣接する前記第1のオーディオフレームおよび前記第2のオーディオフレームを前記オーディオデータストリームから取得するステップは、
オーディオフレームを挿入するための命令が検出されると、前記第1のオーディオフレームとして、再生処理が現在実施されているサンプリングポイント値の前の、再生処理が実施されたサンプリングポイント値の確保されたコピーを取得し、前記第2のオーディオフレームとして、前記再生処理が現在実施されている前記サンプリングポイント値に後続する、1つのオーディオフレームの長さをもつサンプリングポイント値を取得するステップを含む、請求項7に記載の方法。
【請求項９】
前記フレームセグメント化位置を判断するステップは、
複数の候補位置を取得するステップであって、前記複数の候補位置の各々について、前記第1のオーディオフレーム中の前記候補位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値は前記距離接近条件を満足する、ステップと、
前記複数の候補位置の各々について、前記対応する候補位置における前記第1のオーディオフレームおよび前記第2のオーディオフレームのそれぞれの局所相似度を取得するステップと、
前記それぞれの局所相似度に従って前記フレームセグメント化位置を判断するステップとを含む、請求項7に記載の方法。
【請求項１０】
前記フレームセグメント化位置を判断するステップは、
複数の候補位置を取得するステップであって、前記複数の候補位置の各々について、前記第1のオーディオフレーム中の前記候補位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値は距離接近条件を満足する、ステップと、
前記複数の候補位置の各々について、あらかじめ設定された長さを有し、前記第1のオーディオフレームおよび前記第2のオーディオフレーム中の前記候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離のそれぞれの和を取得するステップと、
最も小さい距離和に対応する候補位置を前記フレームセグメント化位置として判断するステップとを含む、請求項7に記載の方法。
【請求項１１】
前記距離接近条件は、
第1の差と第2の差の積が0以下であるという第1の要件を含み、
前記第1の差は、前記第1のオーディオフレーム中の前記候補位置における前記サンプリングポイント値と、前記第2のオーディオフレーム中の前記対応する候補位置における前記サンプリングポイント値との間の差であり、
前記第2の差は、前記第1のオーディオフレーム中の前記候補位置に後続する位置におけるサンプリングポイント値と、前記第2のオーディオフレーム中の対応する位置におけるサンプリングポイント値との間の差である、請求項10に記載の方法。
【請求項１２】
互いに隣接するとともに、指定されたチャネルの前記オーディオデータストリームから取得された前記第1のオーディオフレームおよび前記第2のオーディオフレームについて、音効果がオンにされたとき、前記第1のオーディオフレーム中の前記フレームセグメント化位置に先行するそれぞれのサンプリングポイント値および前記第2のオーディオフレーム中の前記フレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得し、前記それぞれのサンプリングポイント値を順にスティッチングして、前記第4のオーディオフレームを生成し、前記第1のオーディオフレームおよび前記第2のオーディオフレームを前記第4のオーディオフレームに置き換え、前記取得された第4のオーディオフレームに対してフェードイン処理を実施するステップであって、そうすることによって、前記取得された第4のオーディオフレームは、時間シーケンスに従って、音効果なし状態から無損傷音効果状態に漸進的に遷移する、ステップをさらに含む、請求項7に記載の方法。
【請求項１３】
メモリおよびプロセッサを備える端末であって、コンピュータ可読命令が前記メモリに記憶され、前記コンピュータ可読命令は、前記プロセッサによって実行されると、
オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得することであって、前記第1のオーディオフレームは、前記オーディオデータストリームの時間シーケンスにおいて前記第2のオーディオフレームに先行する、取得すること、
フレームセグメント化位置を判断することであって、前記第1のオーディオフレーム中の前記フレームセグメント化位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の前記フレームセグメント化位置におけるサンプリングポイント値は距離接近条件を満足する、判断すること、ならびに
前記第2のオーディオフレーム中の前記フレームセグメント化位置に先行するそれぞれのサンプリングポイント値および前記第1のオーディオフレーム中の前記フレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得し、前記それぞれのサンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成し、前記第1のオーディオフレームと前記第2のオーディオフレームとの間に前記第3のオーディオフレームを挿入することを含む動作を前記プロセッサに実施させる、端末。
【請求項１４】
前記コンピュータ可読命令は、前記プロセッサによって実行されると、
前記オーディオデータストリームに対してリアルタイムの再生処理を実施するとき、少なくとも1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを確保することを含む動作を前記プロセッサにさらに実施させ、
互いに隣接する前記第1のオーディオフレームおよび前記第2のオーディオフレームを前記オーディオデータストリームから取得することは、
オーディオフレームを挿入するための命令が検出されると、前記第1のオーディオフレームとして、再生処理が現在実施されているサンプリングポイント値の前の、再生処理が実施されたサンプリングポイント値の確保されたコピーを取得し、前記第2のオーディオフレームとして、再生処理が現在実施されている前記サンプリングポイント値に後続する、1つのオーディオフレームの長さをもつサンプリングポイント値を取得することを含む、請求項13に記載の端末。
【請求項１５】
前記フレームセグメント化位置を判断することは、
複数の候補位置を取得することであって、前記複数の候補位置の各々について、前記第1のオーディオフレーム中の前記候補位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値は前記距離接近条件を満足する、取得すること、
前記複数の候補位置の各々について、前記対応する候補位置における前記第1のオーディオフレームおよび前記第2のオーディオフレームのそれぞれの局所相似度を取得すること、ならびに
前記それぞれの局所相似度に従って前記フレームセグメント化位置を判断することを含む、請求項13に記載の端末。
【請求項１６】
前記フレームセグメント化位置を判断することは、
複数の候補位置を取得することであって、前記複数の候補位置の各々について、前記第1のオーディオフレーム中の前記候補位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値は前記距離接近条件を満足する、取得すること、
前記複数の候補位置の各々について、あらかじめ設定された長さを有し、前記第1のオーディオフレームおよび前記第2のオーディオフレーム中の前記候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離のそれぞれの和を取得すること、ならびに
最も小さい距離和に対応する候補位置を前記フレームセグメント化位置として判断することを含む、請求項13に記載の端末。
【請求項１７】
前記距離接近条件は、
第1の差と第2の差の積が0以下であるという第1の要件を含み、
前記第1の差は、前記第1のオーディオフレーム中の前記候補位置における前記サンプリングポイント値と、前記第2のオーディオフレーム中の前記対応する候補位置における前記サンプリングポイント値との間の差であり、
前記第2の差は、前記第1のオーディオフレーム中の前記候補位置に後続する位置におけるサンプリングポイント値と、前記第2のオーディオフレーム中の対応する位置におけるサンプリングポイント値との間の差である、請求項16に記載の端末。
【請求項１８】
前記コンピュータ可読命令は、前記プロセッサによって実行されると、
互いに隣接するとともに、指定されたチャネルの前記オーディオデータストリームから取得された前記第1のオーディオフレームおよび前記第2のオーディオフレームについて、音効果がオンにされたとき、前記第2のオーディオフレーム中の前記フレームセグメント化位置に先行するそれぞれのサンプリングポイント値および前記第1のオーディオフレーム中の前記フレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得し、前記それぞれのサンプリングポイント値を順にスティッチングして、前記第3のオーディオフレームを生成し、前記第1のオーディオフレームと前記第2のオーディオフレームとの間に前記第3のオーディオフレームを挿入し、前記挿入された第3のオーディオフレームに対してフェードイン処理を実施することであって、そうすることによって、前記挿入された第3のオーディオフレームは、時間シーケンスに従って、音効果なし状態から無損傷音効果状態に漸進的に遷移する、実施することを含む動作を前記プロセッサにさらに実施させる、請求項13に記載の端末。
【請求項１９】
メモリおよびプロセッサを備える端末であって、コンピュータ可読命令が前記メモリに記憶され、前記コンピュータ可読命令は、前記プロセッサによって実行されると、
オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得することであって、前記第1のオーディオフレームは、前記オーディオデータストリームの時間シーケンスにおいて前記第2のオーディオフレームに先行する、取得すること、
フレームセグメント化位置を判断することであって、前記第1のオーディオフレーム中の前記フレームセグメント化位置におけるサンプリングポイント値および前記第2のオーディオフレーム中の前記フレームセグメント化位置におけるサンプリングポイント値は距離接近条件を満足する、判断すること、ならびに
前記第1のオーディオフレーム中の前記フレームセグメント化位置に先行するそれぞれのサンプリングポイント値および前記第2のオーディオフレーム中の前記フレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得し、前記それぞれのサンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成し、前記第1のオーディオフレームおよび前記第2のオーディオフレームを前記第4のオーディオフレームに置き換えることを含む動作を前記プロセッサに実施させる、端末。
【請求項２０】
前記コンピュータ可読命令は、前記プロセッサによって実行されると、
前記オーディオデータストリームに対してリアルタイムの再生処理を実施するとき、少なくとも1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを確保することを含む動作を前記プロセッサにさらに実施させ、
互いに隣接する前記第1のオーディオフレームおよび前記第2のオーディオフレームを前記オーディオデータストリームから取得することは、
オーディオフレームを挿入するための命令が検出されると、前記第1のオーディオフレームとして、再生処理が現在実施されているサンプリングポイント値の前の、再生処理が実施されたサンプリングポイント値の確保されたコピーを取得し、前記第2のオーディオフレームとして、再生処理が現在実施されている前記サンプリングポイント値に後続する、1つのオーディオフレームの長さをもつサンプリングポイント値を取得することを含む、請求項19に記載の端末。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は、参照によりその全体が組み込まれている、2016年1月14日に中国特許庁に出願された、「AUDIO DATA PROCESSING METHOD AND APPARATUS」と題する中国特許出願第201610025708.1号に対する優先権を主張する。
【０００２】
本出願は、オーディオデータ処理技術の分野に関し、詳細には、オーディオデータ処理方法および端末に関する。
【背景技術】
【０００３】
オーディオデータ処理技術の適用により、オーディオデータを生成し、データを記憶するために、人々がオーディオ監視ユニットを使うことによって音を収集することができる。記憶されたオーディオデータは、必要な場合はオーディオプレーヤを使うことによって再生し、そうすることによって音を再現する(re-show)ことができる。オーディオデータ処理技術の広い適用は、音を非常に記録しやすく、再現しやすくし、そうすることによって、人々の生活および仕事において極めて重要な役割を果たす。
【０００４】
現在、オーディオデータストリームを処理するとき、オーディオデータの2つの隣接するフレームの間にオーディオデータの1つのフレームが挿入される必要がある。たとえば、いくつかの特殊音効果において、左チャネルまたは右チャネルのうちのいずれかのオーディオデータストリーム中のオーディオデータの2つの隣接するフレームの間に、オーディオデータの1つのフレームが挿入され、そうすることによって、左チャネルのオーディオデータストリームと右チャネルのオーディオデータストリームとの間に、オーディオデータの1つのフレーム分の差が生じ、そうすることによって、サラウンドの特殊効果が達成される。別の例として、左チャネルのオーディオデータストリームと右チャネルのオーディオデータストリームが非同期であるとき、左チャネルおよび右チャネルの非同期オーディオデータストリームの問題を解決するために、オーディオデータストリームのうちの1つにオーディオデータが挿入され得る。
【０００５】
ただし、現在、オーディオデータストリーム中のオーディオデータの2つの隣接するフレームの間にオーディオデータを挿入するとき、挿入されるオーディオデータは通常、まさにオーディオデータの2つのフレームのうちの1つであり、挿入後のオーディオ再生中にオーディオデータが挿入される場合は明らかな雑音が生じることにつながる。これは、解決される必要がある問題である。同様に、オーディオデータストリームからオーディオデータの1つのフレームが消去されると、雑音が生じる。
【発明の概要】
【課題を解決するための手段】
【０００６】
本出願の実施形態によると、オーディオデータ処理方法および端末が提供される。
【０００７】
オーディオデータ処理方法であって、
オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得するステップであって、第1のオーディオフレームは、オーディオデータストリームの時間シーケンスにおいて第2のオーディオフレームに先行する、ステップと、
フレームセグメント化位置を判断するステップであって、第1のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値は距離接近条件を満足する、ステップと、
第2のオーディオフレーム中のフレームセグメント化位置に先行するそれぞれのサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得するステップと、
第2のオーディオフレームから取得されたそれぞれのサンプリングポイント値と、第1のオーディオフレームから取得されたそれぞれのサンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成するステップと、
第1のオーディオフレームと第2のオーディオフレームとの間に第3のオーディオフレームを挿入するステップとを含む方法。
【０００８】
オーディオデータ処理方法であって、
オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得するステップであって、第1のオーディオフレームは、オーディオデータストリームの時間シーケンスにおいて第2のオーディオフレームに先行する、ステップと、
フレームセグメント化位置を判断するステップであって、第1のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値は距離接近条件を満足する、ステップと、
第1のオーディオフレーム中のフレームセグメント化位置に先行するそれぞれのサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得し、それぞれのサンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成するステップと、
第1のオーディオフレームおよび第2のオーディオフレームを第4のオーディオフレームに置き換えるステップとを含む方法。
【０００９】
メモリおよびプロセッサを含む端末であって、コンピュータ可読命令がメモリに記憶され、コンピュータ可読命令は、プロセッサによって実行されると、
オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得することであって、第1のオーディオフレームは、オーディオデータストリームの時間シーケンスにおいて第2のオーディオフレームに先行する、取得すること、
フレームセグメント化位置を判断することであって、第1のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値は距離接近条件を満足する、判断すること、ならびに
第2のオーディオフレーム中のフレームセグメント化位置に先行するそれぞれのサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得し、それぞれのサンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成し、第1のオーディオフレームと第2のオーディオフレームとの間に第3のオーディオフレームを挿入することを含む動作をプロセッサに実施させる、端末。
【００１０】
メモリおよびプロセッサを含む端末であって、コンピュータ可読命令がメモリに記憶され、コンピュータ可読命令は、プロセッサによって実行されると、
オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得することであって、第1のオーディオフレームは、オーディオデータストリームの時間シーケンスにおいて第2のオーディオフレームに先行する、取得すること、
フレームセグメント化位置を判断することであって、第1のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値は距離接近条件を満足する、判断すること、ならびに
第1のオーディオフレーム中のフレームセグメント化位置に先行するそれぞれのサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置に後続するそれぞれのサンプリングポイント値を取得し、それぞれのサンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成し、第1のオーディオフレームおよび第2のオーディオフレームを第4のオーディオフレームに置き換えることを含む動作をプロセッサに実施させる、端末。
【００１１】
本出願の1つまたは複数の実施形態の詳細を、以下の添付の図面および説明に示す。本出願の他の特徴、目的および利点は、本明細書、添付の図面および請求項により明らかになるであろう。
【００１２】
本出願の実施形態の技術的解決策または既存の技術をより明瞭に説明するために、以下では、実施形態または既存の技術を説明するために必要とされる添付の図面について簡潔に説明する。明らかに、以下の説明における添付の図面は、本出願のいくつかの実施形態のみを示し、当業者は、これらの添付の図面から、創意工夫なしに他の図面をさらに導出することができる。
【図面の簡単な説明】
【００１３】
【図１】ある実施形態による、オーディオデータ処理方法を実装するための端末の概略構造図である。
【図２】ある実施形態によるオーディオデータ処理方法の概略フローチャートである。
【図３Ａ】ある実施形態による、互いに隣接する第1のオーディオフレームと第2のオーディオフレームとの間にオーディオフレームを挿入する概略図である。
【図３Ｂ】ある実施形態による、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームのうちの1つを消去する概略図である。
【図４】ある実施形態による、第1のオーディオフレームのサンプリングポイント値の部分的分布図である。
【図５】ある実施形態による、第2のオーディオフレームのサンプリングポイント値の部分的分布図である。
【図６】ある実施形態による、第1のオーディオフレームと第2のオーディオフレームを重ねることによって取得されるサンプリングポイント値の部分的分布図である。
【図７Ａ】ある実施形態による、オーディオフレームをセグメント化し、オーディオフレームをスティッチングし、オーディオフレームを挿入するプロセスの概略図である。
【図７Ｂ】ある実施形態による、オーディオフレームをセグメント化し、オーディオフレームをスティッチングし、オーディオフレームを置き換えるプロセスの概略図である。
【図８】ある実施形態による、コピーを確保し、再生処理を実施するプロセスの概略図である。
【図９】ある実施形態による、フレームセグメント化位置を判断するステップの概略フローチャートである。
【図１０】ある実施形態による、第1のオーディオフレームの第1の近似曲線と第2のオーディオフレームの第2の近似曲線が同じ座標系にあることを示す概略図である。
【図１１】別の実施形態によるオーディオデータ処理方法の概略フローチャートである。
【図１２】ある実施形態による端末の構造ブロック図である。
【図１３】別の実施形態による端末の構造ブロック図である。
【図１４】ある実施形態による、図12または図13におけるフレームセグメント化位置判断モジュールの構造ブロック図である。
【発明を実施するための形態】
【００１４】
本出願の目的、技術的解決策、および利点をより明瞭に、より理解しやすくするために、以下ではさらに、添付の図面および実施形態を参照して本出願を詳しく説明する。本明細書に記載される具体的な実施形態は、本出願を説明するために使われるにすぎず、本出願を限定することは意図していないことを理解されたい。
【００１５】
図1に示すように、ある実施形態では、システムバスを使うことによって接続された、プロセッサ、不揮発性記憶媒体、内部メモリ、入力装置およびオーディオ出力インターフェースを含む、オーディオデータ処理方法を実装するための端末100が提供される。プロセッサは、算出すること、および端末100の働きを制御することが可能である。プロセッサは、オーディオデータ処理方法を実施するように構成される。不揮発性記憶媒体は、磁気記憶媒体、光学記憶媒体、またはフラッシュ記憶媒体のうちの少なくとも1つを含む。コンピュータ可読命令は、不揮発性記憶媒体に記憶される。コンピュータ可読命令は、プロセッサによって実行されると、プロセッサに、オーディオデータ処理方法を実施させる。入力装置は、物理的ボタン、トラックボール、タッチパッド、外部制御デバイスを接続するために使われる物理インターフェース、または表示画面と重なるタッチレイヤのうちの少なくとも1つを含む。外部制御デバイスは、たとえば、マウス、マルチメディアワイヤー制御型装置などであり得る。端末100は、デスクトップコンピュータ、可搬型ノートブックコンピュータ、モバイル電話、音楽プレーヤ、またはスマートウォッチなど、オーディオデータを処理することが可能な様々な電子デバイスを含む。
【００１６】
図2に示すように、ある実施形態では、オーディオデータ処理方法が提供される。本実施形態では、方法が図1の端末100に適用される例が、説明に使われる。方法は具体的には、以下のステップを含む。
【００１７】
ステップ202:オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得し、第1のオーディオフレームは、時間シーケンスにおいて第2のオーディオフレームに先行する。
【００１８】
具体的には、オーディオデータストリームは、時間シーケンスを有する一連のサンプリングポイント値を含む。サンプリングポイント値は、特定のオーディオサンプリングレートに従って元のアナログ音信号をサンプリングすることによって取得される。一連のサンプリングポイント値が音を記述し得る。オーディオサンプリングレートは、1秒間に収集されるサンプリングポイントの量を指し、単位はヘルツ(Hz)である。より高いオーディオサンプリングレートは、記述され得るより高い音響周波数を示す。
【００１９】
オーディオフレームは、時間シーケンスと特定の量とを有するサンプリングポイント値を含む。オーディオデータストリームのコーディングフォーマットに従って、コーディングフォーマットでのオーディオフレームがある場合、オーディオフレームは直接使われ得る。オーディオフレームはないが、時間シーケンスを有する一連のサンプリングポイント値がある場合、オーディオフレームは、あらかじめ設定されたフレーム長に従って、時間シーケンスを有する一連のサンプリングポイント値からセグメント化され得る。あらかじめ設定されたフレーム長は、1つのオーディオフレームに含まれるサンプリングポイント値のあらかじめ設定された量を指す。
【００２０】
オーディオデータストリームから取得された第1のオーディオフレームおよび第2のオーディオフレームは隣接し、第1のオーディオフレームが時間シーケンスにおいて第2のオーディオフレームに先行する。つまり、オーディオデータストリームに対して再生処理を実施するとき、第1のオーディオフレームは第2のオーディオフレームの前に再生される。第1のオーディオフレームおよび第2のオーディオフレームは、オーディオフレームがその間に挿入される必要がある2つの隣接するオーディオフレームである。
【００２１】
たとえば、図3Aを参照すると、オーディオデータストリームは、時間シーケンスに従ってランク付けされた第1のオーディオフレームA、第2のオーディオフレームB、...を含む。オーディオフレームが挿入される必要があるとき、オーディオフレームFが、第1のオーディオフレームAと第2のオーディオフレームBとの間に挿入される必要がある。図3Bを参照すると、オーディオフレームが消去される必要があるとき、第1のオーディオフレームAおよび第2のオーディオフレームBのうちの1つの、サンプリングポイント値が、1つのオーディオフレームGを確保するために消去される必要がある。
【００２２】
ステップ204:フレームセグメント化位置を判断し、第1のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値は距離近さ条件を満足する。
【００２３】
具体的には、フレームセグメント化位置は、第1のオーディオフレームおよび第2のオーディオフレームがセグメント化される位置であり、オーディオフレームに相対した位置である。距離が、2つのオーディオフレーム中の対応する位置にある2つのサンプリングポイント値の間の差の絶対値を指す。たとえば、第1のオーディオフレームAのサンプリングポイント値の、図4に示す部分的分布図、および第2のオーディオフレームBのサンプリングポイント値の、図5に示す部分的分布図を参照する。第1のオーディオフレームAの第1のサンプリングポイント値と第2のオーディオフレームBの第1のサンプリングポイント値との間の差の絶対値は、第1のオーディオフレームAの第1のサンプリングポイント値と第2のオーディオフレームBの第1のサンプリングポイント値との間の距離である。
【００２４】
距離近さ条件は、2つのサンプリングポイント値の間の距離が近いかどうかを判断するために使われる量子化条件である。ある実施形態では、距離近さ条件は、距離が0に等しいこと、または2つのサンプリングポイント値の間の距離が等しくないが近いことであってよい。たとえば、距離は閾以下である。閾は、あらかじめ設定されてよく、または第1のオーディオフレームおよび/もしくは第2のオーディオフレームのサンプリングポイント値のダイナミックに従って判断されてよい。たとえば、閾は、第1のオーディオフレームおよび/または第2のオーディオフレームのサンプリングポイント値の平均値を、あらかじめ設定された割合で乗算することによって取得され得る。
【００２５】
ある実施形態では、端末は、第1のオーディオフレームおよび第2のオーディオフレームからなる各サンプリングポイント値ペアの距離を算出して、最も小さい距離を有するサンプリングポイント値ペアを選択すればよい。フレームセグメント化位置は、最も小さい距離を有する、選択されたサンプリングポイント値ペアに対応する位置である。この場合、距離近さ条件は、第1のオーディオフレームおよび第2のオーディオフレーム中のフレームセグメント化位置に対応するサンプリングポイント値ペアの距離が最も小さいことである。本明細書におけるサンプリングポイント値ペアは、2つのオーディオフレーム中の同じ位置にある2つのサンプリングポイント値を指す。サンプリングポイント値の位置は、サンプリングポイント値が属するオーディオフレームに相対したサンプリングポイント値の位置である。
【００２６】
たとえば、サンプリングポイント値の、図6に示す部分的分布図は、図4と図5を重ねることによって得られ、そうすることによって、オーディオフレームAのサンプリングポイント値の部分的分布を、オーディオフレームBのサンプリングポイント値の部分的分布と比較するのに好都合である。フレームセグメント化位置がSであると仮定すると、オーディオフレームAのSにおけるサンプリングポイント値と、オーディオフレームBのSにおけるサンプリングポイント値との間の差の絶対値は、非常に近く、等しい場合さえもある。つまり、オーディオフレームA中のSにおけるサンプリングポイント値およびオーディオフレームB中のSにおけるサンプリングポイント値は、距離近さ条件を満足する。
【００２７】
ステップ206:第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成し、第1のオーディオフレームと第2のオーディオフレームとの間に第3のオーディオフレームを挿入するか、または第1のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成し、第1のオーディオフレームおよび第2のオーディオフレームを第4のオーディオフレームに置き換える。
【００２８】
具体的には、オーディオフレームが挿入される必要があるとき、第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値が取得され、第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値が取得される。取得されたサンプリングポイント値の量は、1つのオーディオフレームの長さに完全に等しい。第2のオーディオフレームのサンプリングポイント値と第1のオーディオフレームのサンプリングポイント値は順にスティッチングされて、第3のオーディオフレームを生成する。さらに、第2のオーディオフレームからのサンプリングポイント値は、第2のオーディオフレーム中のシーケンスに従ってランク付けされ、第1のオーディオフレームからのサンプリングポイント値は、第1のオーディオフレーム中のシーケンスに従ってランク付けされる。最終的に、生成された第3のオーディオフレームは、第1のオーディオフレームと第2のオーディオフレームとの間に挿入される。
【００２９】
たとえば、図7Aを参照すると、第1のオーディオフレームAは、フレームセグメント化位置Sで先行部分と後続部分にセグメント化され、第2のオーディオフレームBも、フレームセグメント化位置Sで先行部分と後続部分にセグメント化される。先行部分は、フレームセグメント化位置Sに先行するサンプリングポイント値を指す。対応して、後続部分は、フレームセグメント化位置Sに後続するサンプリングポイント値を指す。第2のオーディオフレームBの先行部分と第1のオーディオフレームAの後続部分はスティッチングされて、第3のオーディオフレームFが得られ、次いで、スティッチングによって得られた第3のオーディオフレームFは、第1のオーディオフレームAと第2のオーディオフレームBとの間に挿入され得る。
【００３０】
オーディオフレームが消去される必要があるとき、第1のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値が取得され、第2のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値が取得される。取得されたサンプリングポイント値の量は、1つのオーディオフレームの長さに完全に等しい。第1のオーディオフレームのサンプリングポイント値と第2のオーディオフレームのサンプリングポイント値は順にスティッチングされて、第4のオーディオフレームが得られる。さらに、第1のオーディオフレームからのサンプリングポイント値は、第1のオーディオフレーム中のシーケンスに従ってランク付けされ、第2のオーディオフレームからのサンプリングポイント値は、第2のオーディオフレーム中のシーケンスに従ってランク付けされる。最終的に、第1のオーディオフレームおよび第2のオーディオフレームは、生成された第4のオーディオフレームに置き換えられる。
【００３１】
たとえば、図7Bを参照すると、第1のオーディオフレームAは、フレームセグメント化位置Sで先行部分と後続部分にセグメント化され、第2のオーディオフレームBも、フレームセグメント化位置Sで先行部分と後続部分にセグメント化される。先行部分は、フレームセグメント化位置Sに先行するサンプリングポイント値を指す。対応して、後続部分は、フレームセグメント化位置Sに後続するサンプリングポイント値を指す。第1のオーディオフレームAの先行部分と第2のオーディオフレームBの後続部分はスティッチングされて、第4のオーディオフレームGが得られ、次いで、第1のオーディオフレームAおよび第2のオーディオフレームBは、スティッチングによって得られた第4のオーディオフレームGに置き換えられ得る。
【００３２】
上記のオーディオデータ処理方法において、オーディオフレームが挿入される必要があるとき、第2のオーディオフレーム中のフレームセグメント化位置に先行する部分と、第1のオーディオフレーム中のフレームセグメント化位置に後続する部分がスティッチングされて、第3のオーディオフレームが得られ、第3のオーディオフレームが、第1のオーディオフレームと第2のオーディオフレームとの間に挿入される。挿入の後、第3のオーディオフレームの先行部分は第2のオーディオフレームの先行部分になり、第3のオーディオフレームの後続部分は第1のオーディオフレームの後続部分になる。第1のオーディオフレームと第2のオーディオフレームはシームレスにスティッチングされるので、第3のオーディオフレームの先行部分と第1のオーディオフレームはシームレスにスティッチングされてよく、第3のオーディオフレームの後続部分と第2のオーディオフレームはシームレスにスティッチングされてよい。さらに、第3のオーディオフレームは、フレームセグメント化位置において距離近さ条件を満足するので、スティッチングされたエリアにおいて、過度に大きく、急激な変化は起こらない。このようにして、オーディオフレームが挿入されるときにオーディオフレームの間をスキップすることによって引き起こされる雑音は、実質的に克服される。
【００３３】
オーディオフレームが消去される必要があるとき、第1のオーディオフレーム中のフレームセグメント化位置に先行する部分と、第2のオーディオフレーム中のフレームセグメント化位置に後続する部分がスティッチングされて、第4のオーディオフレームが得られ、第1のオーディオフレームおよび第2のオーディオフレームは第4のオーディオフレームに置き換えられる。置換えの後、第4のオーディオフレームの先行部分は第1のオーディオフレームの先行部分になり、第4のオーディオフレームの後続部分は第2のオーディオフレームの後続部分になる。第1のオーディオフレームと先行オーディオフレームはシームレスにスティッチングされ、第2のオーディオフレームと後続オーディオフレームはシームレスにスティッチングされるので、置換えの後、第4のオーディオフレームと第1のオーディオフレームの先行部分はシームレスにスティッチングされてよく、第4のオーディオフレームと、第2のオーディオフレームの後続オーディオフレームはシームレスにスティッチングされてよい。さらに、第4のオーディオフレームは、フレームセグメント化位置において距離近さ条件を満足するので、スティッチングされたエリアにおいて、過度に大きく、急激な変化は起こらない。このようにして、オーディオフレームが挿入されるときにオーディオフレームの間をスキップすることによって引き起こされる雑音は、実質的に克服される。
【００３４】
ある実施形態では、オーディオデータ処理方法は、オーディオデータストリームに対してリアルタイムの再生処理を実施するとき、少なくとも1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを確保するステップをさらに含む。さらに、ステップ202は、オーディオフレームを挿入するための命令が検出されると、再生処理が実施されているサンプリングポイント値の前の、再生処理が実施されているサンプリングポイント値の確保されたコピーに従って、第1のオーディオフレームを取得すること、および再生処理が実施されているサンプリングポイント値に後続する、1つのオーディオフレームの長さをもつサンプリングポイント値に従って、第2のオーディオフレームを取得することを含む。
【００３５】
再生処理は、サンプリングポイント値に従って音信号が復元されることを指す。少なくとも1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを確保することは、少なくとも1つのオーディオフレームのコピーを確保することを指す。具体的には、図8を参照すると、端末がサンプリングポイント値A1に対して再生処理を実施するとき、端末は、サンプリングポイント値A1のコピーA1'を確保する。サンプリングポイント値A1の前に再生処理が実施されるサンプリングポイント値のコピーも確保される。確保されるコピーの全長は、少なくとも1つのオーディオフレームの長さである。
【００３６】
端末は、1つのオーディオフレームの長さの後のサンプリングポイント値B1に対して再生処理を実施しており、サンプリングポイント値B1のコピーB1'も確保される。この場合、確保されるコピーは、少なくともオーディオフレームAのコピーA'を含む。端末が、オーディオフレームを挿入するための命令を検出すると仮定すると、端末は、サンプリングポイント値A1から、再生処理が実施されるサンプリングポイント値B1までの、1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを第1のオーディオフレームAとして使い、1つのオーディオフレームの長さをもつとともにサンプリングポイント値B1に後続するオーディオフレームBを第2のオーディオフレームとして使う。
【００３７】
本実施形態では、オーディオデータストリームに対してリアルタイムの再生処理が実施されるときに少なくとも1つのオーディオフレームのコピーを確保することによって、端末は、オーディオフレームを挿入するための命令を検出すると、1つのオーディオフレームの時間長だけ待つことなく、命令に直ちに応答することができ、そうすることによって、オーディオフレームを挿入する効率を向上させる。
【００３８】
図9に示すように、ある実施形態では、ステップ204は具体的には、以下のステップを含む。
【００３９】
ステップ902:候補位置を取得し、第1のオーディオフレーム中の候補位置におけるサンプリングポイント値および第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値は距離近さ条件を満足する。
【００４０】
候補位置とは、フレームセグメント化位置として使うことができる、オーディオフレーム中の選択された位置である。具体的には、端末は、オーディオフレーム中のすべての位置を横断し、位置が横断される度に、第1のオーディオフレームおよび第2のオーディオフレーム中の対応する位置にあるサンプリングポイント値ペアが距離近さ条件を満足するかどうかを判断し得る。サンプリングポイント値ペアが距離近さ条件を満足する場合、横断された位置は候補位置セットに追加され、横断は継続される。サンプリングポイント値ペアが距離近さ条件を満足しない場合、横断は継続される。横断後に候補位置セットが依然として空である場合、あらかじめ設定された位置(オーディオフレーム中の中央位置など)または最も小さい距離をもつサンプリングポイント値ペアの位置が選択され、候補位置セットに追加されてよい。
【００４１】
距離近さ条件は、2つのサンプリングポイント値の間の距離が近いかどうかを判断するために使われる量子化条件である。ある実施形態では、距離近さ条件は、距離が0に等しいこと、または2つのサンプリングポイント値の間の距離が等しくないが近いことであってよい。たとえば、距離は閾以下である。閾は、あらかじめ設定されてよく、または第1のオーディオフレームおよび/もしくは第2のオーディオフレームのサンプリングポイント値のダイナミックに従って判断されてよい。
【００４２】
ある実施形態では、端末は、第1のオーディオフレームおよび第2のオーディオフレーム中の各サンプリングポイント値ペアの距離を算出し、距離を昇順にランク付けし得る。次いで、端末は、最上位にランク付けされている、あらかじめ設定された量の距離に対応する位置を候補位置セットに追加してよく、またはすべての算出された距離のあらかじめ設定された割合を占めるとともに最も小さい距離から始まって取得される距離に対応する位置を追加してよい。この場合、距離近さ条件は、第1のオーディオフレームおよび第2のオーディオフレーム中の候補位置に対応するサンプリングポイント値ペアの距離が、昇順にランク付けされているすべての算出された距離の前にランク付けされている、あらかじめ設定された量の距離であるか、または昇順にランク付けされたすべての算出された距離の前にランク付けされており、算出された距離のあらかじめ設定された割合を占める距離であることである。
【００４３】
ある実施形態では、距離近さ条件は、第1の差と第2の差の積が0以下であることである。第1の差は、第1のオーディオフレーム中の候補位置におけるサンプリングポイント値と第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値との間の差である。第2の差は、第1のオーディオフレーム中の候補位置に後続する位置におけるサンプリングポイント値と第2のオーディオフレーム中の対応する位置におけるサンプリングポイント値との間の差である。
【００４４】
具体的には、第1のオーディオフレームAが[a1,a2,...,am]であり、第2のオーディオフレームBが[b1,b2,...,bm]であると仮定すると、距離近さ条件は、以下の式(1)を使うことによって表すことができる。
(ai-bi)*(ai+1-bi+1)≦0, (i∈[1,m-1])  式(1)
上式で、iは、第1のオーディオフレームAおよび第2のオーディオフレームB中の候補位置を表し、サンプリングポイント値シーケンス番号と呼ばれてよく、mは、1つのオーディオフレームの長さであり、(ai-bi)は、第1のオーディオフレームA中の候補位置iにおけるサンプリングポイント値aiと、第2のオーディオフレームB中の対応する候補位置iにおけるサンプリングポイント値biとの間の差を表す第1の差であり、(ai+1-bi+1)は、第1のオーディオフレームA中の候補位置iに後続する位置i+1におけるサンプリングポイント値ai+1と、第2のオーディオフレームB中の対応する位置i+1におけるサンプリングポイント値bi+1との間の差を表す第2の差であり、式(1)は、第1の差(ai-bi)と第2の差(ai+1-bi+1)の積が0以下であることを表す。
【００４５】
式(1)において表される距離近さ条件は、第1のオーディオフレームのサンプリングポイント値によって構成される第1の近似曲線と、第2のオーディオフレームのサンプリングポイント値によって構成される第2の近似曲線の交差を見つけるために使われる。代替として、2つの曲線の交差は別のやり方で判断されてよい。交差がちょうど、サンプリングポイント値の位置である場合、その位置は候補位置セットに追加される。交差が、どのサンプリングポイント値の位置でもない場合、オーディオフレーム中のすべての位置の中で、交差に最も近い位置が、候補位置セットに追加されてよい。たとえば、図10では、交差Xが第1の近似曲線および第2の近似曲線によって形成され、それにより、交差Xに最も近い位置S1またはS2が、候補位置セットに追加され得る。2つの曲線の交差が判断される別のやり方がある。たとえば、2つの近似曲線の代数表現が、それぞれ最初に取得され、次いで、交差が、関数計算を用いて直接判断される。式(1)において表される距離近さ条件は、交差を判断するためにより効率的である。
【００４６】
ステップ904:あらかじめ設定された長さを有し、第1のオーディオフレームおよび第2のオーディオフレーム中の候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離の和を取得する。
【００４７】
あらかじめ設定された長さを有するとともに候補位置をカバーする離散位置範囲は候補位置を含み、離散位置セットは特定の量の離散位置を含み、つまり、離散位置セットは、あらかじめ設定された長さを有する。好ましくは、候補位置に先行し、後続する、特定の、および等しい量の離散位置が選択されて、候補位置とともに離散位置範囲を構成し得る。代替として、候補位置に先行し、後続する、異なる量の離散位置が選択されて、候補位置とともに離散位置範囲を構成し得る。離散位置セット中のすべての位置は好ましくは、シーケンス中で互いに隣接し得る。代替として、および明らかに、離散位置は、候補位置とともに離散位置範囲を構成するように、間隔を置いて選択されてよい。
【００４８】
具体的には、端末は、候補位置セットから候補位置を1つずつ選択し、あらかじめ設定された長さを有するとともに第1のオーディオフレームおよび第2のオーディオフレーム中の選択された候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離の和を取得することができる。
【００４９】
ある実施形態では、あらかじめ設定された長さを有するとともに第1のオーディオフレームおよび第2のオーディオフレーム中の候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離の和は、以下の式(2)を使うことによって取得され得る。
【００５０】
【数１】
2019508722.tif 000003
【００５１】
上式で、nは、候補位置からNを減算することによって取得され、Nは[1,(m-1)/2]から選択されてよく、好ましくは[2,(m-1)/100]から選択されてよく、5であるのが最良であり得る。候補位置はn+Nであり、離散位置範囲は、候補位置n+Nから左方向および右方向に選択されたN個の位置とともに候補位置n+Nによって構成される、2N+1の長さを有する離散位置範囲[n,...,n+N,...,2N+n]である。|aj-bj|は、第1のオーディオフレームAおよび第2のオーディオフレームB中の離散位置範囲内の各サンプリングポイント値ペア(aj,bj)の距離である。Rnは、第1のオーディオフレームAおよび第2のオーディオフレームB中の離散位置範囲内のすべてのサンプリングポイント値ペア(aj,bj)の距離の和である。
【００５２】
ステップ906:最も小さい距離和に対応する候補位置をフレームセグメント化位置として判断する。
【００５３】
具体的には、候補位置セットから最良候補位置をフレームセグメント化位置として選択するために、候補位置セット中のすべての候補位置の距離の和がそれぞれ最初に算出されてよく、次いで、最も小さい距離和に対応する候補位置が、フレームセグメント化位置として選択されてよい。これは、具体的には、以下の式(3)を使うことによって表すことができる。
T=Min(Rn)
上式で、Tは目標関数である。目標関数Tを最適化し、最も小さい距離和に対応する候補位置nを取得することによって、フレームセグメント化位置n+Nが取得される。判断されたフレームセグメント化位置も、第1の差と第2の差の積が0以下であるという距離近さ条件を満足する。第1の差は、第1のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値と、第2のオーディオフレーム中の対応するフレームセグメント化位置におけるサンプリングポイント値との間の差である。第2の差は、第1のオーディオフレーム中のフレームセグメント化位置に後続する位置におけるサンプリングポイント値と、第2のオーディオフレーム中の対応する位置におけるサンプリングポイント値との間の差である。
【００５４】
ステップ904〜ステップ906において、フレームセグメント化位置は、第1の近似曲線と第2の近似曲線の交差の最も近くに見つかった候補位置である。ステップ904は、対応する候補位置における第1のオーディオフレームと第2のオーディオフレームの局所相似度を取得する具体的なステップであり、ステップ906は、局所相似度に従ってフレームセグメント化位置を判断する具体的なステップである。候補位置における局所相似度は、候補位置に近い特定の範囲内で第1の近似曲線が第2の近似曲線に相似している度合を指す。式(2)を使うことによって算出された、より小さい局所相似度は、より高い相似度合を示す。第1の近似曲線が候補位置の近くで第2の近似曲線に相似している程、2つの曲線の傾きはより相似しており、第3のオーディオフレームがセグメント化およびスティッチング遷移によってより着実に取得され、そうすることによって雑音がより良好に抑止される。
【００５５】
局所相似度はさらに、相互相関関数を使うことによって相互相関性を算出することによって取得することができる。2つの関数f(t)およびg(t)があると仮定すると、相互相関関数は、R(u)=f(t)*g(-t)と定義され、異なる相対的位置における2つの関数の間の一致度合を反映する。相互相関関数はさらに、2つの信号の間の相似度を表すことができる。いくつかのポイントにおける相互相関性を算出するためのこのソリューションに適用されると、2つの独立した同方向性サンプリングポイント値は、比較的強い相互相関を有する場合があり、このことは、2つの曲線の間のより強い相似度を示す。ただし、判断された位置は最良フレームセグメント化位置ではない。相互相関関数を使うことによって相互相関性を算出することの欠点は、式(2)を使うことによって取得される局所相似度によって克服される。すべての位置におけるサンプリングポイント値は、式(2)を使うことによって相互相関性を算出する際に、比較的同じ役割を果たす。さらに、差の絶対値を、ある位置におけるサンプリングポイント値がもたらす援助を測定する機能値として使うことによって、交差に先行する傾きと後続する傾きとの間の差をうまく記述することができ、最も適切な候補位置をフレームセグメント化位置として見つけることができる。
【００５６】
ある実施形態では、オーディオデータ処理方法は、音効果がオンにされたとき、互いに隣接するとともに、指定されたチャネルのオーディオデータストリームから取得された第1のオーディオフレームおよび第2のオーディオフレームについて、第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得するステップと、サンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成するステップと、第1のオーディオフレームと第2のオーディオフレームとの間に第3のオーディオフレームを挿入するステップと、挿入された第3のオーディオフレームに対してフェードイン処理を実施するステップであって、そうすることによって、挿入された第3のオーディオフレームは、時間シーケンスに従って、音効果なし状態から無損傷音効果状態に漸進的に遷移する、ステップとをさらに含む。
【００５７】
具体的には、ステップ202、ステップ204およびステップ206の前半、つまり、オーディオフレームを挿入することは、指定されたチャネルのオーディオデータストリームに対して実施される。音効果をオンにするための命令は、オーディオフレームを挿入するための命令である。オンにされた音効果は、チャネル非同期に基づく音効果である。指定されたチャネルに1つのオーディオフレームを挿入することによって、指定されたチャネルのオーディオデータストリームは、残りのチャネルよりも1つのオーディオフレーム分遅くなり、それにより、ある音は、別の音よりも1つのオーディオフレームの時間長だけ遅く人の耳に届き、それによりサラウンドを生成する。
【００５８】
音効果なし状態は、音効果がオンにされる前の状態であり、無損傷音効果状態は、音効果がオンにされた後の状態である。第3のオーディオフレームに対してフェードイン処理を実施することによって、挿入された第3のオーディオフレームは、第3のオーディオフレーム中のサンプリングポイント値の時間シーケンスに従って、音効果なし状態から無損傷音効果状態に漸進的に遷移し、そうすることによって、音効果の緩やかな遷移を達成する。たとえば、無損傷音効果状態でのボリュームが5倍に増大される必要がある場合、ボリュームの倍数は、ボリュームが5倍に増大されるまで漸進的に増大されてよく、そうすることによって、第3のオーディオフレームは、無損傷音効果状態において第2のオーディオフレームとシームレスにスティッチングされ得る。漸進的遷移は、線形遷移または曲線遷移であってよい。
【００５９】
本実施形態では、音効果がオフにされると、ステップ202、ステップ204およびステップ206の後半、つまり、オーディオフレームを置き換えることが、指定されたチャネルのオーディオデータストリームに対して実施されてよく、フェードアウト処理が、取得された第4のオーディオフレームに対して実施されてよく、そうすることによって、取得された第4のオーディオフレームは、時間シーケンスに従って、無損傷音効果状態から音効果なし状態に漸進的に遷移する。フェードアウト処理はフェードイン処理の逆であり、音効果の影響を漸進的に取り除く処理プロセスである。
【００６０】
本実施形態では、1つのオーディオフレームを消去するために、指定されたチャネルの2つのオーディオフレームが1つのオーディオフレームに置き換えられ、そうすることによって、指定されたチャネルは、別のチャネルと同期するように復元される。チャネル非同期に基づく音効果は素早くオン/オフにすることができ、そうすることによって、音効果切替えが向上する。
【００６１】
ある実施形態では、音効果がオンにされたとき、互いに隣接するとともに、指定されたチャネルのオーディオデータストリームから取得された第1のオーディオフレームおよび第2のオーディオフレームについて、第1のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得するステップ、サンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成し、第1のオーディオフレームおよび第2のオーディオフレームを第4のオーディオフレームに置き換えるステップ、ならびに取得された第4のオーディオフレームに対してフェードイン処理を実施するステップであって、そうすることによって、取得された第4のオーディオフレームが時間シーケンスに従って、音効果なし状態から無損傷音効果状態に漸進的に遷移する、ステップが実施され得る。
【００６２】
本実施形態では、音効果がオフにされると、ステップ202、ステップ204およびステップ206の前半、すなわち、第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成すること、第1のオーディオフレームと第2のオーディオフレームとの間に第3のオーディオフレームを挿入すること、ならびに挿入された第3のオーディオフレームに対してフェードアウト処理を実施することであって、そうすることによって、挿入された第3のオーディオフレームは、時間シーケンスに従って、無損傷音効果状態から音効果なし状態に漸進的に遷移する、実施することが、指定されたチャネルに対して実施され得る。本実施形態によると、チャネル非同期に基づく音効果は素早くオン/オフにすることもでき、そうすることによって、音効果切替えが向上する。
【００６３】
図11に示すように、ある実施形態では、以下のステップを含むオーディオデータ処理方法が提供される。
【００６４】
ステップ1102:音効果がオンにされたとき、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを、指定されたチャネルのオーディオデータストリームから取得し、第1のオーディオフレームは、時間シーケンスにおいて第2のオーディオフレームに先行する。
【００６５】
ステップ1104:第1の候補位置を取得し、第1のオーディオフレーム中の第1の候補位置におけるサンプリングポイント値および第2のオーディオフレーム中の対応する第1の候補位置におけるサンプリングポイント値は距離近さ条件を満足する。距離近さ条件は、第1の差と第2の差の積が0以下であることであり得る。第1の差は、第1のオーディオフレーム中の候補位置におけるサンプリングポイント値と第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値との間の差である。第2の差は、第1のオーディオフレーム中の候補位置に後続する位置におけるサンプリングポイント値と第2のオーディオフレーム中の対応する位置におけるサンプリングポイント値との間の差である。
【００６６】
ステップ1106:あらかじめ設定された長さを有し、第1のオーディオフレームおよび第2のオーディオフレーム中の第1の候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離の和を取得する。
【００６７】
ステップ1108:最も小さい距離和に対応する第1の候補位置を第1のフレームセグメント化位置として判断する。
【００６８】
ステップ1110:第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成する。
【００６９】
ステップ1112:第3のオーディオフレームを第1のオーディオフレームと第2のオーディオフレームとの間に挿入する。
【００７０】
ステップ1114:挿入された第3のオーディオフレームに対してフェードイン処理を実施し、そうすることによって、挿入された第3のオーディオフレームは、時間シーケンスに従って、音効果なし状態から無損傷音効果状態に漸進的に遷移する。
【００７１】
ステップ1116:音効果がオフにされたとき、互いに隣接する第5のオーディオフレームおよび第6のオーディオフレームを、指定されたチャネルのオーディオデータストリームから取得し、第5のオーディオフレームは、時間シーケンスにおいて第6のオーディオフレームに先行する。第5のオーディオフレームは、第4のオーディオフレームを生成するための、図2に示す実施形態におけるステップ206における第1のオーディオフレームと等価であり、第6のオーディオフレームは、第4のオーディオフレームを生成するための、図2に示す実施形態におけるステップ206における第2のオーディオフレームと等価である。
【００７２】
ステップ1118:第2の候補位置を取得し、第5のオーディオフレーム中の第2の候補位置におけるサンプリングポイント値および第6のオーディオフレーム中の対応する第2の候補位置におけるサンプリングポイント値は距離近さ条件を満足する。距離近さ条件は、第1の差と第2の差の積が0以下であることであり得る。第1の差は、第5のオーディオフレーム中の候補位置におけるサンプリングポイント値と、第6のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値との間の差である。第2の差は、第5のオーディオフレーム中の候補位置に後続する位置におけるサンプリングポイント値と第6のオーディオフレーム中の対応する位置におけるサンプリングポイント値との間の差である。
【００７３】
ステップ1120:あらかじめ設定された長さを有し、第5のオーディオフレームおよび第6のオーディオフレーム中の第2の候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離の和を取得する。
【００７４】
ステップ1122:最も小さい距離和に対応する第2の候補位置を第2のフレームセグメント化位置として判断する。
【００７５】
ステップ1124:第5のオーディオフレーム中の第2のフレームセグメント化位置に先行するサンプリングポイント値および第6のオーディオフレーム中の第2のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成する。
【００７６】
ステップ1126:第5のオーディオフレームおよび第6のオーディオフレームを第4のオーディオフレームに置き換える。
【００７７】
ステップ1128:取得された第4のオーディオフレームに対してフェードアウト処理を実施し、そうすることによって、取得された第4のオーディオフレームは、時間シーケンスに従って、無損傷音効果状態から音効果なし状態に漸進的に遷移する。
【００７８】
上記のオーディオデータ処理方法において、オーディオフレームが挿入される必要があるとき、第2のオーディオフレーム中のフレームセグメント化位置に先行する部分と、第1のオーディオフレーム中のフレームセグメント化位置に後続する部分がスティッチングされて、第3のオーディオフレームが得られ、第3のオーディオフレームが、第1のオーディオフレームと第2のオーディオフレームとの間に挿入される。挿入の後、第3のオーディオフレームの先行部分は第2のオーディオフレームの先行部分になり、第3のオーディオフレームの後続部分は第1のオーディオフレームの後続部分になる。第1のオーディオフレームと第2のオーディオフレームはシームレスにスティッチングされるので、第3のオーディオフレームの先行部分と第1のオーディオフレームはシームレスにスティッチングされてよく、第3のオーディオフレームの後続部分と第2のオーディオフレームはシームレスにスティッチングされてよい。さらに、第3のオーディオフレームは、フレームセグメント化位置において距離近さ条件を満足するので、スティッチングされたエリアにおいて、過度に大きく、急激な変化は起こらない。このようにして、オーディオフレームが挿入されるときにオーディオフレームの間をスキップすることによって引き起こされる雑音は、実質的に克服される。
【００７９】
オーディオフレームが消去される必要があるとき、第1のオーディオフレーム中のフレームセグメント化位置に先行する部分と、第2のオーディオフレーム中のフレームセグメント化位置に後続する部分がスティッチングされて、第4のオーディオフレームが得られ、第1のオーディオフレームおよび第2のオーディオフレームは第4のオーディオフレームに置き換えられる。置換えの後、第4のオーディオフレームの先行部分は第1のオーディオフレームの先行部分になり、第4のオーディオフレームの後続部分は第2のオーディオフレームの後続部分になる。第1のオーディオフレームと先行オーディオフレームはシームレスにスティッチングされ、第2のオーディオフレームと後続オーディオフレームはシームレスにスティッチングされるので、第4のオーディオフレームと第1のオーディオフレームの先行部分はシームレスにスティッチングされてよく、第4のオーディオフレームと、第2のオーディオフレームの後続オーディオフレームは、置換えの後でシームレスにスティッチングされてよい。さらに、第4のオーディオフレームは、フレームセグメント化位置において距離近さ条件を満足するので、スティッチングされたエリアにおいて、過度に大きく、急激な変化は起こらない。このようにして、オーディオフレームが挿入されるときにオーディオフレームの間をスキップすることによって引き起こされる雑音は、実質的に克服される。
【００８０】
本出願は、端末をさらに提供する。端末の内部構造は、図1に示す構造に対応し得る。以下のモジュールのうちの一部または全部は、ソフトウェア、ハードウェアまたはそれらの組合せによって実装され得る。図12に示すように、ある実施形態では、端末1200は、オーディオフレーム取得モジュール1201およびフレームセグメント化位置判断モジュール1202を含み、オーディオフレーム挿入モジュール1203またはオーディオフレーム置換えモジュール1204のうちの少なくとも1つをさらに含む。
【００８１】
オーディオフレーム取得モジュール1201は、オーディオデータストリームから、互いに隣接する第1のオーディオフレームおよび第2のオーディオフレームを取得するように構成され、第1のオーディオフレームは、時間シーケンスにおいて第2のオーディオフレームに先行する。
【００８２】
具体的には、オーディオデータストリームは、時間シーケンスを有する一連のサンプリングポイント値を含む。サンプリングポイント値は、特定のオーディオサンプリングレートに従って元のアナログ音信号をサンプリングすることによって取得される。一連のサンプリングポイント値が音を記述し得る。オーディオサンプリングレートは、1秒間に収集されるサンプリングポイントの量を指し、単位はヘルツである。より高いオーディオサンプリングレートは、記述され得るより高い音響周波数を示す。
【００８３】
オーディオフレームは、時間シーケンスと特定の量とを有するサンプリングポイント値を含む。オーディオデータストリームのコーディングフォーマットに従って、コーディングフォーマットでのオーディオフレームがある場合、オーディオフレームは直接使われ得る。オーディオフレームはないが、時間シーケンスを有する一連のサンプリングポイント値がある場合、オーディオフレームは、あらかじめ設定されたフレーム長に従って、時間シーケンスを有する一連のサンプリングポイント値からセグメント化され得る。あらかじめ設定されたフレーム長は、1つのオーディオフレームに含まれるサンプリングポイント値のあらかじめ設定された量を指す。
【００８４】
オーディオフレーム取得モジュール1201によってオーディオデータストリームから取得された第1のオーディオフレームおよび第2のオーディオフレームは隣接し、第1のオーディオフレームは時間シーケンスにおいて第2のオーディオフレームに先行する。つまり、オーディオデータストリームに対して再生処理を実施するとき、第1のオーディオフレームは第2のオーディオフレームの前に再生される。第1のオーディオフレームおよび第2のオーディオフレームは、オーディオフレームがその間に挿入される必要がある2つの隣接するオーディオフレームである。
【００８５】
フレームセグメント化位置判断モジュール1202は、フレームセグメント化位置を判断するように構成され、第1のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値は距離近さ条件を満足する。
【００８６】
具体的には、フレームセグメント化位置は、第1のオーディオフレームおよび第2のオーディオフレームがセグメント化される位置であり、オーディオフレームに相対した位置である。距離が、2つのオーディオフレーム中の対応する位置にある2つのサンプリングポイント値の間の差の絶対値を指す。たとえば、第1のオーディオフレームAのサンプリングポイント値の、図4に示す部分的分布図、および第2のオーディオフレームBのサンプリングポイント値の、図5に示す部分的分布図を参照する。第1のオーディオフレームAの第1のサンプリングポイント値と第2のオーディオフレームBの第1のサンプリングポイント値との間の差の絶対値は、第1のオーディオフレームAの第1のサンプリングポイント値と第2のオーディオフレームBの第1のサンプリングポイント値との間の距離である。
【００８７】
距離近さ条件は、2つのサンプリングポイント値の間の距離が近いかどうかを判断するために使われる量子化条件である。ある実施形態では、距離近さ条件は、距離が0に等しいこと、または2つのサンプリングポイント値の間の距離が等しくないが近いことであってよい。たとえば、距離は閾以下である。閾は、あらかじめ設定されてよく、または第1のオーディオフレームおよび/もしくは第2のオーディオフレームのサンプリングポイント値のダイナミックに従って判断されてよい。たとえば、閾は、第1のオーディオフレームおよび/または第2のオーディオフレームのサンプリングポイント値の平均値を、あらかじめ設定された割合で乗算することによって取得され得る。
【００８８】
ある実施形態では、フレームセグメント化位置判断モジュール1202は、第1のオーディオフレームおよび第2のオーディオフレームからなる各サンプリングポイント値ペアの距離を算出して、最も小さい距離を有するサンプリングポイント値ペアを選択することができる。フレームセグメント化位置は、最も小さい距離を有する、選択されたサンプリングポイント値ペアに対応する位置である。この場合、距離近さ条件は、第1のオーディオフレームおよび第2のオーディオフレーム中のフレームセグメント化位置に対応するサンプリングポイント値ペアの距離が最も小さいことである。本明細書におけるサンプリングポイント値ペアは、2つのオーディオフレーム中の同じ位置にある2つのサンプリングポイント値を指す。サンプリングポイント値の位置は、サンプリングポイント値が属するオーディオフレームに相対したサンプリングポイント値の位置である。
【００８９】
オーディオフレーム挿入モジュール1203は、第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成し、第1のオーディオフレームと第2のオーディオフレームとの間に第3のオーディオフレームを挿入するように構成される。
【００９０】
具体的には、オーディオフレームが挿入される必要があるとき、オーディオフレーム挿入モジュール1203は、第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値を取得し、第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得する。取得されたサンプリングポイント値の量は、1つのオーディオフレームの長さに完全に等しい。第2のオーディオフレームのサンプリングポイント値と第1のオーディオフレームのサンプリングポイント値は順にスティッチングされて、第3のオーディオフレームを生成する。さらに、第2のオーディオフレームからのサンプリングポイント値は、第2のオーディオフレーム中のシーケンスに従ってランク付けされ、第1のオーディオフレームからのサンプリングポイント値は、第1のオーディオフレーム中のシーケンスに従ってランク付けされる。最終的に、生成された第3のオーディオフレームは、第1のオーディオフレームと第2のオーディオフレームとの間に挿入される。
【００９１】
オーディオフレーム置換えモジュール1204は、第1のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成し、第1のオーディオフレームおよび第2のオーディオフレームを第4のオーディオフレームに置き換えるように構成される。
【００９２】
オーディオフレームが消去される必要があるとき、オーディオフレーム置換えモジュール1204は、第1のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値を取得し、第2のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得する。取得されたサンプリングポイント値の量は、1つのオーディオフレームの長さに完全に等しい。第1のオーディオフレームのサンプリングポイント値と第2のオーディオフレームのサンプリングポイント値は順にスティッチングされて、第4のオーディオフレームが得られる。さらに、第1のオーディオフレームからのサンプリングポイント値は、第1のオーディオフレーム中のシーケンスに従ってランク付けされ、第2のオーディオフレームからのサンプリングポイント値は、第2のオーディオフレーム中のシーケンスに従ってランク付けされる。最終的に、第1のオーディオフレームおよび第2のオーディオフレームは、生成された第4のオーディオフレームに置き換えられる。
【００９３】
端末1200の場合、オーディオフレームが挿入される必要があるとき、第2のオーディオフレーム中のフレームセグメント化位置に先行する部分と、第1のオーディオフレーム中のフレームセグメント化位置に後続する部分がスティッチングされて、第3のオーディオフレームが得られ、第3のオーディオフレームが、第1のオーディオフレームと第2のオーディオフレームとの間に挿入される。挿入の後、第3のオーディオフレームの先行部分は第2のオーディオフレームの先行部分になり、第3のオーディオフレームの後続部分は第1のオーディオフレームの後続部分になる。第1のオーディオフレームと第2のオーディオフレームはシームレスにスティッチングされるので、第3のオーディオフレームの先行部分と第1のオーディオフレームはシームレスにスティッチングされてよく、第3のオーディオフレームの後続部分と第2のオーディオフレームはシームレスにスティッチングされてよい。さらに、第3のオーディオフレームは、フレームセグメント化位置において距離近さ条件を満足するので、スティッチングされたエリアにおいて、過度に大きく、急激な変化は起こらない。このようにして、オーディオフレームが挿入されるときにオーディオフレームの間をスキップすることによって引き起こされる雑音は、実質的に克服される。
【００９４】
オーディオフレームが消去される必要があるとき、第1のオーディオフレーム中のフレームセグメント化位置に先行する部分と、第2のオーディオフレーム中のフレームセグメント化位置に後続する部分がスティッチングされて、第4のオーディオフレームが得られ、第1のオーディオフレームおよび第2のオーディオフレームは第4のオーディオフレームに置き換えられる。置換えの後、第4のオーディオフレームの先行部分は第1のオーディオフレームの先行部分になり、第4のオーディオフレームの後続部分は第2のオーディオフレームの後続部分になる。第1のオーディオフレームと先行オーディオフレームはシームレスにスティッチングされ、第2のオーディオフレームと後続オーディオフレームはシームレスにスティッチングされるので、第4のオーディオフレームと第1のオーディオフレームの先行部分はシームレスにスティッチングされてよく、第4のオーディオフレームと、第2のオーディオフレームの後続オーディオフレームは、置換えの後でシームレスにスティッチングされてよい。さらに、第4のオーディオフレームは、フレームセグメント化位置において距離近さ条件を満足するので、スティッチングされたエリアにおいて、過度に大きく、急激な変化は起こらない。このようにして、オーディオフレームが挿入されるときにオーディオフレームの間をスキップすることによって引き起こされる雑音は、実質的に克服される。
【００９５】
図13に示すように、ある実施形態では、端末1200は、リアルタイムの再生処理がオーディオデータストリームに対して実施されるとき、少なくとも1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを確保するように構成されたコピー確保モジュール1205をさらに含む。
【００９６】
オーディオフレーム取得モジュール1201は、オーディオフレームを挿入するための命令が検出されると、再生処理が実施されているサンプリングポイント値の前の、再生処理が実施されるサンプリングポイント値の確保されたコピーに従って、第1のオーディオフレームを取得し、再生処理が実施されているサンプリングポイント値に後続する、1つのオーディオフレームの長さをもつサンプリングポイント値に従って、第2のオーディオフレームを取得するようにさらに構成される。
【００９７】
再生処理は、サンプリングポイント値に従って音信号が復元されることを指す。少なくとも1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを確保することは、少なくとも1つのオーディオフレームのコピーを確保することを指す。具体的には、図8を参照すると、サンプリングポイント値A1に対して再生処理が実施されるとき、コピー確保モジュール1205は、サンプリングポイント値A1のコピーA1'を確保する。サンプリングポイント値A1の前に再生処理が実施されるサンプリングポイント値のコピーも確保される。確保されるコピーの全長は、少なくとも1つのオーディオフレームの長さである。
【００９８】
1つのオーディオフレームの長さの後のサンプリングポイント値B1に対して再生処理が実施されており、コピー確保モジュール1205は、サンプリングポイント値B1のコピーB1'をさらに確保する。この場合、確保されるコピーは、少なくともオーディオフレームAのコピーA'を含む。オーディオフレーム取得モジュール1201が、オーディオフレームを挿入するための命令を検出すると仮定すると、オーディオフレーム取得モジュール1201は、サンプリングポイント値A1から、再生処理が実施されるサンプリングポイント値B1までの、1つのオーディオフレームの長さをもつサンプリングポイント値のコピーを第1のオーディオフレームAとして使い、1つのオーディオフレームの長さをもつとともにサンプリングポイント値B1に後続するオーディオフレームBを第2のオーディオフレームとして使う。
【００９９】
本実施形態では、オーディオデータストリームに対してリアルタイムの再生処理が実施されるときに少なくとも1つのオーディオフレームのコピーを確保することによって、端末は、オーディオフレームを挿入するための命令を検出すると、1つのオーディオフレームの時間長だけ待つことなく、命令に直ちに応答することができ、そうすることによって、オーディオフレームを挿入する効率を向上させる。
【０１００】
図14に示すように、ある実施形態では、フレームセグメント化位置判断モジュール1202は、候補位置取得モジュール1202a、相似度測定モジュール1202b、および判断モジュール1202cを含む。
【０１０１】
候補位置取得モジュール1202aは、候補位置を取得するように構成され、第1のオーディオフレーム中の候補位置におけるサンプリングポイント値および第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値は距離近さ条件を満足する。相似度測定モジュール1202bは、対応する候補位置における第1のオーディオフレームおよび第2のオーディオフレームの局所相似度を取得するように構成される。判断モジュール1202cは、局所相似度に従ってフレームセグメント化位置を判断するように構成される。
【０１０２】
候補位置取得モジュール1202aは、候補位置を取得するように構成され、第1のオーディオフレーム中の候補位置におけるサンプリングポイント値および第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値は距離近さ条件を満足する。
【０１０３】
候補位置とは、フレームセグメント化位置として使うことができる、オーディオフレーム中の選択された位置であり、複数の候補位置が離散している。各サンプリングポイント値は、離散位置に対応する。具体的には、候補位置取得モジュール1202aは、オーディオフレーム中のすべての位置を横断し、位置が横断される度に、第1のオーディオフレームおよび第2のオーディオフレーム中の対応する位置にあるサンプリングポイント値ペアが距離近さ条件を満足するかどうかを判断し得る。サンプリングポイント値ペアが距離近さ条件を満足する場合、候補位置取得モジュール1202aは、横断される位置を候補位置セットに追加し、横断は継続される。サンプリングポイント値ペアが距離近さ条件を満足しない場合、横断は継続される。横断後に候補位置セットが依然として空である場合、候補位置取得モジュール1202aは、あらかじめ設定された位置(オーディオフレーム中の中央位置など)または最も小さい距離をもつサンプリングポイント値ペアの位置を選択し、候補位置セットに追加してよい。
【０１０４】
距離近さ条件は、2つのサンプリングポイント値の間の距離が近いかどうかを判断するために使われる量子化条件である。ある実施形態では、距離近さ条件は、距離が0に等しいこと、または2つのサンプリングポイント値の間の距離が等しくないが近いことであってよい。たとえば、距離は閾以下である。閾は、あらかじめ設定されてよく、または第1のオーディオフレームおよび/もしくは第2のオーディオフレームのサンプリングポイント値のダイナミックに従って判断されてよい。
【０１０５】
ある実施形態では、候補位置取得モジュール1202aは、第1のオーディオフレームおよび第2のオーディオフレーム中の各サンプリングポイント値ペアの距離を算出し、距離を昇順でランク付けし得る。次いで、端末1200は、最上位にランク付けされている、あらかじめ設定された距離量に対応する位置を候補位置セットに追加してよい。この場合、距離近さ条件は、第1のオーディオフレームおよび第2のオーディオフレーム中の候補位置に対応するサンプリングポイント値ペアの距離が、昇順でランク付けされているすべての算出された距離の前にランク付けされているあらかじめ設定された距離量であることである。代替として、候補位置取得モジュール1202aは、すべての算出された距離のうちのあらかじめ設定された割合を占める距離であって、最も小さい距離から始まって取得される距離に対応する位置を追加してよい。この場合、距離近さ条件は、第1のオーディオフレームおよび第2のオーディオフレーム中の候補位置に対応するサンプリングポイント値ペアの距離が、昇順でランク付けされたすべての算出された距離の前にランク付けされている距離であって、算出された距離のあらかじめ設定された割合を占める距離であることである。
【０１０６】
ある実施形態では、距離近さ条件は、第1の差と第2の差の積が0以下であることである。第1の差は、第1のオーディオフレーム中の候補位置におけるサンプリングポイント値と第2のオーディオフレーム中の対応する候補位置におけるサンプリングポイント値との間の差である。第2の差は、第1のオーディオフレーム中の候補位置に後続する位置におけるサンプリングポイント値と第2のオーディオフレーム中の対応する位置におけるサンプリングポイント値との間の差である。
【０１０７】
具体的には、第1のオーディオフレームAが[a1,a2,...,am]であり、第2のオーディオフレームBが[b1,b2,...,bm]であると仮定すると、距離近さ条件は、以下の式(1)を使うことによって表すことができる。
(ai-bi)*(ai+1-bi+1)≦0, (i∈[1,m-1])  式(1)
上式で、iは、第1のオーディオフレームAおよび第2のオーディオフレームB中の候補位置を表し、サンプリングポイント値シーケンス番号と呼ばれてよく、mは、1つのオーディオフレームの長さであり、(ai-bi)は、第1のオーディオフレームA中の候補位置iにおけるサンプリングポイント値aiと、第2のオーディオフレームB中の対応する候補位置iにおけるサンプリングポイント値biとの間の差を表す第1の差であり、(ai+1-bi+1)は、第1のオーディオフレームA中の候補位置iに後続する位置i+1におけるサンプリングポイント値ai+1と、第2のオーディオフレームB中の対応する位置i+1におけるサンプリングポイント値bi+1との間の差を表す第2の差であり、式(1)は、第1の差(ai-bi)と第2の差(ai+1-bi+1)の積が0以下であることを表す。
【０１０８】
式(1)において表される距離近さ条件は、第1のオーディオフレームのサンプリングポイント値によって構成される第1の近似曲線と、第2のオーディオフレームのサンプリングポイント値によって構成される第2の近似曲線の交差を見つけるために使われる。代替として、2つの曲線の交差は別のやり方で判断されてよい。交差がちょうど、サンプリングポイント値の位置である場合、その位置は候補位置セットに追加される。交差が、どのサンプリングポイント値の位置でもない場合、オーディオフレーム中のすべての位置の中で、交差に最も近い位置が、候補位置セットに追加されてよい。たとえば、図10では、交差Xが第1の近似曲線および第2の近似曲線によって形成され、それにより、交差Xに最も近い位置S1またはS2が、候補位置セットに追加され得る。2つの曲線の交差が判断される別のやり方がある。たとえば、2つの近似曲線の代数表現が、それぞれ最初に取得され、次いで、交差が、関数計算を用いて直接判断される。式(1)において表される距離近さ条件は、交差を判断するためにより効率的である。
【０１０９】
相似度測定モジュール1202bは、あらかじめ設定された長さを有し、第1のオーディオフレームおよび第2のオーディオフレーム中の候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離の和を取得するようにさらに構成される。
【０１１０】
あらかじめ設定された長さを有するとともに候補位置をカバーする離散位置範囲は候補位置を含み、離散位置セットは特定の量の離散位置を含み、つまり、離散位置セットは、あらかじめ設定された長さを有する。具体的には、相似度測定モジュール1202bは、候補位置セットから候補位置を1つずつ選択し、あらかじめ設定された長さを有するとともに第1のオーディオフレームおよび第2のオーディオフレーム中の選択された候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離の和を取得することができる。
【０１１１】
ある実施形態では、相似度測定モジュール1202bは、あらかじめ設定された長さを有するとともに第1のオーディオフレームおよび第2のオーディオフレーム中の候補位置をカバーする離散位置範囲内のすべてのサンプリングポイント値ペアの距離の和を、以下の式(2)を使うことによって取得することができる。
【０１１２】
【数２】
2019508722.tif 000004
【０１１３】
上式で、nは、候補位置からNを減算することによって取得され、Nは[1,(m-1)/2]から選択されてよく、好ましくは[2,(m-1)/100]から選択されてよく、5であるのが最良であり得る。候補位置はn+Nであり、離散位置範囲は、候補位置n+Nから左方向および右方向に選択されたN個の位置とともに候補位置n+Nによって構成される、2N+1の長さを有する離散位置範囲[n,...,n+N,...,2N+n]である。|aj-bj|は、第1のオーディオフレームAおよび第2のオーディオフレームB中の離散位置範囲内の各サンプリングポイント値ペア(aj,bj)の距離である。Rnは、第1のオーディオフレームAおよび第2のオーディオフレームB中の離散位置範囲内のすべてのサンプリングポイント値ペア(aj,bj)の距離の和である。
【０１１４】
判断モジュール1202cは、最も小さい距離和に対応する候補位置をフレームセグメント化位置として判断するように構成される。
【０１１５】
相似度測定モジュール1202bは、対応する候補位置における第1のオーディオフレームおよび第2のオーディオフレームの局所相似度を取得するように構成され、判断モジュール1202cは、局所相似度に従ってフレームセグメント化位置を判断するように構成される。
【０１１６】
具体的には、候補位置セットから最良候補位置をフレームセグメント化位置として選択するために、候補位置セット中のすべての候補位置の距離の和がそれぞれ最初に算出されてよく、次いで、最も小さい距離和に対応する候補位置が、フレームセグメント化位置として選択されてよい。これは、具体的には、以下の式(3)を使うことによって表すことができる。
T=Min(Rn)
上式で、Tは目標関数である。目標関数Tを最適化し、最も小さい距離和に対応する候補位置nを取得することによって、フレームセグメント化位置n+Nが取得される。判断されたフレームセグメント化位置も、第1の差と第2の差の積が0以下であるという距離近さ条件を満足する。第1の差は、第1のオーディオフレーム中のフレームセグメント化位置におけるサンプリングポイント値と、第2のオーディオフレーム中の対応するフレームセグメント化位置におけるサンプリングポイント値との間の差である。第2の差は、第1のオーディオフレーム中のフレームセグメント化位置に後続する位置におけるサンプリングポイント値と、第2のオーディオフレーム中の対応する位置におけるサンプリングポイント値との間の差である。
【０１１７】
本実施形態では、フレームセグメント化位置は、第1の近似曲線と第2の近似曲線の交差の最も近くに見つかった候補位置である。候補位置における局所相似度は、候補位置に近い特定の範囲内で第1の近似曲線が第2の近似曲線に相似している度合を指す。式(2)を使うことによって算出された、より小さい局所相似度は、より高い相似度合を示す。第1の近似曲線が候補位置の近くで第2の近似曲線に相似している程、2つの曲線の傾きはより相似しており、第3のオーディオフレームがセグメント化およびスティッチング遷移によってより着実に取得され、そうすることによって雑音がより良好に抑止される。
【０１１８】
局所相似度はさらに、相互相関関数を使うことによって相互相関性を算出することによって取得することができる。相互相関関数はさらに、2つの信号の間の相似度を表すことができる。いくつかのポイントにおける相互相関性を算出するためのこのソリューションに適用されると、2つの独立した同方向性サンプリングポイント値は、比較的強い相互相関を有する場合があり、このことは、2つの曲線の間のより強い相似度を示す。ただし、判断された位置は最良フレームセグメント化位置ではない。相互相関関数を使うことによって相互相関性を算出することの欠点は、式(2)を使うことによって取得される局所相似度によって克服される。すべての位置におけるサンプリングポイント値は、式(2)を使うことによって相互相関性を算出する際に、比較的同じ役割を果たす。さらに、差の絶対値を、ある位置におけるサンプリングポイント値がもたらす援助を測定する機能値として使うことによって、交差に先行する傾きと後続する傾きとの間の差をうまく記述することができ、最も適切な候補位置をフレームセグメント化位置として見つけることができる。
【０１１９】
ある実施形態では、オーディオフレーム挿入モジュール1203は、音効果がオンにされたとき、互いに隣接するとともに、指定されたチャネルのオーディオデータストリームから取得された第1のオーディオフレームおよび第2のオーディオフレームについて、第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成すること、ならびに第1のオーディオフレームと第2のオーディオフレームとの間に第3のオーディオフレームを挿入し、挿入された第3のオーディオフレームに対してフェードイン処理を実施することであって、そうすることによって、挿入された第3のオーディオフレームは、時間シーケンスに従って、音効果なし状態から無損傷音効果状態に漸進的に遷移する、実施することを行うようにさらに構成される。
【０１２０】
本実施形態では、オーディオフレーム置換えモジュール1204は、音効果がオフにされると、第1のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成すること、ならびに第1のオーディオフレームおよび第2のオーディオフレームを第4のオーディオフレームに置き換え、取得された第4のオーディオフレームに対してフェードアウト処理を実施することであって、そうすることによって、取得された第4のオーディオフレームは、時間シーケンスに従って、無損傷音効果状態から音効果なし状態に漸進的に遷移する、実施することを行うようにさらに構成される。
【０１２１】
ある実施形態では、オーディオフレーム置換えモジュール1204は、音効果がオンにされたとき、互いに隣接するとともに、指定されたチャネルのオーディオデータストリームから取得された第1のオーディオフレームおよび第2のオーディオフレームについて、第1のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第2のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第4のオーディオフレームを生成すること、ならびに第1のオーディオフレームおよび第2のオーディオフレームを第4のオーディオフレームに置き換え、取得された第4のオーディオフレームに対してフェードアウト処理を実施することであって、そうすることによって、取得された第4のオーディオフレームは、時間シーケンスに従って、無損傷音効果状態から音効果なし状態に漸進的に遷移する、実施することを行うようにさらに構成される。
【０１２２】
ある実施形態では、オーディオフレーム挿入モジュール1203は、互いに隣接するとともに、指定されたチャネルのオーディオデータストリームから取得された第1のオーディオフレームおよび第2のオーディオフレームについて、音効果がオフにされると、第2のオーディオフレーム中のフレームセグメント化位置に先行するサンプリングポイント値および第1のオーディオフレーム中のフレームセグメント化位置に後続するサンプリングポイント値を取得し、サンプリングポイント値を順にスティッチングして、第3のオーディオフレームを生成すること、ならびに第1のオーディオフレームと第2のオーディオフレームとの間に第3のオーディオフレームを挿入し、第3のオーディオフレームに対してフェードアウト処理を実施することであって、そうすることによって、挿入された第3のオーディオフレームが、時間シーケンスに従って、無損傷音効果状態から音効果なし状態に漸進的に遷移する、実施することを行うようにさらに構成される。
【０１２３】
実施形態における方法の手順の全部または一部は、関連ハードウェアに命令するコンピュータプログラムによって実装され得ることが、当業者には理解されよう。プログラムは、コンピュータ可読記憶媒体に記憶され得る。プログラムが稼動すると、実施形態における方法の手順が実施される。記憶媒体は、磁気ディスク、光ディスク、または読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)などの不揮発性記憶媒体であってよい。
【０１２４】
上記の実施形態の技術的特徴は、任意に組み合わされてよい。簡潔のために、上記の実施形態における技術的特徴のすべての可能な組合せが記載されているわけではない。ただし、これらの技術的特徴は、衝突が起こらない限り、本明細書の保護範囲内であると見なされるべきである。
【０１２５】
記載される実施形態は、具体的および詳細に記載されている、本出願のいくつかの実施形態にすぎない。ただし、本開示の特許範囲に対する限定として理解されるべきではない。当業者はさらに、本出願の概念から逸脱することなく、いくつかの変形および改良を行ってよく、変形および改良は本出願の保護範囲内であるものとすることに留意されたい。したがって、本出願の保護範囲は、添付の請求項の保護範囲の対象であるものとする。
【符号の説明】
【０１２６】
100  端末
1200  端末
1201  オーディオフレーム取得モジュール
1202  フレームセグメント化位置判断モジュール
1202a  候補位置取得モジュール
1202b  相似度測定モジュール
1202c  判断モジュール
1203  オーディオフレーム挿入モジュール
1204  オーディオフレーム置換えモジュール
1205  コピー確保モジュール
【図１】
2019508722.tif 000005
【図２】
2019508722.tif 000006
【図３Ａ】
2019508722.tif 000007
【図３Ｂ】
2019508722.tif 000008
【図４】
2019508722.tif 000009
【図５】
2019508722.tif 000010
【図６】
2019508722.tif 000011
【図７Ａ】
2019508722.tif 000012
【図７Ｂ】
2019508722.tif 000013
【図８】
2019508722.tif 000014
【図９】
2019508722.tif 000015
【図１０】
2019508722.tif 000016
【図１１】
2019508722.tif 000017
【図１２】
2019508722.tif 000018
【図１３】
2019508722.tif 000019
【図１４】
2019508722.tif 000020
【国際調査報告】
2019508722.tif 000021
2019508722.tif 000022
2019508722.tif 000023
2019508722.tif 000024