programa seleccionar audio por programa para win 8.1?

#1 por ups! el 19/12/2013
Alguién conoce algún programa que permita, en windows 8/8.1 seleccionar por cual salida de audio debe salir el audio de cada programa ? (como en apple) sea gratuito o de pago ?

por no tener, no tengo ni firma

Subir
--26171--
#2 por --26171-- el 19/12/2013
En las preferencias de cada programa se puede, al menos en 7, y entiendo que los programas mantendrán todo... (con dispositivos WMA multicanal), ¿no te vale?
Subir
#3 por ups! el 19/12/2013
hay programas, por ejemplo, spotify y muchos otros que no permiten seleccionar la salida de audio y cuando tienes una tarjeta con varias salidas y con algunas incluso no dentro del mismo recinto, es muy molesto, ya me daba por saco el audio del extinto messenger pero es que no veo con que, poderle decir, tu por esta salida, tu por esa otra, tu te callas.

SI alguién me puede dar una pista y si encima (por trabajar con muchos monitores) encima se pudiera que según dónde tengas las ventanas, la salida también pudiera varias, le hago un monumento, pero vamos me conformo de momento con poder indicar a un programa que utilice una salida de audio en concreto y no el dispositivo de windows por defecto del que tiran muchos.

por no tener, no tengo ni firma

Subir
--26171--
#4 por --26171-- el 19/12/2013
No me suena, sería entrar muy adentro del S.O. y hay poca demanda objetiva, aquí lo que manda...; bueno, ya lo sabes tú muy bien,
Subir
#5 por plastamix el 28/12/2013
Estaba con un dolor de cabeza horripilante y me puse a escribir algo al ordenador. Se me ocurrió luego compilarlo y resulta que ha salido un programa que hace lo que dices. Además se me quitó el dolor.

A la izquierda van saliendo los programas ejecutados junto con el monitor en el que se ejecuten. Le das un doble click y se añaden a la derecha, donde puedes elegir en la columna del medio por qué dispositivo de salida tiene que rular. Dando doble click en la tercera, la de Activo, lo pones activo o no.

Está en 32 bits y funciona perfectamente en 32 bits. No sé en un sistema operativo de 64 bits lo que hará. A ver si alguien lo prueba. Lógicamente está en versión bruta. Seguramente haya que depurar muchas cosas, y más en estos programas que entran "muy adentro del S.O.", que más que errores provocan horrores.
Archivos adjuntos:
Subir
1
#6 por ups! el 29/12/2013
pues muchas gracias por tu interés, plastamix.

Si te decides avanzar en el asunto, te doy todo mi soporte y testeo que puedas necesitar.


En W 8.1 64 bit me ha petado.

Aparece el formulario, sale la grid con programa/waveout/activo vacio y ahí excepción de .NET

System.ArgumentOutOfRangeException: startIndex debe ser menor que la longitud de la cadena.
Nombre del parámetro: startIndex
en System.String.Remove(Int32 startIndex)
en WaveOut.Form1.WndProc(Message& m)
en System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
en System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
en System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

yo tengo VS, así que si quieres que te pruebe y depure con el fuente en este primer estadio me lo pasas.

por no tener, no tengo ni firma

Subir
#7 por plastamix el 29/12/2013
Pequeño error. Una cosa que le había puesto y se me olvidó quitar.

Lo malo de estos programas que andan "muy adentro del S.O." es que no se pueden depurar con el visual studio. Para hacerlos hay que andar muy a ciegas, sin saber muy bien lo que va pasando.
Archivos adjuntos:
Subir
#8 por ups! el 29/12/2013
pues está MUY BIEN !!!

ya no peta aunque no ha funcionado pero, muy muy interesante, te explico mejor:

a medida que vas lanzando programas, salen en la lista de programas, spotify, chrome, firefox y lo que es un puntazo porque si funcionara resuelves otra gran cosa es que están indexados por el monitor que los tiene en ejecución, es decir, en mi caso con varias pantallas, el spotify en un monitor es una entrada y el spotify en otro monitor es otra entrada.

No acaba de funcionar, porque todos los programas siguen utilizando la tarjeta por defecto, hagas lo que hagas, aunque los vuelvas a cerrar despues de reasignar, actives/desactives, supongo que solo te faltará un detallito (o detallazo según el esfuerzo)

Por si te sirve para encontrar el qué pasa una cosa curiosa, que te detallo por puntos:

- arranco spotify
- sale en la lista de programas
- le asigno una de las salidas del una tarjeta y le doy a activar
- no funciona sigue sacando el audio por la salida por defecto
- cierro spotify
- vuelvo a abrir spotify
- se engancha sin sacar la ventana y en tu programa empieza a parpadear (se pone el fondo colorado y luego blanco) la línea que corresponde a \\display1\....\spotify.exe de tu programa
- así ha estado varios segundos, hasta que le he dado activo no.
- entonces acaba de arrancar spotify pero como siempre por la tarjeta/salida por defecto.

es muy prometedor, y si lo resuelves, creo que tendrías una grandisima utilidad. Si la comercializaras como mini-aplicación con su trial, en inglés y un precio comedido (20-30€) yo mismo sería tu primera venta y creo que harías unas cuantas perras, porque hasta la fecha no he visto nada en windows similar

bonus: si en esta o en versiones posteriores le pudieras colgar a un programa un vst (una eq, para una reverb) como se dice "lo petas".

No se que plan tienes, pero en cualquier caso cuenta con mi colaboración en cualquier aspecto.

en resumen: casiiiii, pero enhorabuena porque la has clavad en el enfoque y lo de multimonitor genial!!!.

por no tener, no tengo ni firma

Subir
#9 por plastamix el 29/12/2013
Por lo que cuentas está funcionando perfectamente.

A ver. Lo de que se ponga a parpadear lo he puesto para que se vea que está funcionando, que ha detectado el programa y va a abrir un dispositivo de salida. El problema es que a veces los programas comprueban todos los dispositivos de salida y sus capacidades en cuanto a reproducción de onda, lo que puede dar lugar a más de 100 llamadas, y más de 100 parpadeos de la línea, con la cantidad de proceso y tiempo que ello supone (voy a ponerle que no parpadee cuando sea sólo una comprobación). Pero luego hay programas que una vez que han abierto un dispositivo se quedan con el abierto, y por mucho que lo cambies no hace caso. Entonces, si durante el parpadeo lo has puesto inactivo, igual ha abierto el suyo por defecto y con él se ha quedado, aunque hayas cambiado algo en el programa. Para que cambie habría que cerrarlo y volver a abrirlo. Prueba a dejarlo que acabe a ver qué pasa.

Lo que yo me temía es que no llegara al punto en el que se pone a parpadear la línea, que el emulador wow64 no admitiera el sistema que he usado, pero si dices que eso lo hace, está funcionando.
Subir
#10 por ups! el 30/12/2013
Esta vez me he esperado los 10 a 15 segundos (con decenas de parpadeos) según el programa.

He probado chrome, firefox, spotify y vlc, y cuando acaba el parpadeo, empiezan o siguen con la reproducción pero igualmente con la tarjeta por defecto de windows, vamos que no cambia a la salida que le hayas puesto.

por no tener, no tengo ni firma

Subir
#11 por plastamix el 30/12/2013
Me he puesto el windows 8.1 (server 2012, claro) y sí, me funciona perfectamente. El jaleo debe estar con los bits. La dll está en 32 bits y el exe también, y funciona perfectamente siempre y cuando el reproductor también esté en 32. Voy a ver si me poongo algún reproductor a 64, que no tengo ninguno. Si no funciona tendré que hacer otro programa para que pille lo que esté a 64. No sé si todos los programas en los que lo has probado están en 64 bits.
Subir
1
#12 por ups! el 30/12/2013
te doy mas información:

yo lo estoy probando en un windows 8.1 pro 64.

Spotify juraría que es de 32 bits.
chrome, firefox y vlc son de 32.

así a bote pronto no tengo o no se me ocurren más programas que vayan a piñon con la tarjeta por defecto de windows que son los interesantes de parametrizar con tu utilidad....

por no tener, no tengo ni firma

Subir
#13 por plastamix el 03/01/2014
He visto unas cuantas cosas.

El funcionamiento del programa es sencillo. Mira a ver qué procesos hay abiertos, y si lo incluyes en el grid de la derecha comprueba si abres un dispositivo de salida de audio, y si es así, cambia el que quiera abrir el programa por el que le digas. Funciona exactamente igual en XP (Server 2003) que en 8.1 (Server 2012). En sistemas operativos de 64 bits funciona sobre el WOW64, como programa de 32 bits que es. Entonces pilla todo lo que hagan los procesos de 32 bits. Para los programas de 64 habría que hacer otro programa.

En el firefox hay que tener en cuenta que el proceso que abre el dispositivo de salida de audio no es el firefox.exe, sino el plugin-container.exe, con lo que será éste el que hay que añadir al grid, no el firefox.exe.

En la Imagen1 se ve cómo el VLC.exe abre un dispositivo de salida en Windows Server 2012 mediante la función waveOutOpen. uDeviceID tiene el valor 4000 millones y pico, o sea, -1, que es el WAVE_MAPPER. Cuando un programa pasa como dispositivo de salida el WAVE_MAPPER lo que hace es dejar que el windows elija qué dispositivo se abre, que será el que se configura en el panel de control, dispositivo predeterminado.

Y abre el MIDI_MAPPER porque el VLC tiene selecionado como salida de audio "Salida de extensión waveOut win32" como se ve en la Imagen2.

Si en vez de esa salida tiene por ejemplo "Salida de audio DirectX", entonces usa otras funciones que nada tienen que ver con win32, como se ve en la Imagen3. Entonces el programa no funciona (de momento), como se ve en la Imagen4.

Una vez puesto de nuevo el VLC.exe a usar la salida de audio win32, el programa funciona perfectamente (Imagen5). Se ve que funciona porque en el cuadro de texto de la derecha, arriba, aparecen dos números: uno es el dispositivo que quería abrir el programa, -1 en este caso (WAVE_MAPPER); y el otro es el que el WaveOut Select le devuelve para que abra (el 0), que es el que abrirá.

A veces tarda en tener controlado el programa reproductor de sonido, pero no hay más que poner más funciones controlantes. En principio pongo pocas por no pasarme, de estas cosas es mejor poner lo menos posible, pero más vale pasarse un poco que dar la impresión de que el programa falla más que una escopeta de feria.
Archivos adjuntos:
Imagen1.jpg
BBCode:
Imagen2.jpg
BBCode:
Imagen3.jpg
BBCode:
Imagen4.jpg
BBCode:
Imagen5.jpg
BBCode:
Subir
1
#14 por ups! el 08/01/2014
Hola

Pues no logro hacerlo funcionar, te explico los pasos:

- Abro plastamix. En windows tengo una rme por defecto.
- Abro firefox y cargo un video de youtube, entonces plastamix saca tanto firefox.exe como el plugin-container que mencionas (Bien!!).
- Cierro firefox
- En plastamix asigno al plugin container a otra tarjeta (una audiofire) y la activo.
- Abro firefox, vuelvo a cargar el video.

Entonces en plastamix se "enciende" la línea del panel de la izquierda dónde he asignado la audiofire
y oh! que pena, sigue tirando de la RME igualmente.

Anexo una imagen para que veas la asignación, el panel de las dos tarjetas y verás como enciende la línea del panel de la izquiera (lo que comentamos de los parpadeos) pero mira como sigue utilizando la rme por los niveles y la audiofire está ociosa.

¿Ves algo en lo que me pueda equivocar?
¿puede haber una sutilidad, una diferencia entre el w8 server que pruebas y el pro que utilizo yo ?
Archivos adjuntos:
plastamix-prueba.jpg
BBCode:

por no tener, no tengo ni firma

Subir
#15 por undercore el 08/01/2014
me da la sensación que el problema es que intentas usar otra tarjeta

We all are the same nation under the rhythm.
Mi My Space
"El arte esta hecho para ser sentido y no para ser comprendido. P

Subir
Respuesta rápida

Regístrate o para poder postear en este hilo