GNU/Linux >> Linux の 問題 >  >> Linux

LinuxPCを携帯電話用のBluetoothスピーカーに変える

Linux PCを携帯電話のBluetoothスピーカーとして使用できることをご存知ですか?いいえ?問題ない! LinuxPCを携帯電話用のBluetoothスピーカーに変える方法を説明します。

まだわからない場合は、携帯電話でオーディオファイルまたはビデオファイルを再生し、 Pulseaudioを使用してBluetooth経由でラップトップまたはデスクトップでそれらを聞くことができます。 。

これをもっと簡単に言えば、PulseaudioとBluetoothを使用して、携帯電話からコンピューターにサウンドをリダイレクトできます。

前提条件

もちろん、Bluetooth対応の携帯電話とLinux PC(デスクトップまたはラップトップ)が必要です。 GNU / Linuxを実行しているPCには、Bluetoothハードウェア機能(Bluetooth受信機と送信機)が必要です。

これは、Ubuntu18.04LTSと古いHPTabletPCで動作するDELLラップトップでテストしました。

まず、 Bluezがインストールされていることを確認します 、 Pulseaudio およびpulseaudiobluetoothモジュール Linuxシステムで。ほとんどのLinuxディストリビューションには、これらのツールがプリインストールされています。不足している場合に備えて、以下のようにインストールしてください。

LinuxにBluezをインストールする

Arch LinuxとそのバリアントにBluezをインストールするには、以下を実行します:

$ sudo pacman -S bluez

Debian、Ubuntuの場合:

$ sudo apt install bluez

Fedora、CentOS、RHELの場合:

$ sudo dnf install bluez

または、

$ sudo yum install bluez

openSUSEの場合:

$ sudo zypper install bluez

Bluezをインストールした後、Bluetoothサービスが開始され、起動時に有効になっていることを確認してください。

$ sudo systemctl start bluetooth
$ sudo systemctl enable bluetooth

Bluetoothのステータスを確認するには、次のコマンドを実行します。

$ systemctl status bluetooth

LinuxにPulseaudioをインストールする

PulseAudio は、freedesktop.orgプロジェクトを介して配布されるオープンソースのクロスプラットフォームのネットワーク対応サウンドサーバープログラムです。

Linux、およびFreeBSDやOpenBSD、macOSなどのさまざまなBSDディストリビューションをサポートしています。 Pulseaudioは、ほとんどのLinuxディストリビューションのデフォルトのリポジトリで利用できます。

Bluetooth経由での再生を有効にするには、pulseaudiobluetoothモジュールをインストールする必要があります。

次のコマンドを実行して、Pulseaudioおよびその他の必要なプログラムをArchLinuxおよびそのバリアント(EndeavourOSやManjaro Linuxなど)にインストールします。

$ sudo pacman -S pulseaudio pavucontrol pulseaudio-bluetooth

Debian、Ubuntu、Linux Mintでは、次のコマンドを実行するだけです:

$ sudo apt install pulseaudio pulseaudio-utils pavucontrol pulseaudio-module-bluetooth

Fedora、RHEL 8、AlmaLinux 8、Rocky Linux 8:

$ sudo dnf install pulseaudio pulseaudio-utils pavucontrol pulseaudio-module-bluetooth

CentOS 7.x.、RHEL 7.x:

$ sudo yum install pulseaudio pulseaudio-utils pavucontrol pulseaudio-module-bluetooth

openSUSE:

$ sudo zypper install pulseaudio pulseaudio-utils pavucontrol pulseaudio-module-bluetooth

LinuxPCと携帯電話のペアリング

携帯電話がPCとペアリングされていることを確認してください。 Bluetoothのペアリングはとても簡単です!おそらくすでに何度もそれを行ったことがあるでしょう。

携帯電話とLinuxシステムでBluetoothをオンにします。

Androidデバイスで、[設定]ウィンドウからBluetoothをオンにします。

AndroidフォンでBluetoothをオンにする

Ubuntu GNOMEでは、Bluetoothはシステム設定からオンに切り替えることができます。

UbuntuでBluetoothをオンにする

両方のデバイスでBluetoothがオンになると、最も近いBluetoothデバイスのスキャンが開始され、それらが一覧表示されます。 Linux PCから、デバイスをクリックするだけでペアリングできます。

UbuntuでBluetoothデバイスをペアリングする

携帯電話にも同じBluetoothPINが表示されます。 ペアをクリックするだけです LinuxPCとペアリングします。

AndroidでのBluetoothペアリング

モバイルがUbuntuPCとペアリングされると、Bluetoothセクションの[デバイス]タブに表示されます。

Bluetooth経由でAndroid携帯とUbuntuをペアリングする

同様に、LinuxPCが携帯電話の[ペアリングされたデバイス]タブに一覧表示されます。

Bluetooth経由でUbuntuPCとAndroidフォンをペアリングする

これで、両方のデバイスがペアリングされ、使用できるようになりました。

LinuxPCを携帯電話用のBluetoothスピーカーに変える

私のUbuntu18.04デスクトップでは、そのままで問題なく動作しました。実際には設定は必要ありません!

「pulseaudio-module-bluetooth」パッケージをインストールし、電話をPCとペアリングすると、ラップトップから電話で再生されている音楽をすぐに聞くことができます。

モバイルデバイスまたはコンピューターから音量を調整できました。 Pusleaudioが舞台裏ですべての面倒を見てくれたと思います。 Pulseaudioは素晴らしいです!

なんらかの理由でそのままでは機能しない場合は、〜/ .config / pulse / system.paという名前のファイルを作成します。 :

$ mkdir ~/.config/pulse/
$ nano ~/.config/pulse/system.pa

その中に次の行を追加します:

.include /etc/pulse/system.pa
load-module module-bluetooth-policy
load-module module-bluetooth-discover

ファイルを保存して閉じます。次のコマンドを使用して変更を有効にするには、Bluetoothサービスを再起動します。

$ sudo systemctl restart bluetooth

「/etc/pulse/system.pa」ファイルを直接編集して変更を加えることができます。ただし、システム全体の構成ファイルを編集しないことを強くお勧めします。 、むしろユーザーのものを編集します。

そのため、 "〜/.config/pulse"を作成する必要があります ディレクトリを作成し、システム構成ファイルをそのディレクトリにコピーして、必要に応じて編集します。

〜/ .config / pulse / default.paファイルは、完全なコピーではなく、"。include/etc/pulse/default.pa"の行で始めることができます。 次に、デフォルトを上書きします。これにより、将来、pulseaudioが更新されたときに問題が発生するのを防ぐことができます。

Pulseaudioのトラブルシューティング

追加の設定をしなくても、ラップトップをBluetoothスピーカーに瞬時に変えることができましたが、オーディオの再生はひどく、途切れがちです。はい、音声は聞こえますが、迷惑です。

まず、Bluetooth再生プロファイルが A2DP(ハイファイ再生)に設定されていることを確認します 。

これを行うには、DashまたはMenuからPulseaudioボリュームコントロール(Pavucontrol)を開きます。そして、[構成]セクションの[プロファイル]ドロップダウンボックスから[High Fidelity Capture(A2DP Source)]を選択します。

High Fidelity Capture(A2DP Source)を選択

次に、正しいバッファサイズ(レイテンシ)を設定する必要があります。 Bluetoothサウンドが途切れたり、途切れたり、歪んだりする場合は、A2DPの実装と、エンコードする前にサウンドをバッファリングする方法が原因である可能性があります。

オーディオの途切れの問題を修正するために、バッファのサイズを変更しただけです。

まず、コマンドを使用してBluetoothデバイス名とそのポートを見つけます:

$ pactl list | grep -Pzo '.*bluez_card(.*\n)*'

出力例:

   Name: bluez_card.7C_D3_0A_0B_D6_30
    Driver: module-bluez5-device.c
    Owner Module: 36
    Properties:
        device.description = "HP 7 VoiceTab"
        device.string = "7C:D3:0A:0B:D6:30"
        device.api = "bluez"
        device.class = "sound"
        device.bus = "bluetooth"
        device.form_factor = "phone"
        bluez.path = "/org/bluez/hci0/dev_7C_D3_0A_0B_D6_30"
        bluez.class = "0x5a020c"
        bluez.alias = "HP 7 VoiceTab"
        device.icon_name = "audio-card-bluetooth"
    Profiles:
        a2dp_source: High Fidelity Capture (A2DP Source) (sinks: 0, sources: 1, priority: 20, available: yes)
        headset_audio_gateway: Headset Audio Gateway (HSP/HFP) (sinks: 1, sources: 1, priority: 10, available: no)
        off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
    Active Profile: a2dp_source
    Ports:
        phone-output: Phone (priority: 0, latency offset: 0 usec, not available)
            Part of profile(s): headset_audio_gateway
        phone-input: Phone (priority: 0, latency offset: 0 usec, available)
            Part of profile(s): a2dp_source, headset_audio_gateway

上記の出力にあるように、Bluetoothデバイスの名前は "bluez_card.7C_D3_0A_0B_D6_30"です。 ポートは「電話出力」です 。また、バッファサイズ(レイテンシ)は 0

次のコマンドを使用して、バッファサイズ(レイテンシ)を設定します:

$ pactl set-port-latency-offset bluez_card.7C_D3_0A_0B_D6_30 phone-output 125000

ここでは、125ミリ秒のバッファを使用しています。あなたはあなたのために働くあなた自身を設定することができます。上記のコマンドで名前とポートの値も変更します。

次に、コマンドを使用してBluetoothサービスを再起動します:

$ sudo systemctl restart bluetooth

または、システムを再起動します。音声の途切れの問題はもう解消されているはずです。

AskUbuntu、LinuxMint、およびArchWikiフォーラムで言及されている他のいくつかの回避策に従いました(リンクは最後に添付されています)。しかし、上記の解決策は私の問題を解決しただけです。

Bluetoothオーディオの問題を解決するためにユーザーが提案するその他の解決策は次のとおりです。

ソリューション1:

ALSA構成ファイルを編集します:

$ sudo nano /etc/modprobe.d/alsa-base.conf

最後に次の行を追加します:

options snd-hda-intel model=generic

この設定は、GNU /Linuxを実行しているPCのプライマリサウンドカードがHDAIntelデバイス(通常はマザーボード上)である場合にのみ関係します。

プライマリサウンドカードが他のデバイス(Creative、Terratech、VIAなど)の場合は何もしません。入力してくれてありがとう Mr.Bryan

ファイルを保存して閉じます。システムを再起動します。

ソリューション2:

これは、LinuxMintフォーラムのユーザーによって提案されました。

ファイルを編集します〜/ .config / pulse / system.pa

$ sudo ~/.config/pulse/system.pa

次の行を追加します:

load-module module-udev-detect tsched=0

ファイルを保存して閉じます。システムを再起動します。

推奨される読み物:

  • KDE Con​​nect –Androidデバイスからのファイルと通知へのアクセス

これがお役に立てば幸いです。


Linux
  1. Linux用のお気に入りの画面記録ツールは何ですか?

  2. Linuxデスクトップに最適な5つのGNOMEシェル拡張機能

  3. 次のLinuxコンピューター?サムスンの携帯電話

  1. pdftkでPDFのブックマークを作成する

  2. WindowsインストールをLinux上のVMに変換する

  3. あなたの子供のための10の最高のLinux教育ソフトウェア

  1. AndroidフォンでLinux端末を使用する

  2. 時間管理を改善するためのLinuxツール

  3. Linuxデスクトップ用のLuminaを使い始めましょう