web-dev-qa-db-fra.com

Ajuster automatiquement le volume en fonction du contenu?

Dans différentes sources audio, le niveau des sons est différent. Il est très agaçant de régler le niveau sonore sur presque tous les contenus multimédias. Parfois, lorsque vous aviez auparavant quelque chose de silencieux, vous deviez l’ajuster plus fort et, après un certain temps, vous vouliez jouer un autre média - bang! ça casse inopinément vos écouteurs, le son est si fort!

Alors, y a-t-il un plugin/une fonctionnalité qui peut ajuster automatiquement le niveau de son sur chaque contenu multimédia?

48
megas

Ajuster le niveau sonore avec un plugin LADSPA

Pour obtenir un niveau de sortie sonore assez normalisé, indépendant du niveau d'entrée, nous pouvons utiliser un plug-in LADSPA pour filtrer la sortie audio via PulseAudio.

Au minimum, nous avons besoin d’un plugin compresseur tel que le dysonCompressor du swh-plugins Install swh-plugins qui doivent être installés s'ils ne sont pas encore présents.

Après avoir découvert le nom de notre évier par défaut avec

pacmd list-sinks

et le nom exact du plug-in tel qu'il est stocké dans /usr/lib/ladspa/ (avec mon système ici dyson_compress_1403), nous pouvons exécuter la commande suivante

pacmd load-module module-ladspa-sink sink_name=ladspa_sink master=<alsa_output> plugin=dyson_compress_1403 label=dysonCompress control=0,1,0.5,0.99

Remplacez <alsa_output> par le exact nom du récepteur de sortie (dans mon système, il s'agissait de alsa_output.pci-0000_00_14.2.analog-stereo).

La sortie compressée est maintenant audible sur le collecteur de sortie nouvellement créé, ladspa_sink, accessible à partir du menu Paramètres son .

enter image description here

Les paramètres de contrôle du plug-in compresseur sont les suivants: limite maximale, temps de relâchement, rapport rapide, rapport . Voir dans la documentation du plugin pour plus de détails, les valeurs par défaut et les valeurs maximales resp respectives maximales pour ces contrôles.

Pour éviter l'écrêtage de la lecture, nous pouvons également combiner ce plugin avec un limiteur après compression. Nous pouvons utiliser le fast_lookahead_limiter pour cela, le puits principal étant maintenant notre lasdpa_sink que nous venons de créer:

pacmd load-module module-ladspa-sink sink_name=ladspa_normalized master=ladspa_sink plugin=fast_lookahead_limiter_1913 label=fastLookaheadLimiter control=10,0,0.8

Source: les paramètres ci-dessus ont été adaptés à pulseaudio à partir de le blog de brien sur miscfits

38
Takkat

La solution de Takkat est bonne, mais voici une variante plus simple et permanente.

Il n'y a que deux étapes:

  1. apt-get install swh-plugins
  2. Coupez et collez le texte suivant dans un fichier nommé ~/.config/Pulse/default.pa:

    .nofail
    .include /etc/Pulse/default.pa
    load-module module-ladspa-sink  sink_name=ladspa_sink  plugin=dyson_compress_1403  label=dysonCompress  control=0,1,0.5,0.99
    load-module module-ladspa-sink  sink_name=ladspa_normalized  master=ladspa_sink  plugin=fast_lookahead_limiter_1913  label=fastLookaheadLimiter  control=10,0,0.8
    set-default-sink ladspa_normalized
    

La prochaine fois que vous vous connecterez (ou exécuterez pulseaudio -k), la normalisation sera automatiquement activée par défaut.

15
hackerb9

La normalisation de volume est présente dans SMPlayer. Allez dans le centre logiciel et téléchargez ce lecteur génial, puis activez la normalisation du volume dans les options audio :)

3
aishu

Auparavant, je rencontrais également des problèmes de normalisation audio lorsque je lisais des films sur mon lecteur multimédia VLC, mais quelques recherches sur Internet m'ont permis de trouver la solution idéale. Je vous en ai fait part ci-dessous afin que vous puissiez également en bénéficier ....

correctif VLC de normalisation audio/correctif VLC Sync de sortie audio

1
Pankaj Kumar

Outre une alternative, j'ai quelques commentaires sur les solutions ci-dessus qui suggèrent d'utiliser le dysoncompresseur.

Du manuel:

 2.37  Dyson compressor (dysonCompress, 1403)
Peak limit (dB)
Controls the desired limit of the output signal in dB's.
Release time (s)
Controls the time taken for the compressor to relax its gain control over the input signal.
Fast compression ratio
I have no clear idea what this controls.
Compression ratio
I have no clear idea what this controls. 

http://plugin.org.uk/ladspa-swh/docs/ladspa-swh.html#tth_sEc1.1

L'auteur du package ne sait pas ce que les deux dernières valeurs contrôlent. Alors, comment pouvez-vous tous dire ce que vous devez entrer comme les deux dernières valeurs?

Le plugin lui-même suggère control = 0,0.25,0.5,0.5

$ analyseplugin /usr/lib/ladspa/dyson_compress_1403.so

Plugin Name: "Dyson compressor"
Plugin Label: "dysonCompress"
Plugin Unique ID: 1403
Maker: "Steve Harris <[email protected]>"
Copyright: "GPL"
Must Run Real-Time: No
Has activate() Function: Yes
Has deactivate() Function: No
Has run_adding() Function: Yes
Environment: Normal or Hard Real-Time
Ports:  "Peak limit (dB)" input, control, -30 to 0, default 0
    "Release time (s)" input, control, 0 to 1, default 0.25
    "Fast compression ratio" input, control, 0 to 1, default 0.5
    "Compression ratio" input, control, 0 to 1, default 0.5
    "Input" input, audio
    "Output" output, audio

Je suggérerais même d'essayer l'un des autres compresseurs, qui semblent mieux documentés, comme sc4.

load-module module-ladspa-sink  sink_name=ladspa_sink  plugin=sc4_1882 label=sc4  control=0,101.125,401,0,1,3.25,0
0
fullmooninu