কমান্ডলাইনের মাধ্যমে ভলিউম সামঞ্জস্য করুন যাতে ভলিউমটি পপ আপকে জানায়


15

কমান্ডলাইনের মাধ্যমে সিস্টেমের ভলিউমটি সামঞ্জস্য করার কোনও উপায় রয়েছে যাতে ডিফল্ট ভলিউম পপআপ (নোটবুকগুলিতে মিডিয়া কীগুলি টিপানোর সময় পপ আপ হয়) এখনও প্রদর্শিত হয়।

আমার দূরবর্তী নিয়ন্ত্রণের জন্য এটি আমার দরকার I এটি একটি lircrc ফাইল এবং irexec ব্যবহার করে চালানো হবে।


উত্তর:


16

এক্সডটুল প্যাকেজ ইনস্টল করুন এবং জারি করার চেষ্টা করুন

xdotool key XF86AudioLowerVolume

এবং

xdotool key XF86AudioRaiseVolume

1
আপনি পূর্বে লিখুন দিয়ে যে প্রয়োজন হতে পারে DISPLAY=:0সঠিক জায়গায় এটা পাঠান পাবে lirc ব্যবহারকারীর জন্য (অথবা অন্য যদি আপনার প্রদর্শন ভিন্ন)। যদিও না পারে।
অলি

1
অনেক ধন্যবাদ! আমাকে ডিসপ্লে ভেরিয়েবল সেট করার দরকার নেই ...
লিংকন

1
--clearmodifiersউবুন্টু কীবোর্ড শর্টকাট সেটিংসে কী ব্যবহারের পরে আপনার প্যারামিটার ব্যবহার করার প্রয়োজন হতে পারে ।
পাবলো বিয়ানচি

@ অলি হ্যাঁ, আপনার এটি প্রয়োজন যেমন উদাহরণস্বরূপ এসএসএইচ দিয়ে ভলিউম পরিবর্তন করা।
wjandrea

@ পাবলোবিঞ্চি আমার অভিজ্ঞতায় ityক্যটি কীগুলি সত্যই সহজেই পুনর্বিবেচনা করে, কোনও প্রয়োজন নেই --clearmodifiers, তবে আপনাকে অবশ্যই xbindkeys এর জন্য এটি প্রয়োজন।
wjandrea

3

আপনি এই স্ক্রিপ্টটির শর্টকাট বাঁধতে পারেন যা আমি আর্চ ফোরামগুলিতে পেয়েছি (প্যাকেজের প্রয়োজন libnotify-bin):

#!/bin/sh

usage="usage: $0 -c {up|down|mute} [-i increment] [-m mixer]"
command=
increment=5%
mixer=Master

while getopts i:m:h o
do case "$o" in
    i) increment=$OPTARG;;
    m) mixer=$OPTARG;;
    h) echo "$usage"; exit 0;;
    ?) echo "$usage"; exit 0;;
esac
done

shift $(($OPTIND - 1))
command=$1

if [ "$command" = "" ]; then
    echo "usage: $0 {up|down|mute} [increment]"
    exit 0;
fi

display_volume=0

if [ "$command" = "up" ]; then
    display_volume=$(amixer set $mixer $increment+ unmute | grep -m 1 "%]" | cut -d "[" -f2|cut -d "%" -f1)
fi

if [ "$command" = "down" ]; then
    display_volume=$(amixer set $mixer $increment- unmute | grep -m 1 "%]" | cut -d "[" -f2|cut -d "%" -f1)
fi

icon_name=""

if [ "$command" = "mute" ]; then
    if amixer get Master | grep "\[on\]"; then
        display_volume=0
        icon_name="notification-audio-volume-muted"
        amixer set $mixer mute
    else
        display_volume=$(amixer set $mixer unmute | grep -m 1 "%]" | cut -d "[" -f2|cut -d "%" -f1)
    fi
fi

if [ "$icon_name" = "" ]; then
    if [ "$display_volume" = "0" ]; then
        icon_name="notification-audio-volume-off"
    elif [ "$display_volume" -lt "33" ]; then
        icon_name="notification-audio-volume-low"
    elif [ "$display_volume" -lt "67" ]; then
        icon_name="notification-audio-volume-medium"
    else
        icon_name="notification-audio-volume-high"
    fi
fi
notify-send " " -i $icon_name -h int:value:$display_volume -h string:synchronous:volume

উবুন্টু ১০.১০-তে দুর্দান্ত কাজ করার কথা মনে হচ্ছে।


1

সাউন্ড ভলিউম নিয়ন্ত্রণ করুন

আপনি amixerশব্দের ভলিউম নিয়ন্ত্রণ করতে ব্যবহার করতে পারেন , যেমন

amixer set 'Master' 50%
amixer set 'Master' 10%+
amixer set 'Master' 2dB-

-c 1দ্বিতীয় সাউন্ডকার্ডের জন্য উদাহরণস্বরূপ আপনাকে সাউন্ডকার্ড সেট করার প্রয়োজন হতে পারে , দেখুন man amixer

খেলার শব্দ

যেমন প্লেয়ার aplayবা paplayযেমন, যেমন ব্যবহার করে শব্দগুলি প্লে করা যায়

paplay /usr/share/sounds/freedesktop/stereo/audio-volume-change.oga

আপনি এই প্রশ্নটি একবার দেখতে চান: আমি সিস্টেমের শব্দগুলি কোথায় পাই?

অন-স্ক্রিন বিজ্ঞপ্তি প্রদর্শন করুন

আপনি এক্স অন-স্ক্রিন প্রদর্শন লাইব্রেরি XOSD ব্যবহার করে অন-স্ক্রিন বিজ্ঞপ্তিটি পুনরুত্পাদন করতে পারেন। প্যাকেজটি ডাকা হয় xosd-binএবং কমান্ডটি osd_catস্ক্রিনে পাঠ্য, স্থিতি বার ইত্যাদি প্রদর্শন করতে ব্যবহৃত হয়।

osd_cat -b percentage -P 20 -T Status: -f "-adobe-helvetica-bold-*-*--34-*-*-*-*"

প্রদর্শন

এখানে চিত্র বর্ণনা লিখুন

দেখুন এই জার্মান উইকি পাতা অপশন এবং উদাহরণ এবং man osd_catআরো অনেক কিছুর জন্য।


0

আমি এক্সম্যাক্রো ইনস্টল করেছি এবং .lircrc এ নিম্নলিখিত লাইনগুলি যুক্ত করেছি :

begin
        prog = irexec
        button = KEY_VOLUMEUP
        repeat = 1
        delay = 2
        config = echo KeyStrPress XF86AudioRaiseVolume KeyStrRelease XF86AudioRaiseVolume | xmacroplay $DISPLAY
end
begin
        prog = irexec
        button = KEY_VOLUMEDOWN
        repeat = 1
        delay = 2
        config = echo KeyStrPress XF86AudioLowerVolume KeyStrRelease XF86AudioLowerVolume | xmacroplay $DISPLAY
end
begin
        prog = irexec
        button = KEY_MUTE
        config = echo KeyStrPress XF86AudioMute KeyStrRelease XF86AudioMute | xmacroplay $DISPLAY
end

0

এটি পোস্ট করা স্ক্রিপ্টের উন্নত সংস্করণ ।

এটি 14.04 এ আমার জন্য কাজ করে। এটি 16.04 বা আরও নতুনতে কাজ করে কিনা আমাকে জানান।

এটি libnotify-binইনস্টল করা প্রয়োজন ।

#!/bin/sh
# Adjust the volume, play a sound, and show a notification.
#
# Replacement for default Ubuntu volume adjustment behaviour.
#
# Based on /ubuntu//a/12769/301745

command=""
device="pulse"
display_volume=0
icon_name="error"
increment=5
mixer="Master"
usage="usage: $0 [-d device] [-i increment] [-m mixer] (up|down|mute)"

# For compatibility with SSH sessions.
export DISPLAY=:0

_amixer(){
    # amixer alias
    local set_get="$1"
    shift
    amixer -D "$device" "$set_get" "$mixer" "$@"
}

_get_display_volume(){
    # grep alias
    grep -Pom 1 '(?<=\[)[0-9]+(?=%\])'
}

while getopts d:hi:m: opt; do
    case "$opt" in
        d)
            device="$OPTARG"
            ;;
        h)
            echo "$usage"
            exit 0
            ;;
        i)
            increment="$OPTARG"
            ;;
        m)
            mixer="$OPTARG"
            ;;
        ?)
            echo "$usage"
            exit 1
            ;;
    esac
done

shift "$(($OPTIND - 1))"
command="$1"

case "$command" in
    down)
        display_volume="$(
            _amixer set "$increment%-" unmute |
                _get_display_volume
            )"
        ;;
    mute)
        if _amixer get | grep -q "\[on\]"; then
            display_volume=0
            icon_name="notification-audio-volume-muted"
            _amixer set mute > /dev/null
        else
            display_volume="$(
                _amixer set unmute |
                    _get_display_volume
                )"
        fi
        ;;
    up)
        display_volume="$(
            _amixer set "$increment%+" unmute |
                _get_display_volume
            )"
        ;;
    *)
        echo "$usage"
        exit 1
        ;;
esac

if [ "$icon_name" = "error" ]; then
    if [ "$display_volume" = "0" ]; then
        icon_name="notification-audio-volume-off"
    elif [ "$display_volume" -lt "33" ]; then
        icon_name="notification-audio-volume-low"
    elif [ "$display_volume" -lt "67" ]; then
        icon_name="notification-audio-volume-medium"
    else
        icon_name="notification-audio-volume-high"
    fi

    # In a subshell in the background to minimize latency.
    ( canberra-gtk-play --id=audio-volume-change & )
fi

notify-send "Volume: $display_volume%" -i "$icon_name" -h "string:synchronous:volume" -h "int:value:$display_volume"
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.