मैंने स्थानीय नेटवर्क के लिए एक रेडियो स्थापित किया है, सब कुछ (Icecast2, BUTT (इस टूल का उपयोग करके प्रसारण)) तैयार है और एक चीज़ को छोड़कर काम कर रहा है। BUTT इनपुट डिवाइस से ऑडियो कैप्चर करना चाहता है, लेकिन वह नहीं है जो मैं चाहता हूं, मैं डेस्कटॉप ऑडियो स्ट्रीम करना चाहता हूं। मैंने modprobe snd-aloop का उपयोग करके एक लूपबैक डिवाइस बनाया है। मैं वास्तव में एक विशिष्ट प्रोग्राम से ऑडियो को उस लूपबैक डिवाइस पर रूट करने में कामयाब रहा और मैं इसे वेब प्लेयर पर सुनने में सक्षम था लेकिन ध्वनि बड़बड़ा रही है, तेज हो रही है और सामान्य रूप से वापस आ रही है इसका वर्णन करना कठिन है। यह ऐसा है जैसे डिकोडर पकड़ में नहीं आता। ये सब एक सेकेंड से भी कम समय में हो रहा है।

pactl list short sinks से आउटपुट

1   alsa_output.pci-0000_00_1f.3.analog-stereo  module-alsa-card.c  s16le 2ch 48000Hz   RUNNING
3   alsa_output.platform-snd_aloop.0.analog-stereo  module-alsa-card.c  s16le 2ch 44100Hz   IDLE
11  alsa_output.pci-0000_01_00.1.hdmi-stereo    module-alsa-card.c  s16le 2ch 44100Hz   IDLE

मैंने ~/.asoundrc बनाया है क्योंकि अधिकांश ट्यूटोरियल ने मुझे ऐसा करने के लिए प्रोत्साहित किया है, और मेरा मानना ​​है कि इस फ़ाइल द्वारा इस समस्या को हल किया जा सकता है लेकिन मैं एल्सा और इसकी विशेषताओं से पर्याप्त परिचित नहीं हूं। साउंड कार्ड की नमूना दर 48000 हर्ट्ज है लेकिन BUTT मुझे 44100 का चयन करने के लिए मजबूर कर रहा है।

~/.asoundrc की सामग्री

pcm.!default {
  type asym
  playback.pcm "LoopAndReal"
  #capture.pcm "looprec"
  capture.pcm "hw:0,0"
}

pcm.looprec {
    type hw
    card "Loopback"
    device 1
    subdevice 0
}


pcm.LoopAndReal {
  type plug
  slave.pcm mdev
  route_policy "duplicate"
}


pcm.mdev {
  type multi
  slaves.a.pcm pcm.MixReale
  slaves.a.channels 2
  slaves.b.pcm pcm.MixLoopback
  slaves.b.channels 2
  bindings.0.slave a
  bindings.0.channel 0
  bindings.1.slave a
  bindings.1.channel 1
  bindings.2.slave b
  bindings.2.channel 0
  bindings.3.slave b
  bindings.3.channel 1
}


pcm.MixReale {
  type dmix
  ipc_key 1024
  slave {
    pcm "hw:0,0"
    #rate 48000
    rate 44100
    periods 128
    period_time 0
    period_size 1024 # must be power of 2
    buffer_size 8192
  }
}

pcm.MixLoopback {
  type dmix
  ipc_key 1025
  slave {
    pcm "hw:Loopback,0,0"
    #rate 48000
    rate 44100
    periods 128
    period_time 0
    period_size 1024 # must be power of 2
    buffer_size 8192
  }
}

किसी भी सहायता के लिए अग्रिम रूप से धन्यवाद।

1
no more segmentation faults 13 जिंदा 2021, 13:30

1 उत्तर

सबसे बढ़िया उत्तर

मैंने अपने डेस्कटॉप ऑडियो को पूरी तरह से पल्स ऑडियो का उपयोग करके माइक इनपुट में पाइप करने में कामयाब रहा है, इस थ्रेड के लिए धन्यवाद: https://unix.stackexchange.com/questions/82259/how-to-pipe-audio-output-to-mic-input

0
my tshirt is cicili bicili 16 जिंदा 2021, 02:17