問題タブ [pulseaudio]
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.
audio - Visual C++ を使用して MFC でサウンドを再生するには?
マイク入力とスピーカー出力を使用して、PC にベースバンド信号処理アルゴリズムを実装したいと考えています。Windows 7 64 ビットでオープン/読み取り/書き込みオーディオ機器を使用するには、どのライブラリが必要ですか? MFC を使用できますか? またはオーディオ デバイスを操作するために DirectSound ラッパー クラスを使用する必要がありますか? また、GNU/Linux 環境の使用にもオープンです。
c++ - 「ALlib:pulseaudio.c:612:コンテキストが接続されませんでした:アクセスが拒否されました」とはどういう意味ですか?
単純なOpenALプログラムを実行すると、次のエラーが発生します。
AL lib:pulseaudio.c:612:コンテキストが接続されませんでした:アクセスが拒否されました
興味深いことに、オーディオを再生しようとすると、わずかに歪んで聞こえますが、正しく再生されます。
以下は、エラーを生成するコードです。ALUTで初期化した場合にも発生します。
エラーはどういう意味ですか?修正できますか?
c - pulseaudioを使用していないときにgstreamerがメモリリークする
GtkとGstreamerを使用してサウンドを再生するアプリを作成しました。私のシステムにpulseaudioがインストールされていないと、新しいサウンドが再生されるたびに、アプリケーションは解放されない追加の10Mの仮想メモリを使用します。pulseaudioがインストールされていて、実行中のメモリリークは発生しませんが、サウンドが非常に途切れ途切れになり、頻繁にクラッシュします。サウンドの再生を処理するコードのセクションです。*update_callback*は10秒ごとに呼び出されます。
c++ - winapiオーディオ出力
私はWindows用のpulseaudioの代替品を探しています。Linuxでは、生のサウンドを出力する非常に簡単な方法があります(pulseaudioを使用)。
それは私がループで機能するために送る小さなバッファで完璧に動作します。
Windowsの下で私はこのようなものを使用します:
動作していますが、別のデータを送信すると、ピース間にわずかな遅延が聞こえます。データバッファの小さなチャンクをサウンドデバイスに出力する他の方法はありますか?
c - PulseAudioで異なるsample_specのサンプルを再生する
カスタムUDPプロトコルを介してリモートサーバーからオーディオサンプルのストリームを受信するアプリケーションを開発しています。ストリームはサンプルの小さなシーケンスで構成され、シーケンスごとにチャネル数とレートが異なる場合があります。
私が理解しているように、ストリームのsample_specは、ストリームの作成中(、、など)にのみ設定でき、pa_simple_new
後でpa_stream_new
切り替える方法はありません。
私の質問は、PulseAudioでこれらのサンプルを再生するための最も効率的なアプローチは何でしょうか?3つのオプションがあります。
- 単一のPulseAudioストリームを保持し、サンプルシーケンスを手動でリサンプリングし、必要に応じてチャネルをミックスします(PulseAudioに同じsample_specのサンプルを供給するため)
- 単一のPulseAudioストリームを保持し、仕様が変更されたときに新しいsample_specで閉じてから再度開きます
- 使用するサンプルの種類ごとに1つずつ、多数のストリームを保持します
オプション1は多くの手作業のようであり、かなりのリソースを消費します。オプション2はひどく非効率的なようです。オプション3はおそらく最良のように見えますが、私はリソースの消費を心配しています。足りないものはありますか?
qemu - オーディオをpulseaudioを介してリモートマシンで実行されているフラッシュアプリにルーティングする
qemu-kvmで複数のVMを実行しています。各VMからそれぞれのリモートユーザーにオーディオ出力を送信したいと思います。この目的のために、リモートマシンでフラッシュを実行したいと思います。
私はこの点でパルスオーディオに出くわしました。パルスオーディオはソースを取得してシンクにルーティングできます。私は今これを達成することができません。
VMをソースとして取得し、そのオーディオをそれぞれのリモートシンクに送信する方法を正確に理解したいと思います。
audio-streaming - PulseAudio でファイル/ストリームをソース/シンクとして使用する方法
私は PulseAudio 初心者で、正しい用語を使用しているかどうかさえわかりません。PulseAudio がエコー キャンセレーションを実行できることを見てきましたが、フィルタリングするソースとシンク、および新しいソースとシンクが必要です。マイクとオーディオ出力をソースとシンクとして提供できますよね?
さて、私の状況は次のとおりです。2 つのビデオ ストリーム、たとえば rtmp ストリームがあるか、2 つの flv ファイルを考えます。任意の時点で、ストリーム X は別のコンピューターのウェブカメラ + マイクからの入力ストリームであり、ストリーム Y は出力ストリームです。私が送信していること (そして、それは私のコンピューターのウェブカメラ + マイクから来ています)。
質問:最初の段落に戻ります。ここで、マイクとオーディオ出力を使用したくありません。代わりに、これら 2 つの「入力」と「出力」ストリームをソースとシンクとして使用したいと考えています。 (もちろん、X と Y からオーディオだけを抽出するために、おそらく xuggler を使用します)。奇妙な質問かもしれませんが、この奇妙なことをするのには理由があります。実験して結果を確認する必要があります。
c - pulseaudio API を使用して wav ファイルを再生しますか?
たとえば、これは pulseaudio の使用方法です: http://freedesktop.org/software/pulseaudio/doxygen/pacat-simple_8c-example.html
しかし、wav ファイルや ogg ファイルを単純に再生する方法がよくわかりません。
macos - Mac OS X で CoreServices.h を使用して pulseaudio をコンパイルする
Mac OS X で pulseaudio をコンパイルしようとしていますが、デフォルトではinttypes.h
、errno.h
やstdio.h
. 入れるとこれらのエラー-isystem/usr/include
はCPPFLAGS
修正されますが、後でfatal error: 'CoreServices/CoreServices.h' file not found
.
-framework CoreServices
and/or
も追加しようとしまし-I/System/Library/Frameworks/CoreServices.framework/Headers
たが、どちらも機能しません。
コンパイラにそれを見つけさせる適切な方法は何ですか? 私はclangを使用していると思います.gccはさらに多くのエラーを生成します.
c++ - オーディオを録音し、バッファに保存してから、PulseAudio 経由でサウンド カードにバイトを書き込みます
次のコード行でオーディオを録音しようとしています:
ご覧のとおり、読み取ったバイトを buffer と呼ばれる構造体に格納しています。これは次のようになります。
別のスレッドが、バッファに格納されたバイトの読み取りと再生を試みます。
ただし、完全に正常に動作するバッファの実装をテストしました。とはいえ、聞こえるのはノイズだけです。そのため、録音のように聞こえるように、バイトを再度再生する前に変換する必要があるかどうか疑問に思っています。
さらに、サウンド カードなどのデータ シートが見つかりませんでした。バイトを変換する必要がありますか。それとも、記録したとおりに再生できますか? 私が使用しているフォーマットは何かを壊しましたか?
私は本当にここで立ち往生しています。うまくいけば、皆さんはそれで私を助けてくれます.
編集:もう1つの質問:ALSA APIを使用して、目的のためにハードウェアに近づけたほうがよいですか? はい、サウンドプログラミングは全くの初心者です。