Saltar al contenido

controlar el volumen usando el script de python

Si encuentras algún detalle que no entiendes puedes comentarlo y haremos todo lo posible de ayudarte lo mas rápido que podamos.

Solución:

Puedes usar call desde el subprocess módulo:

from subprocess import call
call(["amixer", "-D", "pulse", "sset", "Master", "0%"])

Fuente

Por supuesto, puedes usar el código python normal con él:

valid = False

while not valid:
    volume = input('What volume? > ')

    try:
        volume = int(volume)

        if (volume <= 100) and (volume >= 0):
            call(["amixer", "-D", "pulse", "sset", "Master", str(volume)+"%"])
            valid = True

    except ValueError:
        pass

Este código se repetirá hasta que el usuario proporcione una entrada válida, entre 0 y 100, y luego establecerá el volumen en ese valor.

Esto se ejecutará en Python 3. Cambie el input a raw_input para pitón 2.


Para aumentar en un 10% cuando se ejecuta el script, puede hacer una de dos cosas.

Puedes usar el alsaaudio módulo.

Primero, instale con

sudo apt-get install python-alsaaudio

y luego importarlo:

import alsaaudio

podemos obtener el volumen:

>>> m = alsaaudio.Mixer()
>>> vol = m.getvolume()
>>> vol
[50L]

También podemos configurar el volumen:

>>> m.setvolume(20)
>>> vol = m.getvolume()
>>> vol
[20L]

Este número es un entero largo en una lista. Entonces, para convertirlo en un número utilizable, podemos hacer int(vol[0]).

Entonces, ¿aumentar en un 10% cuando se ejecuta?

import alsaaudio
m = alsaaudio.Mixer()
vol = m.getvolume()
vol = int(vol[0])

newVol = vol + 10
m.setvolume(newVol)

O podemos quedarnos con el subprocess módulo y comandos predeterminados de Ubuntu:

from subprocess import call
call(["amixer", "-D", "pulse", "sset", "Master", "10%+"])

aumentará en un 10%.

Mis pronombres son él / él

Para mí, el código de Tim no funcionó del todo. Tuve que hacer esto:

import alsaaudio
m = alsaaudio.Mixer(alsaaudio.mixers[0]) # alsaaudio.mixers = ["PCM"] for me.
m.setvolume(90) # Or whatever

Puede ser debido a mi raro/roto .asoundrc archivo de configuración. Pero dado que no hay documentación de referencia real para .asoundrc – solo algunos ejemplos aleatorios – No creo que puedas culparme.

Además, no llame a los programas de línea de comando para hacerlo. Eso es feo y propenso a errores.

Nos encantaría que puedieras dar visibilidad a este post si te fue de ayuda.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *