問題タブ [audacity]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - スクリプティング Audacity
Audacity 用のスクリプト ライブラリはありますか?
podcast.mp3
具体的には、長い mp3 ファイルを指定して、たとえば、それぞれ 10 分のファイルに分割する方法を探していpodcast0.mp3, podcast1.mp3
ます。
このスクリプトを使用して聞いているすべてのポッドキャストを実行したいので、これを手動で行いたくありません。
いくつかの背景:
非常に長いポッドキャスト (たとえば、Stackoverflow) を聞いています。私は携帯電話でこれらを聞いていますが、ファイル内の任意の時間にジャンプすることはできません。この MP3 プレーヤーには、自分がファイルのどこにいたかを忘れるという厄介な癖があります。例えば:
- ポッドキャストの途中で誰かから電話がかかってくると、最初から始まることがあります。
- 仕事に着いたときにポッドキャストを一時停止することがあり、1 日の終わりにポッドキャストを続けようとすると、トラックの最初にリセットされます。
これが発生すると、手動で早送りまたは巻き戻しする必要があります。このちっぽけなプレーヤーは 5 倍の速さで早送りするので、ポッドキャストの途中で早送りボタンを押したままにすると、元の場所に戻るのに 6 ~ 7 分かかることがあります。長いポッドキャストを短いファイルに分割すれば、煩わしさを少し解消できると思います。
fft - FFTを使用した同じソースからの振幅の違い
FFTの使用について質問があります。Minim iで関数getBand(int i)
を使用すると、特定の周波数の振幅を抽出して、そのきれいなマップを作成できます。よく働く。
ただし、これは好奇心の問題です。同じ周波数を使用して同じ曲を2回再生して抽出された値を見ると(振幅は同じである必要があります)、非常に異なる値が得られます-これはなぜですか?
lisp - ナイキストで音の平均/平均を見つける方法
私は Audacity 用の簡単な測定プラグインを作成しようとしていますが、それは私の頭蓋骨に岩を打ち付けるのと同じくらい楽しいものです。私がやりたいことは、オーディオのチャンクを取り、すべてのサンプルの平均 (チャンクのDC オフセット) を見つけて、それを数値としてユーザーに提示できるようにすることと、サンプルから DC オフセットを差し引くことです。さらなる処理のために。私は自分がやりたい数学を知っていて理解していますが、Lisp/XLisp/Nyquist などでそれを行う方法を理解していません。
私の知る限り、これを行う機能はありません。なんらかの理由で、期待どおりに、snd-avg
関数は実際にはサウンドの平均を計算しません。最初に絶対値を計算し、次に平均を計算します平均を計算してから絶対値を計算します。snd-abs
それを行うことができる別の機能がありますが。>:(
だから私は自分で書く必要があると思いますか?これは、サウンドを配列に変換してから、その平均を計算することを意味しますか?
(snd-fetch-array sound len step)
サウンドからサンプルのシーケンシャル配列を読み取り、サウンドが終了したときに FLONUM の配列または NIL を返します。
(snd-samples sound limit)
サンプルを Lisp 配列に変換します。
平均関数すらないので、自分で合計する必要がありますか? しかし、数学関数はリストでしか機能しませんか? では、配列をリストに変換する必要がありますか?
また、これは長い波形 (サンプルあたり 18 バイト) のために大量のメモリを使用するため、チャンクで処理して累積平均を実行するのが最善です。しかし、最適化されていないバージョンを実行する方法さえわかりません。
いいえ、(hp s 0.1)
機能しません。
- DC のみを除去し、任意の低周波数を維持したい。0.01 Hz はそのまま通過し、DC を除去する必要があります。
- ハイパス フィルターは因果関係があり、使用するニー周波数に関係なく、波形の最初のサンプルは変化しないため、ピーク サンプルなどの測定には役に立ちません。
plugins - Audacity Nyquist プラグイン
私はAudacityをいじっており、ハーモニクスでトーンを生成しようとしています。Audacity は直接サポートしていないようですが、それを行うプラグインを作成できます。プラグインは Nyquist (lisp の変種) で書かれており、ここに小さなチュートリアルがあります。私は Lisp の経験がなく、Audacity の "Generate -> Tone" 機能に似たものを高調波フィールドで書きたいだけです。例として使用できる生成プラグインの簡単な例はありますか? Audacity に付属するプラグインはほとんどが「処理」タイプであり、いくつかの「生成」プラグインはあまり単純ではありません。
c++ - オーディオ サンプル バッファーのボリューム ゲインを変更する
音声データでバッファのボリュームを増やしたい。ポイントは、私は DirectSound を使用しており、1 つのプライマリ バッファーと 1 つのセカンダリ バッファーを持っているということです。すべてのストリームのミキシングは手動で行われます。ボイス チャットでは、すべての参加者が個別の音量レベルを持つことができます。各ストリーム データに値を掛けて (ゲイン)、1 つのバッファーに合計します。すべて正常に動作しますが、データに 1.0f より大きい値を掛けようとすると、クリッピングなどの音が聞こえます。
Audacity エフェクト コンプレッサーを使用してみましたが、これは奇妙なノイズを減らすのに役立ちません。
おそらく、他の方法でゲインを変更する必要がありますか?それとも、別の後処理アルゴリズムを使用しますか?
更新: うわー、私は興味深いことを発見しました! 音量を上げる前とその直後にオーディオをダンプしました。
これが写真です
品質については申し訳ありません-それがサウンドの表示方法だと思います(私は自分で赤い線を引きました)。値がサンプル データ型を超えているように見えます。しかし、私はなぜ理解できませんか?私のサンプルバッファは BYTE ですが、短いポインタを介してのみアクセスします。署名されていますが、*ptr が約 15 ~ 20,000 の場合でもクリッピングが発生します。
c++ - USB/Firewire オーディオ インターフェイスのマスター ボリュームを IAudioEndpointVolume::SetMasterVolumeLevelScalar で設定できないのはなぜですか
portmixer に関連する Audacity のバグを修正しようとしています。出力/入力レベルは Mac バージョンの portmixer を使用して設定できますが、Windows では常にではありません。portmixer のウィンドウ コードをデバッグして、そこで動作するようにしています。
IAudioEndpointVolume::SetMasterVolumeLevelScalar を使用してマスター ボリュームを設定すると、オンボード サウンドには問題なく機能しますが、RME Fireface 400 のようなプロ用外部 USB または Firewire インターフェイスを使用すると、そのデバイスの Windows のサウンド コントロール パネルに反映されますが、出力ボリュームは変化しません。 、およびシステムミキサーでも。
また、プログラムの外では、システム ミキサーのマスター スライダー (タスクバー内) を変更しても効果はありません。システムが示すレベルに関係なく、サウンドカードは同じ (フル) レベルを出力します。出力レベルを変更する唯一の方法は、ハードウェア開発者がカードで提供するカスタム アプリを使用することです。
IAudioEndpointVolume::QueryHardwareSupport 関数は ENDPOINT_HARDWARE_SUPPORT_VOLUME を返すので、これを実行できるはずです。
この動作は、多くのデバイスの入力と出力の両方に存在します。
これはおそらくウィンドウのバグですか?
出力をエミュレート (スケーリング) することでこれを回避することは可能ですが、機能的に同一ではないため、これは好ましくありません。オーディオ インターフェイスにスケーリングを行わせることをお勧めします (特に入力にプリアンプが含まれる場合)。
merge - How does one programmatically mix multiple audio tracks into one track?
What is the algorithm used by Audacity (or any other audio editing program) to mix separate sound tracks?
ie. what is the process of merging the tracks to a single one when the "Mix and Render" command is used.
c# - Audacity ソースコードの再利用
質問したいのですが、自分のプログラムで Audacity のソース コードをうまく再利用した人はいますか? Audacity の波形の再生、記録、表示機能を再利用しようとしていますが、wxwidgets との関連付けのため、その方法がわかりません。いくつかのコンセプトを考えています: 1. Audacity 全体を dll としてコンパイルし、私の C# プログラムで呼び出します。(可能ですか?) 2. 波形の再生、記録、表示の関数を抽出し、それらを dll にコンパイルして私のC#プログラムで使用されます。お知らせ下さい。ありがとうございました。
audio-recording - 声を録音してオウムのように聞こえさせる方法はありますか?
私はアプリを作成していますが、「話す」ときにオウムのように聞こえるようにしたいと思います。これを行う方法についてのアイデアはありますか?大胆さのような、それを実行できるソフトウェアの種類はありますか?特別な変調はありますか?
objective-c - MacOSX用のAudacityアプリのソースコードを作成する方法
audacityのソースコードを http://code.google.com/p/audacity/downloads/detail?name=audacity-fullsrc-1.3.13-beta.tar.bz2&can=2&q=からダウンロードしました
Mac OSX10.6およびXcode3.2.5用にアプリをビルドする必要があります。
audacitysourceCodeFolder /mac/の「compile.txt」ファイルの手順に従って試してみました
しかし、成功しません。
誰かがこれをインストールするのを手伝ってくれませんか。圧縮ファイルの波形生成コードを調べる必要があるため。