কমান্ড লাইন থেকে ভলিউম স্তর কীভাবে পাবেন?


15

আমার একটি টাইলিং উইন্ডো ম্যানেজারে একটি পাঠ্য স্থিতি দণ্ড রয়েছে এবং আমি এটিতে তথ্য ফিড করতে টিসিএল ব্যবহার করছি। এই মুহুর্তে আমার কাছে একটি কমান্ড লাইন দরকার যা ভলিউম স্তর 0% থেকে 100% আউটপুট করে। আমি আর্চ লিনাক্স ব্যবহার করছি।


দেখে মনে হচ্ছে আপনার পার্সিং করে এটি করতে সক্ষম হওয়া উচিত /var/lib/alsa/asound.state
জোর্ডানম

দ্রষ্টব্য: ভবিষ্যতে, আপনি আর্চ ব্যবহার করছেন তা বলা সত্যিই প্রাসঙ্গিক নয়। প্রকৃতপক্ষে যা গুরুত্বপূর্ণ তা হ'ল আপনি যে শব্দ শব্দটি ব্যবহার করছেন তা যেমন ALSA, OSS বা পালস অডিও।
strugee

1
আপনার শিরোনামে "বন্ধ" যুক্ত করার পরিবর্তে, আপনার কেবল নিজের প্রশ্নের উত্তর দেওয়া উচিত এবং এটি ছেড়ে দেওয়া উচিত
জর্দান ২

উত্তর:


15

amixerস্ট্যাটাস বারে ভলিউমের জন্য আউটপুট পার্স করার জন্য একটি ওয়ান-লাইনার :

awk -F"[][]" '/dB/ { print $2 }' <(amixer sget Master)

কি [][]মানে?
আনুমানিক

4
@approximatenumber এটা যেমন পারেন ক্ষেত্র বিভাজক সেট করে ]বা [
জেসনওয়ারিয়ান

কুল। আমি জানতাম না তোমার জন্য একটা Regex হতে পারেF
Mihai

আপনি এই কমান্ডটি একটি ভেরিয়েবলে কীভাবে সংরক্ষণ করবেন?
মাইকে 23

@ মাইক 23vol=$(awk '/%/ {gsub(/[\[\]]/,""); print $4}' <(amixer sget Master))
জেসনওয়ারিয়ান 21

12

আপনি এটি করতে ব্যবহার করতে পারেন amixer

উদাহরণ

$ amixer get Master
Simple mixer control 'Master',0
  Capabilities: pvolume pswitch pswitch-joined penum
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 65536
  Mono:
  Front Left: Playback 65536 [100%] [off]
  Front Right: Playback 65536 [100%] [off]

আপনি এটিকে পরিবর্তন করতে এবং এটিকে নিঃশব্দ করতে পারেন:

ভলিউম 75% সেট করুন

$ amixer set Master 75%
Simple mixer control 'Master',0
  Capabilities: pvolume pswitch pswitch-joined penum
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 65536
  Mono:
  Front Left: Playback 49152 [75%] [on]
  Front Right: Playback 49152 [75%] [on]

নিঃশব্দ / সশব্দ

$ amixer set Master toggle
Simple mixer control 'Master',0
  Capabilities: pvolume pswitch pswitch-joined penum
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 65536
  Mono:
  Front Left: Playback 65536 [100%] [on]
  Front Right: Playback 65536 [100%] [on]

আপনি যদি --quietস্যুইচ দিয়ে এর কোনও দেখতে না চান তবে আপনি আউটপুটটি শান্ত করতে পারেন।

$ amixer --quiet set Master 75%
$ 

6

অধিকার

amixer sget Master | grep 'Right:' | awk -F'[][]' '{ print $2 }'
85%

বাম

amixer sget Master | grep 'Left:' | awk -F'[][]' '{ print $2 }'
85%

সাউন্ড সার্ভার

আপনি যদি ডিফল্ট হিসাবে পালসওদিও ব্যবহার না করেন তবে amixerকোন সার্ভারটি ব্যবহার করবেন তা আপনি নির্দিষ্ট করতে পারেন-D pulse

amixer -D pulse sget Master | grep 'Left:' | awk -F'[][]' '{ print $2 }'
85%

এটি আমার পক্ষে কাজ করে না ... কিছু কারণ হিসাবে মাস্টার এর কাছে "বাম" এবং "ডান" নেই যেমন "স্পিকার" এর মতো অন্যান্য চ্যানেল থাকা সত্ত্বেও।
মাইকেল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.