デジタルオーディオデータがclippingであるかどうかを判断するアルゴリズムまたはヒューリスティックはありますか?デジタルオーディオデータがクリッピングされているかどうかを判断するアルゴリズム?
答えて
最大値または最小値の値を受け取った場合、定義上クリッピングが発生します。これらの値は、それらの特定の値とそれを超えるすべての値を表します。したがって、それらは外側の境界検出器として最もよく使用されます。
-adam
-1:やや不正確:定義通りではありません。最大値と最小値は、下にある信号の波の最大値と最小値になることがあります。 –
アダムが言ったこと。また、一定の期間にわたって最大振幅値を検出するロジックを追加してフラグを立てることもできますが、信号が最大振幅に達するかどうかを判断するのが本質です。
デジタルオーディオデータの場合、「クリッピング」という用語は実際には「最大振幅」以外の多くの意味を持ちません。アナログの世界では、オーディオデータは通常は「クリッピングレジスタ」を含むハードウェアからのもので、クリップされない最大振幅の可能性があります。
デジタルオーディオに適しているのは、出力D/Aの制限に基づいてしきい値を設定することです。 VOIPを行っている場合は、ハンドセットや携帯電話の典型的なスレッショルドを選択し、デジタルオーディオがそれを上回る場合は「クリッピング」と呼んでください。ハイエンドのホームシアターシステムに出力する場合は、おそらく "クリッピング"はありません。
私はちょうど良い実装があることに気付きました。 Audacity、例えば
:
クリッピング検索→分析...
単純な答えは、任意のサンプルは、(16ビットのサンプルについて、それぞれ-32768から+32767)最大値または最小値を持っている場合、すなわちそれはクリッピングとみなすことができます。この値は実際には正しい値かもしれませんが、+32767が本当に+33000だったはずかどうかを判断する方法はありません。
もっと複雑な答え:x個の連続するサンプルがクリッピングとみなされる最大/最小値になるようなサンプルカウントクリッピングディテクタなどがあります(xは最大7の可能性があります)。ここでの理論は、わずかなサンプルでのクリッピングが可聴ではないということです。
つまり、最大(および最小以上)の値でもかなり聞こえるオーディオ機器があります。典型的なアドバイスは、音楽を0.0 dBではなく-0.3 dBでピークするように習得することです。そのレベルより上のサンプルはクリッピングすると考えてください。それはすべてあなたが必要とするものに依存します。
これは現在、最良の答えです。 –
-0.3 dBのマスタリングは実用的ではありません。ソースを歪ませることなく、プロダクションをできるだけ大きくしたいと考えています。 – andrewrk
絶対的な真実であることを私は示唆しません。ラウドネス戦争は終わったはずです - ダイナミックレンジを維持することに重点が置かれています。そして、はい、マスターは間違いなく0 dBFSに行かないといけません。それはMP3に変換されると、MP3コーデックの結果としてクリップすることができるからです。だから、私は間違いなく-0.3 dBFSを超えないように勧めます-0.5dBFS。 YMMV。 –
- 1. 単語が英語かどうかを判断するアルゴリズム?
- 2. アルゴリズムの複雑さを判断する
- 3. クエリが変更されるかどうかの判断DB
- 4. 戻るボタンが表示されているかどうかはどのように判断できますか?
- 5. NLP、テキストのブロックが他と似ているかどうかを判断するためのアルゴリズム
- 6. UIPrintInteractionControllerが表示されているかどうかをどのように判断できますか?
- 7. Javaでは、スレッドが実行されているかどうかをどのように判断しますか?
- 8. リンクが訪問されたかどうかを判断するにはどうすればよいですか?
- 9. 抽象メソッドが実装されているかどうかはどのように判断できますか?
- 10. アイテムが選択されているかどうかはどのように判断しますか?
- 11. どのライブラリが使用されていないかをどのように判断するのですか
- 12. 、Firefoxはページをレンダリングしているかどうかを判断
- 13. WebViewがすべてズームアウトされているかどうかを判断する方法
- 14. ブラウザが印刷をサポートしているかどうかを判断する
- 15. 要素がラップされているかどうかを判断する方法はありますか?
- 16. ビデオが再生されているかどうかをプログラムで判断することはできますか?
- 17. location.hashが戻るボタンかどうかを判断する方法
- 18. デバイスにタッチスクリーンがあるかどうかを判断する
- 19. ArrayListが整っているかどうかを判断する汎用メソッド(Java)
- 20. ボディが衝突しているかどうかを判断する - Cocos2d/Box2D
- 21. インスタンスがRubyモジュールによって拡張されているかどうかを判断するには?
- 22. socket.io client:ハンドラがすでにインストールされているかどうかを判断する方法
- 23. アプリが空白で実行されているかどうかを判断する
- 24. LoaderとLoaderManager - エラーがロードされているかどうかを判断する方法
- 25. 翻訳単位内でラベルが定義されているかどうかをプログラムで判断する
- 26. .NETアセンブリがGACにインストールされているかどうかをプログラムで判断する方法
- 27. プログラムがLinuxにインストールされているかどうかをC++で判断する
- 28. .NET例外が処理されているかどうかを判断する方法?
- 29. ファイルシステムがマウントされているかどうかを判断する最善のPOSIX方法
- 30. リモートチャネルが既に登録されているかどうかを判断する方法
http://www.dspguide.com/ – andrewrk