it-swarm-tr.com

Stereo sesi mono olarak karıştırabilir miyim?

Bilgisayarımın yanında çoğunlukla kulaklık amplifikatörü olarak kullandığım bir hoparlör var. Bazen bir hoparlör olarak kullanmam gerekiyor. Ses çıkışını sistem genelinde veya bir medya oynatıcı için eklenti olarak stereo'dan monoya hızlı bir şekilde değiştirmek mümkün müdür?

45
David
  1. Ses alıcınızın adını çalıştırarak bulun

    pacmd list-sinks | grep name:
    
  2. Ardından bu komutu çalıştırın (açılı parantezleri çıkarmaya özen gösterin):

    pacmd load-module module-remap-sink sink_name=mono master=name_of_audio sink_given_by_previous_command channels=2 channel_map=mono,mono
    

    veya ekle

    load-module module-remap-sink sink_name=mono master=name_of_audio sink_given_by_previous_command channels=2 channel_map=mono,mono
    

    için /etc/Pulse/default.pa başlangıçta çalıştırmak için.

  3. Sonra Ses Tercihleri çıkış olarak "Mono" seçin, ancak iki kanal bir araya karıştığı için ses seviyesini yarıya indirmeyi unutmayın, aksi takdirde bozulma olur. Test etmek için çalıştırın:

    speaker-test -c 2 -t sine
    

Tek bir komutta aynı şey:

pacmd load-module module-remap-sink sink_name=mono master=$(pacmd list-sinks | grep -m 1 -oP 'name:\s<\K.*(?=>)') channels=2 channel_map=mono,mono
  1. Mono kanalı kaldırmak için şunu kullanın:

    pacmd unload-module module-remap-sink
    
65
daithib8

Cevap 1'i bir Perl betiğine koydum, bu yüzden bu 2 komutu hatırlamam gerekmiyor:

#!/usr/bin/Perl
use strict;

my @choices = ();
my $i = 0;
for (`pacmd list-sinks`) {
    if( /name:.*<(.+)>/) {
        $choices[$i++] = $1;
        print "$i:\t$1\n";
    }
}
my $choice = $choices[<>-1] or die "invalid choice";
exec (qw(pacmd load-module module-remap-sink sink_name=mono),
    "master=$choice",
    qw(channels=2 channel_map=mono,mono));

(Bu cevaba açıklama eklerdim, ama karım düşük ;-))

14
life of pie

jack kullanıyorsanız, bunu patchage kullanarak yapabilirsiniz (apt-get install patchage İle yüklenebilir). Çok sezgisel bir arayüze sahiptir.

3
manyids2

Bunu yapmanın kolay bir yolu yok gibi görünüyor.

Yine de, tüm PulseAudio çıkışını bir Jack lavabosuna proxy yaparak yapabilirsiniz. Raslantı için çok hantal ...

1
Janus Troelsen

Stereo'yu mono olarak değiştirmek için pulseaudio ses ayarları yöneticisini kullanabilirsiniz. Veya her şeyi sol veya sağ hoparlöre kaydırmayı deneyebilirsiniz.

0
user6658

Bir ek olarak, yukarıdaki cevaplarla mono lavabonuzu oluşturduktan sonra, bu komut dosyasını bir kısayol tuşuyla eşleyebilirsiniz:

 #!/bin/bash

 if [ "* index: 0" == "$(pacmd list-sinks | grep "*" | sed 's/^ *//')" ];
    then pacmd set-default-sink 1 && notify-send "Mono";
    SINK=1;
 else
    pacmd set-default-sink 0 && notify-send "Stereo";
    SINK=0; 
 fi;
 pacmd list-sink-inputs | grep index | grep -o '[0-9]*' | while read -r line; 
    do pacmd move-sink-input $line $SINK;
 done;

Bu, lavabolar arasında geçiş yapar ve mevcut akışı yeni lavaboya (ma

0
Leonardo Arroyo