পালসওডিও লুপব্যাক অডিও আউটপুট ডিভাইসগুলি আনলোড করুন


12

আমি কীভাবে পালসওডিও লুপব্যাক আউটপুটগুলি আনলোড করব তা জানার চেষ্টা করছি। স্ট্রিমিংয়ের জন্য আমার মাইক্রোফোন এবং সিস্টেম অডিও ক্যাপচার করতে লুপব্যাক মিশ্রণ তৈরি করতে আমি পালসোডিও ব্যবহার করছি। প্রতিবার আমি আমার স্ক্রিপ্টটি চালু করি যাতে এই কোডটি থাকে:

pactl load-module module-null-sink sink_name=mix 
pactl load-module module-loopback sink=mix
pactl load-module module-loopback sink=mix

avconv ...

pactl unload-module module-loopback

এটি বন্ধ হওয়ার পরে এটি দুটি আউটপুট ডিভাইস রেখে দেয়। আনলোড-মডিউল কমান্ড রেকর্ডিংটি থেকে মুক্তি পেয়েছে তবে আমি আউটপুটগুলির জন্য কোনও আদেশ খুঁজে পাই না।

উত্তর:


17

মডিউলগুলি আনলোড করার উপযুক্ত উপায়

পালস অডিওতে লোড হওয়া একটি মডিউল আনলোড করা মডিউলটির সূচক নম্বর দ্বারা সম্পন্ন হয়, যা লোডিংয়ের উপর দেওয়া হয়:

pactl load-module module-null-sink sink_name=test
24

উপরের উদাহরণে পালসওডিও সার্ভার সূচক আইডি সহ মডিউলটি লোড করেছে 24। এই মডিউলটি নিম্নলিখিত কমান্ড দিয়ে লোড করা যেতে পারে:

pactl unload-module 24

আপনার স্ক্রিপ্ট এর আউটপুট পার্স করতে হবে pactl

আমরা মডিউল নম্বরটি না জানলে আমরা নিম্নলিখিত কমান্ডটি জারি করতে পারি যা নম্বর এবং মডিউলটির নাম প্রদর্শন করবে:

pactl list short modules

আরও নতুন সংস্করণগুলি নাম অনুসারে নামানোর অনুমতি দেয়:

pactl unload-module <name>

দ্রুত এবং নোংরা পদ্ধতি

যদি পালসোদিও অটো-স্প্যানিং ডেভেন হিসাবে সেট করা থাকে (যা ডিফল্ট বেইগাভিউর হওয়া উচিত) আমরা দ্রুত default.paচালিত সংজ্ঞায়িত ডিফল্ট মডিউলগুলি লোড করার জন্য পালস অডিও সার্ভারটি পুনরায় সেট করে লগইন করার পরে লোড হওয়া সমস্ত মডিউলগুলি দ্রুত আনলোড করতে পারি :

pulseaudio -k

এটি কার্যকরভাবে আপনার স্ক্রিপ্ট থেকে সমস্ত মডিউল আনলোড করবে এবং আউটপুট জন্য ডিফল্ট সিঙ্ক লোড করবে।


উল্লেখযোগ্য যে উল্লেখ করা যায় যে সমস্ত আবেদনগুলি তাদের স্ট্রিমগুলি কাটা থেকে পুনরুদ্ধার করবে না।
অরেলিয়া

বেসিনে নামে মডিউল সংখ্যা পান: MODULE_NUMBER=$(pacmd list-sinks | grep -E "^\s*name:|^\s*module:" | grep -A 1 -E "^\s*name: <MY-SINK-NAME>" | grep -oP "module: \K[0-9]+")যেখানে MY-SINK-NAMEএটা কি বলছেন। < >কোড রাখুন !
ক্রিসওয়েবদেভ

1
@ ক্রিস ওয়েবেডেভ: ধন্যবাদ, কীভাবে আরও সাধারণ অগ্রগতির জন্য মডিউল সূচকগুলি পাওয়া যায় সে সম্পর্কে একটি লাইন যুক্ত করেছেন।
তাক্কাত

গ্রেট, তারপর এই হয়ে: pactl list short modules | grep "sink_name=MY-SINK-NAME" | cut -f1 | xargs -L1 pactl unload-module। এতে নামযুক্ত সমস্ত মডিউল মুছে ফেলার সুবিধা রয়েছে MY-SINK-NAME(ডুবির নামগুলি অনন্য নয়)।
ক্রিসওয়েবদেভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.