Jamulus

De Wikipedia, la enciclopedia libre
Jamulus
Información general
Tipo de programa software
Desarrollador Volker Fischer y contribuidores
Lanzamiento inicial 13 de junio de 2006[1]
Licencia GPLv2
Información técnica
Programado en C++
Versiones
Última versión estable 3.9.1 ( 17 de octubre de 2022)
Enlaces

Jamulus es un software de código abierto (GPL) para realizar colaboraciones musicales en red que pueden incluir ensayos en directo, jam y actuaciones desde cualquier lugar con músicos a través de internet.[2]​ Desarrollado por Volker Fischer y contribuidores,[3]​ utilizando el lenguaje C++. El software se basa en la biblioteca Qt y utiliza el códec de audio OPUS. Conocido anteriormente como "llcon", hasta el año 2013.[4]

Uno de los problemas al tocar música online a través de internet en tiempo real es la latencia,[5]​ el retardo que ocurre mientras los flujos de audio (comprimidos) viajan desde –y hacia– cada participante. Aunque el efecto de precedencia significa que los retardos cortos (hasta unos 40 ms) se pueden percibir como síncronos, los retardos más largos hacen que sea prácticamente imposible tocar en vivo al unísono. Otro problema añadido es el de jitter, un tipo de retardo de paquetes debido a cambios de latencia a lo largo del tiempo, lo que resulta en sonido entrecortado o distorsionado. Los retardos largos incluso pueden resultar en pérdidas de paquetes (percibidos como pérdida total de audio). Esto se puede solucionar con el uso de búfers o 'jitter buffers' (ambos presentes en Jamulus), pero éstos aumentan el tiempo de ida y vuelta, por lo que se requiere un equilibrio.[6][7]

Otros softwares de videochat de uso extendido, como Zoom o Teams no son apropiados para esta tarea ya que la latencia puede ser mucho más alta (Zoom recomienda una latencia de "150 ms o menor" y Jitter de "40 ms o menor",[8]​ y en unas pruebas realizadas en 2020 se mostró que tenían una latencia media de unos 135 ms; las "malas métricas de calidad de audio" para Teams incluyen un "Tiempo de ida-vuelta >500 ms" y "Jitter >30 ms").[9][10]​ Además, la mayoría de estos software están optimizados para el habla en lugar de música, por lo que las notas musicales sostenidas se identifican erróneamente como ruido de fondo y son filtradas (aunque esto se puede remediar hasta cierto punto con ajustes como "Activar Sonido Original"). El software para conferencias también suele diseñarse para que no se escuche a más de una persona simultáneamente (la persona que habla es el 'foco') para impedir que hablen unas personas sobre otras, pero esto hace que tocar música a la vez sea imposible. Además, el software para conferencias normalmente no permite la configuración detallada del volumen de los flujos de audio individuales o del panning por parte del usuario. Ambas cosas son una parte integral de Jamulus.

Para reducir la latencia al máximo, Jamulus utiliza la compresión de audio y el protocolo UDP para transmitir datos de audio. La latencia total se compone de:

  • Retardos de red: cada 300 km supone una latencia añadida de 1 ms ya que la velocidad de la luz limita el transporte de datos en internet.
  • Latencia de conversión - si la conversión analógica-digital y/o la digital-analógica no se realizan con un hardware especial, la conversión AD y la conversión DA añadirán a la latencia total;
  • La latencia del sonido viajando a través del aire, si el micrófono y/o los altavoces no están colocados cerca. Cada metro de distancia añade unos 3 ms de retardo debido a la limitación de la velocidad del sonido.

Jamulus se basa en un modelo de cliente-servidor;[11]​ cada cliente transmite su propio audio comprimido a un servidor ubicado en otro lugar en internet. El servidor mezcla el flujo de audio descomprimido para cada usuario por separado y retransmite la mezcla individual comprimida a cada cliente. Cada cliente tiene su propia consola de mezclas, la cual controla su mezcla en el servidor.

Los servidores pueden ser públicos o privados, los primeros apareciendo en listas de "Directorios de servidores" en los que los usuarios pueden escoger un servidor con la latencia más baja.

Utilización[editar]

Ya en 2018, Jamulus atraía atención como forma de ensayar a distancia para conjuntos clásicos como cuartetos de cuerda,[12]​ pero su utilización aumentó dramáticamente en el año 2020 debido a la pandemia de COVID-19.[13]​ En abril del 2020 había dos mil descargas diarias, con tendencia ascendente.[14]​ Fue elegido 'Proyecto del mes' en SourceForge en junio del 2020.[15]​ Jamulus Storband, el primer "big band virtual" sueco, con más de 20 miembros, también se creó ese mes.[16]​ Se hicieron muchos cambios entonces para dar soporte a grupos más grandes, como coros de hasta 98 miembros[17][18]​ así como WorldJam, una iniciativa que permite a músicos de todo el mundo tocar juntos regularmente.

Tener un metrónomo sincronizado para los participantes de una sesión puede ser clave para ayudarles a mantener el ritmo de la canción y tocar en sincronización. Hay numerosos metrónomos online disponibles, así como otras herramientas de código abierto: por ejemplo, Sychronome[19]​ utiliza NTP (Network Time Protocol) con un servidor de tiempo de red para sincronizar los metrónomos de cada cliente Jamulus a través de teléfonos inteligentes.

Véase también[editar]

Referencias[editar]

  1. «Jamulus - Internet Jam Session Software / Discussion / Jamulus Software: Audio Latency in Windows Vista». sourceforge.net. 13 de junio de 2006. Consultado el 5 de enero de 2021. 
  2. Volker Fischer - Case Study: Performing Band Rehearsals on the Internet With Jamulus
  3. «corrados/jamulus». GitHub (en inglés). Consultado el 8 de noviembre de 2020. 
  4. «Jamulus - Internet Jam Session Software / Discussion / Jamulus Software: The software name is now Jamulus». sourceforge.net. 24 de febrero de 2013. Consultado el 5 de enero de 2021. «The old name "llcon" is now replaced by the new name "Jamulus" [...] The name llcon was introduced at the very beginning of the software development years ago.» 
  5. jimamsden (4 de abril de 2020). «Remote Jamming with Helix and Jamulus». jimamsden (en inglés). Consultado el 25 de diciembre de 2020. 
  6. «What is Jitter?». Webopedia. 4 de junio de 1998. Consultado el 17 de abril de 2021. 
  7. «Talk network requirements». Zendesk help. Consultado el 17 de abril de 2021. 
  8. «Meeting and phone statistics». Zoom Help Center. Consultado el 17 de abril de 2021. 
  9. «Critical Services Report: Video Conferencing (UK) | SamKnows». sk1-4609-seo-metadata.samknows-com.cd2.samknows.com. Consultado el 17 de abril de 2021. 
  10. «Use CQD to manage call and meeting quality in Microsoft Teams - Microsoft Teams». docs.microsoft.com (en inglés estadounidense). Consultado el 17 de abril de 2021. 
  11. Marraccini, Fabio (6 de abril de 2020). «Jamulus: configuration, usage and running a server». AudioGeek11 (en inglés estadounidense). Consultado el 8 de noviembre de 2020. 
  12. Kurtz, Holger. «Synchronizität in Zeiten des Streamings | Ausgabe: 2/18 | nmz - neue musikzeitung». neue musikzeitung (2/2018). Consultado el 8 de enero de 2021. 
  13. «Jamulus - Internet Jam Session Software / Discussion / Open Discussion: Effects of the Corona virus on Jamulus». sourceforge.net. Consultado el 8 de noviembre de 2020. 
  14. Kurtz, Holger. «Noch ruckelt die digitale Konzertbühne | Ausgabe: 5/20 | nmz - neue musikzeitung». neue musikzeitung (5/2020). Consultado el 8 de enero de 2021. 
  15. «June 2020, "Community Choice" Project of the Month – Jamulus». SourceForge Community Blog. 1 de junio de 2020. Consultado el 5 de enero de 2021. 
  16. «Jamulus Storband. Sweden's first virtual big band. At home -- yet together.». www.youtube.com. Consultado el 8 de enero de 2021. 
  17. «Support large ensembles (> 100 connected clients) · Issue #339 · corrados/jamulus». GitHub (en inglés). Consultado el 8 de noviembre de 2020. 
  18. «Introduce --mastermix mode: Common mix of mix master with control over monitoring by cwerling · Pull Request #1381 · jamulussoftware/jamulus». GitHub (en inglés). Consultado el 9 de abril de 2021. 
  19. Zhang, Steven. «Synchronome App - GitHub Repository». GitHub Release (v0.1/2021). Consultado el 18 de febrero de 2021.