web-dev-qa-db-ja.com

音声出力が遅れる

SPDIF経由で、可聴音が遅れて開始します。 g。 Test Soundダイアログでは、音声が「Front Left」と言うべきときに「Left」を最大限に聞くことができます。

テストサウンドをクリックしながらpavucontrolを(バックグラウンドで)開くと、すぐに開始されます。

一般に、オーディオ/メディアファイルを開始すると、開始は出力/聴覚化されません。光または同軸のいずれかを接続します。これは、Ubuntu 12.10にのみ影響するようで、12.04には当てはまらず、13.04には当てはまらないようです!

buntuusers.de 少しの助け-聞こえない洞を再生してspdifを維持します:

apt-get install sox
play -n -c2 synth sin gain -100   # -c2 for two channels

ASRock 970 Extreme3​​(およびGeForce 210)のハードウェア:

$ cat /proc/asound/cards
 0 [SB             ]: HDA-Intel - HDA ATI SB
                      HDA ATI SB at 0xfe200000 irq 16
 1 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xfe080000 irq 25

$ cat /proc/asound/card0/codec* | grep Codec
Codec: Realtek ALC892

http://paste.ubuntu.com/5629082/ に貼り付けられたいくつかのpulseaudio -v出力

どういうわけかpulseaudio 2.1からアップグレードできますか?

http://paste.ubuntu.com/5630475/ に貼り付けられたライブUbuntu 13.04の出力「... Left」、「Front Right」が聞こえますが、12.10では常に「... Left」、「... Right」です。

10
type

古いスレッドを復活させようとしていることは知っていますが、問題を解決する簡単な解決策を見つけました。

From: https://wiki.archlinux.org/index.php/PulseAudio

Module-suspend-on-idleモジュールのロードを無効にするには、使用中の構成ファイル(〜/ .config/Pulse/default.paまたは/etc/Pulse/default.pa)で次の行をコメントアウトします。

### Automatically suspend sinks/sources that become idle for too long
# load-module module-suspend-on-idle

最後にPulseAudioを再起動して、変更を適用します。

18
Dr_Evil

電源管理がサウンドカードがオーディオの最初のスニペットを出力するのを妨げているようです。 http://wiki.gentoo.org/wiki/Power_management/Soundcard から、重要な部分は次のとおりです。

ランタイムチューニング

/ sys/module/snd_hda_intel/parametersの下のsysfsファイルシステムでドライバーを調整できます。

Power_save_controllerノブは、省電力モードが有効になっているかどうかを制御します。カーネルオプション...節電...によってプリセットされています。

Power_saveノブは、タイムアウトを秒単位で設定します。カーネルオプションの既定のタイムアウトによって事前設定されています...

pm-utils

pm-utilsには、バッテリーがオンのときに省電力モードを有効にし、ACがオンのときに無効にするスクリプトが含まれています。カーネルのデフォルト値を上書きします。

Pm-utilsを使用しているが、この種の規制が必要ない場合は、スクリプトを無効にします。root#touch /etc/pm/power.d/intel-audio-powersave

上記のテキストから、試すことは次のとおりです。

  1. ターミナルで、次を実行し、オーディオの再生を再試行します。

    echo N | Sudo tee /sys/module/snd_hda_intel/parameters/power_save_controller
    

    オーディオに問題がない場合は、次の内容の新しいファイルを/etc/modprobe.d/に追加して、永続的にする必要があります。

    options snd_hda_intel power-saving=N
    
  2. Sudo touch /etc/pm/power.d/intel-audio-powersaveを実行して再起動します

    修正が機能した場合、オーディオは正常に再生され、そうでない場合はファイルを再度削除します。

    Sudo rm /etc/pm/power.d/intel-audio-powersave
    

これらのどちらも機能しない場合、私はアイデアがありません:-)。

2

これは、SPDIF /デジタル出力および受信機が信号を処理するなどの一般的な問題です。信号がない場合、受信機はアイドルモードになります。信号の再生を開始するには、数ミリ秒から数百ミリ秒かかります。これを修正する唯一の方法は、SPDIF出力が常にいくつかの信号を送信するようにして、受信機の処理を常に維持することです。現時点では、Windowsでこの問題を解決するために、ある人が.NETで書いた、常にヌル信号を出力する小さなユーティリティを使用しました。彼はそれをSPDIFキープアライブと呼びます。これにより、信号は流れ続け、受信機は常にリスニングします。 Linuxでこれを行う方法はまだ見ていませんが、そのようなものを作成するためのサポートはどこにでもあると思います。うまくいけば、これは誰かに次を検索する場所または次を探す場所についてのアイデアを与えてくれました! -K9SPY

デジタルオーディオキープアライブキープアライブSPDIFキープアライブキープアライブTOSLINKキープアライブキープアライブタイムアウトがスリープ状態になり、SPDIFサウンド遅延が低下する

1
K9SPY
  1. load-module module-suspend-on-idle行を含むPulseAudio構成ファイルを検索します。

    neatsoft@desktop:~$ grep module-suspend-on-idle /etc/Pulse/*
    /etc/Pulse/default.pa:load-module module-suspend-on-idle
    /etc/Pulse/system.pa:load-module module-suspend-on-idle
    
  2. その行をコメント化します。

  3. PulseAudioを再起動して、変更を適用します。

    pulseaudio -k

Ubuntu 17.04でテストしたところ、正常に動作します。

0
neatsoft

module-suspend-on-idleをロードしないことに関する受け入れられた答え は、私にとって問題を解決しません。これを「修正」するには、バックグラウンドで連続した無音コマンドを実行したままにする必要がありました。次の質問のUPDATE 2を参照してください。

そして、最新のArchLinuxとUbuntuで、ラップトップの内蔵スピーカーとPCの両方で、HDMIとヘッドフォンを介してこの問題を再現しました。SPDIFは不要です。

0
pepper_chico