elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)  (Leído 7,629 veces)
Noxware

Desconectado Desconectado

Mensajes: 195



Ver Perfil
[AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« en: 1 Mayo 2014, 02:00 am »

hola, lo que sucede es que me pidieron algo para un loco proyecto en el que quieres reproducir musica desde un .bat... se me habia ocurrido usar pyaudio (no lo manejo pero copio los ejemplos y los adapto) y sys.argv para que desde un .bat se ejecute un comando con los argumentos para leer un archivo wav... pero tengo varios problemas:

primero que nada, no puedo ejecutar ningun comando hasta que no termine la cancion (que deberia estar de fondo)

segundo no se como pausar la musica por lo que tengo que esperar a que esta termine

... no se si hay otro problema pero por ahora son esos


En línea

"La mejor forma de conocer a una persona es viendo su código... o en una partida de ajedrez...

PD: Si no tengo faltas de ortografía es porque use el autocorrector."
tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« Respuesta #1 en: 1 Mayo 2014, 11:07 am »

¿y el código qué tenés hasta ahora?


En línea

Noxware

Desconectado Desconectado

Mensajes: 195



Ver Perfil
Re: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« Respuesta #2 en: 1 Mayo 2014, 16:00 pm »

ninguno xD

pero e hecho algunas pruebas, por lo que ya puedo llamar mi programa desde un bat para que reproduzca un archivo especifico...

el codigo que estoy utilizando lo saque de http://people.csail.mit.edu/hubert/pyaudio/

y es este:

Código:
import pyaudio
import wave
import sys

CHUNK = 1024

if len(sys.argv) < 2:
    print("Plays a wave file.\n\nUsage: %s filename.wav" % sys.argv[0])
    sys.exit(-1)

wf = wave.open(sys.argv[1], 'rb')

p = pyaudio.PyAudio()

stream = p.open(format=p.get_format_from_width(wf.getsampwidth()),
                channels=wf.getnchannels(),
                rate=wf.getframerate(),
                output=True)

data = wf.readframes(CHUNK)

while data != '':
    stream.write(data)
    data = wf.readframes(CHUNK)

stream.stop_stream()
stream.close()

p.terminate()

pero tengo muchas dudas sobre pyaudio... como se pausa??? hay alguna forma de reproduzca y siga ejecutando los comandos dentro de .bat sin interrumpirlo?
En línea

"La mejor forma de conocer a una persona es viendo su código... o en una partida de ajedrez...

PD: Si no tengo faltas de ortografía es porque use el autocorrector."
tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« Respuesta #3 en: 2 Mayo 2014, 07:40 am »

no sé nada de .bat, pero si querés reproducir un sonido de una forma fácil en pocas líneas usaría:
code\\
import winsound
winsound.PlaySound("archivo.wav", winsound.SND_ALIAS)
code\\

ahora bien, esto te crea el tema de seguir usando la consola simultaneamente, bueno para eso usaría un thread (hilo)

Sino en vez de usar la librería pyaudio usaría la de pygame que me parece brinda muchas más posibilidades.
En línea

Noxware

Desconectado Desconectado

Mensajes: 195



Ver Perfil
Re: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« Respuesta #4 en: 2 Mayo 2014, 19:12 pm »

gracias, te la debo :P
En línea

"La mejor forma de conocer a una persona es viendo su código... o en una partida de ajedrez...

PD: Si no tengo faltas de ortografía es porque use el autocorrector."
Noxware

Desconectado Desconectado

Mensajes: 195



Ver Perfil
Re: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« Respuesta #5 en: 2 Mayo 2014, 19:19 pm »

una pregunta mas... como se pausa winsound?
En línea

"La mejor forma de conocer a una persona es viendo su código... o en una partida de ajedrez...

PD: Si no tengo faltas de ortografía es porque use el autocorrector."
tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« Respuesta #6 en: 3 Mayo 2014, 08:28 am »

¿te refieres a que al apretar una tecla se detenga el sonido antes de terminar?
En línea

Noxware

Desconectado Desconectado

Mensajes: 195



Ver Perfil
Re: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« Respuesta #7 en: 3 Mayo 2014, 18:59 pm »

algo asi... pero no al pulsar la tecla, en realidad no tengo metodo todavia... pero me gustaria saber como pausarlo
En línea

"La mejor forma de conocer a una persona es viendo su código... o en una partida de ajedrez...

PD: Si no tengo faltas de ortografía es porque use el autocorrector."
tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« Respuesta #8 en: 4 Mayo 2014, 00:17 am »

ah! entonces no podrás con winsound, no tiene muchas opciones, y menos pausar!, para eso uso pygame, pero debes agregar la librería de acuerdo a la versión de python. Te recomiendo que busques reproducir sonidos con pygame, verás que es fácil y te permite usar wav y mp3 por ejemplo, además de pausar.
En línea

Noxware

Desconectado Desconectado

Mensajes: 195



Ver Perfil
Re: [AYUDA][PYTHON][PyAudio]Como pausar pyaudio (y poder usar la consola mientras)
« Respuesta #9 en: 5 Mayo 2014, 02:21 am »

me quedo con pyaudio, que ya encontre la opcion detener pero tengo otra duda... yo soy nuevo en python (hace poco que inicie) pero lo que es mas, soy nuevo en los lenguajes orientados a objetos y necesito saber como utilizar cosas que estan en otra clase...

este es el codigo: http://paste.ubuntu.com/7389077

pero como dije, soy nuevo en los lenguajes tipo POO y no se como usar:

Código:
stream.stop_stream()
stream.close()

p.terminate()

que es para detener el sonido de la otra clase...
En línea

"La mejor forma de conocer a una persona es viendo su código... o en una partida de ajedrez...

PD: Si no tengo faltas de ortografía es porque use el autocorrector."
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Modificar los headers con php para poder pausar la descarga
PHP
gm-vl 0 1,479 Último mensaje 6 Marzo 2008, 17:34 pm
por gm-vl
¿Como insertar ascii en consola python?
Scripting
@ron 2 4,680 Último mensaje 14 Diciembre 2009, 22:24 pm
por @ron
Como poder usar 2 redes a la vez.
Redes
xtu 2 2,241 Último mensaje 21 Noviembre 2011, 16:00 pm
por tremolero
Como usar las cookies II (para poder combinar con CSS)
Desarrollo Web
z3nth10n 4 2,277 Último mensaje 6 Febrero 2013, 21:31 pm
por EFEX
Cómo usar tus mandos de consola en PC
Noticias
wolfbcn 0 1,194 Último mensaje 10 Marzo 2014, 18:36 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines