Bienvenido(a) a Palmadores Wednesday, June 07 2023 @ 04:16 AM CEST

Palmadores Foros

Pure Media Server: media server en pure data


PM
Estado: desconectado

DeMeX

Site Admin
Admin
Identificado: 11/27/03
Mensajes: 1581
Ayer liberé unos paquetes de la primera versión de un proyecto personal basado en Pure Data, por si alguien más por aquí le gusta puredatear.

De momento sólo lo he probado en Debian; los patches deberían de funcionar en cualquier sistema PD con Gem, cyclone y Zexy instalados. Imagino que el objeto Artnetin debería de modificarse algo el código; sobre todo la parte de sockets y malloc, aunque es probable que funcione en Windows con cygwin, existe algo parecido para MacOS?

Se agradece cualquier tipo de feedback.

http://code.google.com/p/puremediaserver/



¿Qué es PMS?

PureMediaServer? es un proyecto experimental que intenta crear un media server adaptado a las necesidades artísticas de hoy utilizando herramientas y códigos libres.

Los actuales media server son softwares pensados para reproducir; en este proyecto pretendemos hacer que el software sea capaz no sólo de reproducir y modificar mediante efectos, sino que también pueda crear imágenes a través de parámetros que le suministremos. Fractales y animaciones en tiempo real son claros ejemplos de lo que pretendemos. Incluso sonido, de forma que podamos utilizar nuestra mesa de luces como sintetizador o controlador de efectos de sonido... Queremos añadir el factor "pure data" de experimentación y creatividad a los media servers tradicionales. Por qué? Para poder abrir nuevas vías de expresión en los espectáculos en directo, perfomances o instalaciones.

Este proyecto, como Pure Data mismo, es altamente experimental, por lo que será difícil de usar y habrá que bucear bastante para realizar la instalación.

Sistema operativo

De momento estoy desarrollando en Debian Squeeze. Lo siento, pero bastante me lleva desarrollar en Linux como para pensar en portarlo. Si hay gente con ganas de participar ayudaré en lo que pueda, pero no es una de mis prioridades portarlo a sistemas operativos propietarios.

Una alternativa al problema de tener diferentes sistemas operativos sería empaquetarlo en un live-cd o live-usb, de forma que se pudiera ejecutar sin necesidad de tener un ordenador dedicado a ello, y no habría que portar nada de código. Cuando tenga una versión decente me plantearé "empaquetarlo" así.

Roadmap

* 1.0 - No publicada - Sin fecha de publicación. Seguramente no se publique nunca, igual que la 1.0 de Pure Data. Esto significa que el proyecto siempre estará en fase beta.

* 0.1.0 - No publicada - Prevista para 2012 - Capacidades iguales a los de un media server tradicional. Esta versión se toma como base para desarrollar las nuevas capacidades y empezar a portar a otras plataformas. Ya debe ser usable y traer documentacion.

* 0.0.2 - En desarrollo, disponible en el SVN. Prevista para Septiembre.

* 0.0.1 - Liberada el 16-05-2011. Actualmente controla dos capas de video sin efectos y con capacidades básicas de reproducción de videos. Es una prueba de concepto más que algo usable, pero es una base sobre la que seguir desarrollando.

Subproyectos

Hay partes del proyecto que pensamos que pueden ser útiles a otras personas, por eso las enpaquetamos y distribuímos por separado.

Artnetin

Artnetin es un objeto de Pure Data creado por mí en C dado que no encontré un objeto que permitiera leer ArtNet. Está basado en la biblioteca libartnet del proyecto Open Lighting Arquitecture. Permite leer información DMX512 de un universo ArtNet y tratar los canales en Pure Data como datos normales tipo entero. En próximas versiones haremos un interface directo al OLA de forma que se puedan utilizar interfaces USB-DMX, ACN, StrandNet?, además de ArtNet?, pero me pareció mejor crear este objeto dado que la instalación de libartnet es más sencilla que instalar OLA. En el futuro se mantendrán los dos objetos.

pix_film_player

Es un subpatch de Pure Data que permite el controla avanzado de reproducción de películas mediante pix_film. Fácilmente adapatable a MIDI o cualquier otro tipo de entrada de datos.

Estado actual del proyecto

Acabamos de liberar la primera versión, la 0.0.1. No es gran cosa, dos capas de video, pero funciona, por lo menos en mi ordenador. Agradecería cualquier tipo de feedback! No os paseis con la documentación, ya sé que es una mierdecilla.

Audiencia pretendida

* Artistas y técnicos escénicos
* Instalaciones artísticas y/o museísticas
* Perfomances
* Visual-Jockeys

Objetivos

* Multimedia extendido, de forma que admita muchos formatos de salida (DMX512, MIDI, video, pixelmapping, audio, RS-232, relés, motores, streaming, arduino, ...).

* Es multientrada, o sea que acepta cualquier tipo de entrada o interacción para entrar datos al sistema: DMX, MIDI, movimiento, faders analógicos, webcam...

* Código abierto y libre.

Contacto

He abierto una lista de correo en google para soporte y desarrollo:

puremediaserver@googlegroups.com http://groups.google.com/group/puremediaserver?hl=es

PM
Estado: desconectado

Emc2

Forum User
Moderador
Identificado: 04/26/05
Mensajes: 496
Si necesitas ayuda con el C aunque sólo sea para testear y depurar me lo dices que soy un hacha con Code Blocks Rolling Eyes Rolling Eyes Rolling Eyes nunca viene mal darle a la neurona.

Saludos y animos

PM
Estado: desconectado

DeMeX

Site Admin
Admin
Identificado: 11/27/03
Mensajes: 1581
Holas,

hoy he subido la versión 0.0.3 de Pure Media Server. Todavía no deja de ser una versión alpha, pero es bastante usable, sobre todo si no se le mete mucha caña. Todavía no hay efectos de video. Los cambios más importantes:

- 4 capas. Cada una puede reproducir un video, una imagen, un texto, o reproducir una archivo ogg de audio.
- La entrada de datos ahora se realiza mediante el demonio de Open Lighting Arquitecture, que deberá de estar corriendo para poder introducir datos en Pure Data. OLA soporta ArtNet 1,2,3, ACN, Pathport, SandNet, ShowNet, EspNet, Enttec Usb DMX, Enttec Pro, AnyumaDMX, Velleman, ... Se puede utilizar MagicQLinux en el mismo ordenador que ejecuta Pure Media Server, o en otro ordenador/consola conectado por red.
- Canales de Posición en grado fino
- Keystone/Videomapping por capa de video
- Transparencias/cromas/lumas
- Funciona en Ubuntu 12.04 Precise y Debian Wheezy. Debian Wheezy todavía es inestable, y eso se nota en Pure Media Server. Ubuntu es bastante más estable en este momento. Debería de funcionar en MacOS, pero no lo he probado.
- Se incluye archivo de personalidad de MagicQ y archivo de show de ejemplo.
- Muchos pequeños cambios más...

http://code.google.com/p/puremediaserver/

PM
Estado: desconectado

ledsvisuals

Forum User
Técnico
Identificado: 02/05/08
Mensajes: 96
Hola!
¿Por que no pruebas a hacerlo con herramientas más estables como (vvvv)(vvvv.org) ?
Un saludo! y ánimo.
Manuel Conde / www.ledsvisuals.es / manolo@ledsvisuals.es

PM
Estado: desconectado

DeMeX

Site Admin
Admin
Identificado: 11/27/03
Mensajes: 1581
1. vvvv no es software libre
2. vvvv no es multiplataforma, obliga a utilizar Windows.
3. vvvv no es gratis para uso comercial (500 euros....)
4. Pure Data puede comunicarse con otros programas como vvvv o Processing, si realmente necesito algo de estos programas que no se pueda hacer en Pure Data.

Además creo que Pure Data es estable, lo único que estoy usando versiones betas que en los próximos meses pasarán a ser estables, igual que Debian Wheezy. Desarrollar algo en un sistema que se quedará obsoleto en breve tampoco parece una buena opción...

PM
Estado: desconectado

galvez

Forum User
Técnico
Identificado: 10/31/05
Mensajes: 46
Localización:Zaragoza
eres un crack Santi!!
Llevo un tiempo haciendo cositas con puré data. A ver cuando versión para windows.
Que vaya bien.
Un abrazo.

PM
Estado: desconectado

DeMeX

Site Admin
Admin
Identificado: 11/27/03
Mensajes: 1581
Quote by: galvez

A ver cuando versión para windows.



Hola David,

estoy desarrollándolo pensando en que sea multiplataforma. De momento me estoy centrando en hacer algo potable en Linux para después probarlo y modificarlo si se necesita para que se ejecute en otras plataformas.

El external ola2pd está construido con las cabeceras flext, por lo que debe de compilar en los tres sistemas operativos. El resto de externals , menos ezfile, pero este es fácil de adaptar a flext también, vienen con pd-extended, por lo que se debería de poder ejecutar en Windows. Lo único que falta es el port del Open Lighting Arquitecture a Windows, en el que hay gente trabajando ahora en el programa de Google Summer of Code, por lo que espero que en los próximos meses se lance una versión para Win.

Aunque todavía no tiene un GUI digno de esse nombre, estoy pensando en desarrollarlo con las bibliotecas Qt, por lo que esto también será multiplataforma.

Salud.



PM
Estado: desconectado

DeMeX

Site Admin
Admin
Identificado: 11/27/03
Mensajes: 1581
Bueno, pues otra versión...


- 8 capas de video con selector de activación por capa.
- Pure Media Server pasa a ser modular: en vez de una aplicación grande se compondrá de varias pequeñas. Así cada usuario puede utilizar las partes que le interesen (de momento Video/imágenes, Audio, Textos) ahorrando recursos de máquina. Además sólo se requiere instalar las dependencias del módulo que vamos a utilizar, no de todo el proyecto.
- Se ha separado el audio para poder utilizarlo independientemente. De momento tiene 8 capas que reproducen archivos .0gg en una salida estereo, volumen logarítmico a 16 bits de precisión y pan. Puede reproducir 255 carpetas cada una con 255 archivos.
- Mejorado el sistema de textos por fichero. Se dispone de hasta 255 frases editables. En siguientes versiones se separará del principal y se ampliará a 255 ficheros de texto y 255 frases, por lo que se podrá utilizar como solución para subtitulado en espectáculos en directo.
- Arreglados muchos bugs. Mucha más estabilidad en general.
- Se eliminan algunos objetos externos al proyecto que no estaban en las bibliotecas oficiales. Ahora funciona únicamente con los paquetes del repositorio oficial de Ubuntu.
- Se incluye el binario de ola2pd compilado en Ubuntu 12.04 Precise.


Esta vez me he liado con el soporte CITP/Msex, quería sacarlo con él ya incluído, pero resulta que tras dos días de depurado sin éxito, me he dado cuenta de que la versión de MSEX que he implementado (la 1.2), no la soporta ninguna mesa actualmente, y tras el trabajo en balde (de momente, hasta que los fabricantes actualicen el protocolo) tardaré un poco en tener algo que se pueda usar. Estoy haciéndolo con las Qt4, por lo que también será multiplataforma, y seguramente el interface final también será con las Qt4, utlizando Pure Data en el background como motor de audio y video.

Mientras tanto la parte de Pure Data se ha modificado bastante y ha ganado en estabilidad. Para mover las 8 capas de video se necesita un ordenador potente, pero dos o tres ya es más asequible. He añadido 16 efectos y se pueden añadir muchos más, pero creo que en vez meter muchos efectos chorras, es mejor meter unos pocos que hagan algo decente.

La parte de sonido ya se puede utilizar y es bastante fácil patchear más salidas o capas capas si alguien lo necesita, o añadir efectos, entradas de micros, señales exteriores o desde otro programa en el mismo ordenador, samplers,... En fin, un mundillo, yo estoy más centrado en el video y con lo que tiene de audio a mí me basta (reproducir playlists con control de volumen y pan), y dudo mucho que los sonidistas se sienta a gusto con una mesa de luces como interfaz de control, pero si hay alguien interesado el patch está ahí para modificarlo/adaptarlo. Es fácil cambiar los canales de entrada del OLA por el de una interfaz MIDI, por ejemplo.

http://code.google.com/p/puremediaserver/downloads/detail?name=puremediaserver_0.0.4.tar.gz

PM
Estado: desconectado

DeMeX

Site Admin
Admin
Identificado: 11/27/03
Mensajes: 1581
Bueno pues me he decidido a sacar otra versión, que me lío a hacer cosas y no paro nunca, y esto está empezando a coger color...

La versión 0.0.5 está compilada para Debian Wheezy. Basta con ejecutar el script de instalación install_wheezy.sh, ejecutar PureMediaServer, configurar el OLA mediante el interfaz web a nuestro protocolo/dispositivo favorito y configurar el path a los medias pinchando en el botón Change Media Path. Configurar las direcciones DMX de las capas y a funcionar. Por lo menos en las pruebas en mi ordenador ha sido así. Para otras distribuciones de Linux tendríaís que compilar, y el camino se complica.

Bueno pues sí ya tenemos los thumbnails por CITP/MSEx! Por lo menos, MagicQ los reconoce, tras mucho fregar, pues resulta que no cumple parte del protocolo, por lo menos los paquetes CinF y SInf, pero se ven. No he probado con otras mesas, me encantaría oir si funciona con otras mesas. Antes de iniciar el CITP/MSEx hay que crear los thumbs, pero hay un script llamado make_thumbs.sh en la carpeta scripts que simplemente editando el path a vuestros medias los crea a la perfección.

Ahora tenemos un bonito GUI programado en C++/Qt que interactúa con Pure Data corriendo en el background mediante puertos TCP. Además el GUI lanza el proceso Pure Data y se encarga de reiniciarlo si peta, cosa que sucede de vez en cuando metiéndole caña con muchas capas. Con cuatro o menos se defiende bien.

Tenemos las 8 capas de videos, imágenes y textos de la versión anterior, pero por el camino se ha quedado el audio. No veía una forma fácil de sincronizarlo con el video, y antes de liarme quería sacar esta versión. Las 8 capas son mapeables en una curva Bèzier de 4 puntos.

El método alpha de mezcla en las capas apesta, lo sé. Por desgracia es este o la opacidad total y absoluta. Me parece que me toca aprender un poco de OpenGL y hacer un método de mezcla digno, este parece un multiply o así. De todas formas si alguien prefiere la opacidad total se puede cambiar rápidamente en el patch de Pure Data. Esto es software libre! Y siempre quedan los lumas y los cromas, pero quedan muy pixelados.

Se puede usar con MagicQ en el mismo ordenador, pero cuando se lance el programa tiene que haber un interface de red de verdad conectada. Cosas del OLA, no sé por qué es. Después de lanzado el programa el interface de red se puede desconectar. En localhost no funciona el CITP/MSEx por limitación del propio protocolo, parece que e imposible transmitir el Pinf/Ploc en localhost...



No es nada cómodo estar así, pero para que vierais una imagen.


http://code.google.com/p/puremediaserver/

Todas las horas son CEST. Hora actual 04:16 AM.

  • Tópico normal
  • Tópico Pegado
  • Tópico bloqueado
  • Mensaje Nuevo
  • Tópico pegado con nuevo mensaje
  • Tópico bloqueado con nuevo mensaje
  •  Ver mensajes anónimos
  •  Los usuarios anónimos pueden enviar
  •  Se permite todo HTML
  •  Contenido censurado