
He creado una visualización musical usando Processing. Ahora quiero convertir eso en un vídeo, y la forma menos molesta que se me ocurre es grabar un screencast.
Pensé que exportar Processing a video, incluido audio, desde Processing mismo, en ubuntu parecía un problema sin resolver. Es muy difícil y también podría causar problemas de sincronización de tiempo (ya que la música sigue sonando mientras se capturan las imágenes). Continúe entonces con el método de screencast.
Muy fácil, pensé. Pero estaba equivocado. El primer obstáculo fue encontrar una manera de grabar el sonido del audio (y no del micrófono).
Encontré un tutorial para eso.aquí.
En resumen: use gtk-recordmydesktop
y pulse audio
. Exactamente:
- iniciar PulseAudio
- inicie gtk-recordmydesktop y configure la entrada de DEFAULT a pulso
- empezar a grabar
- vea la pestaña Grabación en PulseAudio y seleccione Audio interno (o Monitor)
Esto funciona si grabo, por ejemplo, desde mi navegador web reproduciendo una película de YouTube. Veo que aparece en la pestaña Reproducción y luego puedo grabarlo fácilmente. Pero no para Procesamiento. El procesamiento está escrito en java. El procesamiento no utiliza ALSA sino que utiliza los dispositivos de hardware directamente para crear los sonidos. Cuando se reproduce el sonido, no aparece en el mezclador de Pulse Audio.
¿Cómo puedo grabar el audio ahora?
Respuesta1
La solución en el enlace parece funcionar perfectamente (si entendí correctamente lo que preguntaste). Ni siquiera tuve que cambiar ninguna configuración gtk-recordmydesktop
para que funcionara.
No necesita cambiar nada sobre pavucontrol
Procesamiento ya que no se mostrará en la pestaña de grabación, necesita cambiar la gtk-recordmydesktop
configuración para capturar los sonidos de su sistema.
Aquí hay un vídeo rápido sobrecomo lo hice.
¡No te quejes de la música por favor, a mis vecinos les encanta! ;)
(Al menos siguen golpeando de alegría en las paredes cada vez que lo toco a todo volumen.)
Respuesta2
Descubrí que Java no usa ALSA sino que aborda los dispositivos de audio directamente. De hecho, hace que Pulse Audio sea inútil y, por lo tanto, me inhabilita para reproducir el audio en la entrada para grabar. Esto parecía muy difícil de eludir.Otras lecturasSupe que esto podría estar relacionado con el JDK en uso. Entonces, ¿cómo evitar esto?
El procesamiento se realiza mediante java. Pero cuando se ejecuta Java en el navegador,haceUtilice ALSA. De alguna manera, el contenedor del navegador lo maneja correctamente por usted.
Entonces, la solución fácil: exporte su boceto de procesamiento a un subprograma, reproduzca el subprograma en su navegador y ¡grabe! :)
Espero que esto también pueda ayudar a alguien más.
Respuesta3
Alsaloop nunca... NUNCA... me ha fallado. Sin embargo, la última vez que lo verifiqué, requería un paquete personalizado.