web-dev-qa-db-ja.com

Pacmdダイナミックレンジ圧縮Ubuntu14.04

以下のリンクの回答を使用して、Ubuntu 14.04を実行しているUbuntuメディアボックスでダイナミックレンジ圧縮を正常に設定しました(SteamOSセッション、したがってUbuntuデスクトップセッションは利用できません)。

リアルタイムサウンド後処理、効果音、Ubuntu 10.04

これらのコマンドを連続して実行するための非常に単純なbashスクリプトを作成しました。こんな感じ

#!/bin/bash
pacmd load-module module-ladspa-sink sink_name=ladspa_out \
  plugin=mbeq_1197 label=mbeq \
  control=11.621622,10,4.594594,2.702703,0,0, \
  -1.621622,-0.270270,-5.405406,-3.513514,-8.648648, \
  -5.675676,-4.054054,1.351351,9.189189 &&
pacmd load-module module-ladspa-sink sink_name=sc4m \
  plugin=sc4m_1916 label=sc4m control=1,1.5,401,-30,20,5,12 &&
pacmd set-default-sink sc4m

これをシステムの起動時に実行するにはどうすればよいですか?

これは、ホームディレクトリまたは/usr/bin/compress_audio.shから問題なく実行できますが、起動時に実行されません。 /usr/bin/compress_audio.shを/etc/rc.localに追加しようとしましたが、サイコロはありません。 rc.localが実行されるまでPulseAudioデーモンが起動しないのではないかと思いますが、その場合はどうすればよいかわかりません。

/etc/rc.local Nohup plexmediaserver &に別の行がありますが、それが問題になるかどうかわかりませんか?

提案やアドバイスをありがとう!

編集:pacmdコマンドだけを/etc/rc.localに入れてみましたが、DRCを機能させるには、起動後に/etc/rc.localを手動で実行する必要があります。これは私を絶対に狂わせています。 /etc/rc.localを実行しているユーザーは、おそらくpacmdにアクセスできませんか?

Edit2:/etc/rc.localをsu [user] -c '/usr/bin/compress_audio.sh > /home/gsparx/audio_compress.log'に変更して、ユーザーとログを強制するようにしました。 /etc/rc.localをrootとして実行すると、正しくログに記録され、DRCが追加されます。起動時に、ログに記録されず、DRCも有効にならないため、まったく実行されていないようです。

Edit3:これらの構成を/etc/Pulse/system.paに追加しようとしましたが無駄になりました

3
user1634363

回答が遅れましたが、この質問には回答がなく、回答を見つける前に見つけたので、回答する価値があるようです。

LADSPAでのこの回答 から、 動的圧縮でのこの回答 を介して取得:

起動時にLADSPAモジュールをロードします。

これは、起動時にデーモンによってロードされる/etc/Pulse/default.pa構成ファイルに含めることで実行できます。

.ifexists module-ladspa-sink.so
.nofail
load-module module-ladspa-sink <options>
.fail
.endif

2番目のリンクでは、コンプレッサーをリアルタイムで調整可能なALSAプラグインとしてロードする方法についても説明しています。これは、PulseAudioプラグインをリアルタイムで使用できないため、エフェクトの調整に役立ちます。

これが誰かを助けることを願っています。 :)

1
Revenant