Page 4 of 4 FirstFirst ... 234
Results 31 to 33 of 33

Thread: Audio device switch

  1. #31
    Join Date
    Dec 2008
    Beans
    3

    Re: Audio device switch

    I'm new to all of this as well, and only came up with my solution through testing, trial, and error (and of course the starting point that the previous posts provided). I have looked into your question a bit, but I only have one card, so I cannot test through this as I did for my issue.

    That said, I started up a pacmd session, than enter "help" (without the quotes). From this you will see an entire list of what is possible and I wonder whether the profile names are identical between your cards, and if not whether you could still use the profile switch that I used above. If not, there is a "set-card-profile" command that would be my next area of research.

    Sorry I'm not able to be more helpful.

  2. #32
    Join Date
    Dec 2012
    Beans
    1

    Re: Audio device switch

    Here is the code for switching audio INPUTS.

    Code:
    #!/bin/bash
    ## This code is for switching audio inputs.
    
    declare -i sources=(`pacmd list-sources | sed -n -e 's/\**[[:space:]]index:[[:space:]]\([[:digit:]]\)/\1/p'`)
    declare -i sources_count=${#sources[*]}
    declare -i active_source_index=`pacmd list-sources | sed -n -e 's/\*[[:space:]]index:[[:space:]]\([[:digit:]]\)/\1/p'`
    declare -i next_source_index=${sources[0]}
    
    
    #find the next source (not always the next index number)
    declare -i ord=0
    while [ $ord -lt $sources_count ];
    do
        echo ${sources[$ord]}
        if [ ${sources[$ord]} -gt $active_source_index ] ; then
            next_source_index=${sources[$ord]}
            break
        fi
        let ord++
    done
    
    
    #change the default source
    pacmd "set-default-source ${next_source_index}"
    
    
    #move all outputs to the new source
    for app in $(pacmd list-source-outputs | sed -n -e 's/index:[[:space:]]\([[:digit:]]\)/\1/p');
    do
        pacmd "move-source-output $app $next_source_index"
    done
    
    
    #display notification
    declare -i ndx=0
    pacmd list-sources | sed -n -e 's/device.description[[:space:]]=[[:space:]]"\(.*\)"/\1/p' | while read line;
    do
        if [ $(( $ord % $sources_count )) -eq $ndx ] ; then
            notify-send -i notification-audio-volume-high --hint=string:x-canonical-private-synchronous: "Sound input switched to" "$line"
            exit
        fi
        let ndx++
    done;
    Basically it's the same code as from the original, just using pacmd list-sources (for input devices) instead of pacmd list-sinks (for output devices).
    Last edited by alesr; 3 Weeks Ago at 01:52 PM.

  3. #33
    Join Date
    Jan 2007
    Beans
    1,625
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Audio device switch

    This is my output from
    Code:
    pacmd list-cards
    Code:
    2 card(s) available.
        index: 0
    	name: <alsa_card.pci-0000_01_05.1>
    	driver: <module-alsa-card.c>
    	owner module: 4
    	properties:
    		alsa.card = "1"
    		alsa.card_name = "HDA ATI HDMI"
    		alsa.long_card_name = "HDA ATI HDMI at 0xd0410000 irq 19"
    		alsa.driver_name = "snd_hda_intel"
    		device.bus_path = "pci-0000:01:05.1"
    		sysfs.path = "/devices/pci0000:00/0000:00:01.0/0000:01:05.1/sound/card1"
    		device.bus = "pci"
    		device.vendor.id = "1002"
    		device.vendor.name = "Advanced Micro Devices [AMD] nee ATI"
    		device.product.name = "RS880 HDMI Audio [Radeon HD 4200 Series]"
    		device.string = "1"
    		device.description = "RS880 HDMI Audio [Radeon HD 4200 Series]"
    		module-udev-detect.discovered = "1"
    		device.icon_name = "audio-card-pci"
    	profiles:
    		output:hdmi-stereo: Digital Stereo (HDMI) Output (priority 5400)
    		off: Off (priority 0)
    	active profile: <output:hdmi-stereo>
    	sinks:
    		alsa_output.pci-0000_01_05.1.hdmi-stereo/#0: RS880 HDMI Audio [Radeon HD 4200 Series] Digital Stereo (HDMI)
    	sources:
    		alsa_output.pci-0000_01_05.1.hdmi-stereo.monitor/#0: Monitor of RS880 HDMI Audio [Radeon HD 4200 Series] Digital Stereo (HDMI)
    	ports:
    		hdmi-output-0: HDMI / DisplayPort (priority 5900, available: unknown)
    			properties:
    				
        index: 1
    	name: <alsa_card.pci-0000_00_14.2>
    	driver: <module-alsa-card.c>
    	owner module: 5
    	properties:
    		alsa.card = "0"
    		alsa.card_name = "HDA ATI SB"
    		alsa.long_card_name = "HDA ATI SB at 0xd0a00000 irq 16"
    		alsa.driver_name = "snd_hda_intel"
    		device.bus_path = "pci-0000:00:14.2"
    		sysfs.path = "/devices/pci0000:00/0000:00:14.2/sound/card0"
    		device.bus = "pci"
    		device.vendor.id = "1002"
    		device.vendor.name = "Advanced Micro Devices [AMD] nee ATI"
    		device.product.name = "SBx00 Azalia (Intel HDA)"
    		device.form_factor = "internal"
    		device.string = "0"
    		device.description = "Built-in Audio"
    		module-udev-detect.discovered = "1"
    		device.icon_name = "audio-card-pci"
    	profiles:
    		output:analog-stereo: Analog Stereo Output (priority 6000)
    		output:analog-stereo+input:analog-stereo: Analog Stereo Duplex (priority 6060)
    		input:analog-stereo: Analog Stereo Input (priority 60)
    		off: Off (priority 0)
    	active profile: <output:analog-stereo+input:analog-stereo>
    	sinks:
    		alsa_output.pci-0000_00_14.2.analog-stereo/#1: Built-in Audio Analog Stereo
    	sources:
    		alsa_output.pci-0000_00_14.2.analog-stereo.monitor/#1: Monitor of Built-in Audio Analog Stereo
    		alsa_input.pci-0000_00_14.2.analog-stereo/#2: Built-in Audio Analog Stereo
    	ports:
    		analog-output-speaker: Speakers (priority 10000, available: unknown)
    			properties:
    				
    		analog-output-headphones: Headphones (priority 9000, available: no)
    			properties:
    				
    		analog-input-microphone: Microphone (priority 8700, available: no)
    			properties:
    I can't quite figure out how to work with this. The card at index 0 is my ATI graphics card (ugh), which is apparently responsible for sound via HDMI out. The card at index 1 is my actual sound card.
    Don't forget to give thanks and mark your thread as solved

Page 4 of 4 FirstFirst ... 234

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •