PipeWire出力切り替えスクリプトを作成し、アクティブなオーディオを移動させる
pactlスクリプトを使用して、デフォルトのシンクを更新し、既に再生中のストリームを再ルーティングすることで、Debianオーディオを名前付きPipeWire出力間で切り替えます。
Debianでオーディオを切り替えるには、pactlPipeWireのPulseAudio互換サーバーを使用します。以下のスクリプトは、2つの名前付き出力を切り替え、新しいデフォルトを設定し、既に開いている再生ストリームを移動します。サンプルシンク名は、お使いのマシンに表示される正確な名前に置き換えてください。
PipeWireのpipewire-pulseコンポーネントはPulseAudio互換サーバーを提供するため、標準ツールでpactlシンク(オーディオ出力)を制御できます。クライアントが接続するサーバーを確認し、利用可能なシンクを一覧表示します。
pactl info | grep -E 'Server Name|Server Version'
pactl list short sinks
この手順では、サーバー名に PipeWire を指定する必要があります。シンクリストには、などのシンボル名が含まれていますalsa_output.pci-0000_00_1f.3.analog-stereo。切り替えたい出力ごとに、2 つの名前を正確にコピーしてください。これらの名前は、接続されているハードウェアとオーディオプロファイルに固有のものです。例から名前をコピーしたり、セッション中に変更される可能性のある数値のシンクインデックスを使用したりしないでください。
が見つからない場合はpactl、Debian が に提供しますpulseaudio-utils。必要な場合にのみ、そのクライアント パッケージをインストールしてください。pactl info接続できない場合、または別のサウンド サーバーが報告される場合は、まず PipeWire の PulseAudio 代替がユーザー セッションで実行されていることを確認してください。オーディオ サーバーをむやみにインストールしたり切り替えたりしないでください。

ユーザーごとのスクリプトディレクトリを作成し、新しいファイルを開きます。
mkdir -p ~/.local/bin
nano ~/.local/bin/toggle-audio-output
このスクリプトを貼り付け、 と の両方の値をSINK_A、SINK_Bコピーした名前に置き換えてください。
#!/usr/bin/env bash
set -euo pipefail
SINK_A='alsa_output.pci-0000_00_1f.3.analog-stereo'
SINK_B='alsa_output.usb-Generic_Headset-00.analog-stereo'
command -v pactl >/dev/null || { echo "pactl is missing" >&2; exit 1; }
server_name=$(pactl info | sed -n 's/^Server Name: //p')
case "$server_name" in
*PipeWire*) ;;
*) echo "pactl is not connected to PipeWire's Pulse server" >&2; exit 1 ;;
esac
sinks=$(pactl list short sinks | awk '{print $2}')
for sink in "$SINK_A" "$SINK_B"; do
if ! grep -Fqx -- "$sink" <<< "$sinks"; then
printf 'Sink not found: %s\n' "$sink" >&2
exit 1
fi
done
current=$(pactl get-default-sink)
if [[ "$current" == "$SINK_A" ]]; then
target=$SINK_B
else
target=$SINK_A
fi
pactl set-default-sink "$target"
while IFS= read -r input_id; do
[[ -n "$input_id" ]] || continue
pactl move-sink-input "$input_id" "$target"
done < <(pactl list short sink-inputs | awk '{print $1}')
printf 'Default output: %s\n' "$target"
このスクリプトは、変更を加える前に両方の出力が存在することを確認します。現在のデフォルトが の場合、設定されているもう一方の出力を選択します。SINK_A現在のデフォルトが別のシンクの場合は、 から始めますSINK_A。set-default-sinkコマンドは新しいストリームに影響しますが、ループは を使用してmove-sink-input既存の再生ストリームもルーティングします。 将来のアプリのみに新しいデフォルトを使用させたい場合は、whileループを削除してください。既に再生中のストリームはそのまま残ります。 このスクリプトは、PipeWire セッションを所有する同じログイン済みのデスクトップ ユーザーとして実行してください。 は使用しないでください。 は別のユーザー ランタイムを介して接続し、デスクトップ オーディオの制御に失敗する可能性があります。 これらの操作については、Debian のpactl マニュアルsudoに記載されています。

Nanoで保存しCtrl+O、を押してからEnter、で終了しますCtrl+X。スクリプトを実行可能にして実行します。
chmod +x ~/.local/bin/toggle-audio-output
~/.local/bin/toggle-audio-output
新しいデフォルトシンクが表示されるはずです。サーバーの現在のデフォルトとアクティブな再生ストリームを確認してください。
pactl get-default-sink
pactl list short sink-inputs
スクリプトをもう一度実行すると、元のデバイスに戻ります。実際に音を聴いて確認するには、切り替え中に短い音声サンプルを再生し、選択したデバイスから音声が出力されていることを確認してください。デバイス名や表示動作は、ハードウェア、Bluetooth接続状態、アクティブなオーディオプロファイルによって異なります。


pactl list short sinks。ヘッドセットの接続が切断されたか、プロファイルが変更されたことにより、シンク名が変更された可能性があります。対応する変数を更新してください。pactl infoPipeWire Pulseサーバーが識別されていることを確認してください。Debianのpipewire-pulseパッケージには代替サーバーが含まれており、 pulseaudio-utilsにはクライアントが含まれていますpactl。pactl list short sink-inputs。一部のアプリケーションはストリームを再度開いたり、独自のデバイス選択を保持したりするため、出力に固定されたままの場合は、そのアプリケーションで「デフォルト」を選択してください。PipeWireのプロトコルPulseに関するドキュメントには、PulseAudioコマンドラインクライアントがpipewire-pulseアクティブなサーバー時にPipeWireを制御できる理由が説明されています。このスクリプトはその互換性レイヤーを利用しており、ハードウェアプロファイルの設定や、切断されたデバイスが利用可能であることを保証していません。
pactlスクリプトを使用して、デフォルトのシンクを更新し、既に再生中のストリームを再ルーティングすることで、Debianオーディオを名前付きPipeWire出力間で切り替えます。
適切な入力を選択し、ハンズフリーオーディオプロファイルを使用し、UbuntuのPipeWireルートを確認することで、Bluetoothヘッドセットのマイクを動作させることができます。
FlatpakアプリがUbuntu 24.04 GTKテーマを無視する理由を理解し、安全な手順に従ってテーマ拡張機能を確認し、Flatpakアプリを更新し、ポータルの問題を診断してください。
BitLockerを有効にしたWindows 11と並行してUbuntu 24.04を安全にインストールします。別ドライブと共有ドライブのパス、回復キー、パーティション分割、ブートチェックなどを比較します。
Ubuntuカーネルのアップデート後に発生するNVIDIAドライバの不具合を診断します。DKMSとセキュアブートを確認し、該当するモジュールを再構築し、MOKを登録して、修正が反映されていることを確認します。
NetworkManager、無線ブロック、アップデート、省電力、ドライバをチェックし、各復帰を検証することで、Ubuntu 24.04 のサスペンド後の Wi-Fi 切断を修正します。
Learn why tracker-miner-fs-3 uses high CPU in Ubuntu GNOME and how to check indexing, exclude folders, update Ubuntu, or safely rebuild the search index.
Debianを再インストールすることなく、ブートモード、EFIシステムパーティション、GRUBファイル、ファームウェアのブート順序を確認することで、DebianのUEFIブートエラーを修正します。
PCのハードドライブに数千枚の写真が溜まり、フォルダ名がめちゃくちゃで欲しい写真を探すのが大変なら、本当にストレスですよね。全体のアルバムを漁るのも時間の無駄です。専門の写真整理プログラムがこの問題を完璧に解決してくれます。
Windows で Win+G ショートカットが機能しないのは困りものですか? 簡単な再起動から高度な解決策まで、ゲーム バーの問題に関する実証済みのトラブルシューティング手順を見つけて、ゲーム ツールバーを簡単に復元しましょう。