Autor Tema: mod_theora  (Leído 4979 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado josebita

  • Administrator
  • Hero Member
  • *****
  • Mensajes: 4038
  • Karma: 257
  • Sexo: Masculino
    • Ver Perfil
    • BennuGD Mobile Worklog
mod_theora
« en: Abril 05, 2013, 03:55:15 pm »
Hola:

Estoy acabando una librería para la reproducción de vídeos en formato OGG/Theora. Ya funciona en Mac pero aún da alguna clase de problema en Linux.
La librería está basada en TheoraPlay de Ryan Gordon (Icculus) que está licenciada como Zlib y ésta a su vez está basada en libogg+libtheora+libvorbis. Éstas están bajo licencia tipo BSD. Básicamente eso obliga a poner en el README que se está usando ese software y que está bajo esa licencia, nada más. Más info aquí:
https://icculus.org/projects/theoraplay/

La librería es capaz de reproducir vídeos en modo de 16bpp y 32bpp. No he añadido soporte para 8bpp porque me parece un poco tonto, pero no me debería llevar más de 10 minutos añadirlo.

La reproducción se hace completamente por software y por tanto es más lenta de lo que debería pero la librería (cuando arregle los problemas con Linux) debería ser extremadamente portable.
Os dejo un enlace al código:
https://www.dropbox.com/s/rs7hx4w9twz9oa6/bennugd-module-theora_preview.tar.bz2

Y un pequeño vídeo de cómo funciona en mi ordenador:
https://vimeo.com/63441778

Evidentemente, la librería soporta audio. El que no soporta la grabación del audio del escritorio es QuickTime. Al que se me queje de cutre le quito un mini-punto.

Pros:
* Permite reproducir vídeos en un formato relativamente popular de forma extremadamente sencilla ( graph = video_play(filename) )
* Los vídeos se pueden manipular de la misma forma que cualquier gráfico cargado de un PNG o MAP

Contras:
* De momento es extremadamente simple: sólo incluye video_play() y video_stop(). Y sólo admite la reproducción de un único vídeo cada vez. Ni siquiera tiene pausa, pero añadirla es cuestión de jugar con los temporizadores. Tampoco soporta seeking pero, de nuevo, debería ser cosa de jugar con los temporizadores.
* Bloquea el audio. Por limitación de SDL_mixer (he tratado de buscar alternativas, pero no he encontrado ninguna viable) no es posible reproducir ningún otro sonido/música a través de SDL_mixer cuando se está reproduciendo un vídeo.
  Es una pequeña putada, pero no creo que haya mucho que pueda hacer con la librería de sonido actual.

En fin, que la presento en sociedad a pesar de que todavía tengo que darle un par de vueltas más. ¿Ideas, comentarios o sugerencias?.

PD: El vídeo que he grabado va a trompicones. Es cosa de tener el QuickTime grabando, en general la reproducción es fluída en el ordenador.
« última modificación: Abril 05, 2013, 04:03:36 pm por josebita »

Desconectado master

  • Full Member
  • ***
  • Mensajes: 123
  • Karma: 3
  • Sexo: Masculino
    • Ver Perfil
Re:mod_theora
« Respuesta #1 en: Abril 05, 2013, 07:00:49 pm »
me dice que el video no existe o fue borrado
se ve bastante bien :D
« última modificación: Abril 14, 2013, 10:57:52 pm por master »

Conectado FreeYourMind

  • Hero Member
  • *****
  • Mensajes: 5530
  • Karma: 125
  • Sexo: Masculino
    • Ver Perfil
    • GECA soft
Re:mod_theora
« Respuesta #2 en: Abril 05, 2013, 09:26:43 pm »
si no tiene dependencias se podrian hacer ports a otras plataformas. gracias crack

Desconectado Yawin

  • Hero Member
  • *****
  • Mensajes: 1088
  • Karma: 44
  • Sexo: Masculino
  • La primera persona que ha "demosceneado" en Bennu.
    • Ver Perfil
Re:mod_theora
« Respuesta #3 en: Abril 06, 2013, 03:24:47 am »
O.O ¿Te han dicho alguna vez que eres grande? ¡Pues eres enorme! Yo hasta ahora usaba mod_vlc, pero la tuya es sublime. Ligera, manipulable,... karma++!
Sigue el desarrollo de mi motor RPG: https://www.youtube.com/watch?v=TbsDq3RHU7g

process main()
       begin
           loop
               pedo();
               frame;
            end
       end

Desconectado josebita

  • Administrator
  • Hero Member
  • *****
  • Mensajes: 4038
  • Karma: 257
  • Sexo: Masculino
    • Ver Perfil
    • BennuGD Mobile Worklog
Re:mod_theora
« Respuesta #4 en: Abril 06, 2013, 06:05:19 am »
me dice que el video no existe o fue borrado
Imagino que intentaste entrar mientras el vídeo aún se estaba codificando. Ahora debería ir.
si no tiene dependencias se podrian hacer ports a otras plataformas. gracias crack
O.O ¿Te han dicho alguna vez que eres grande? ¡Pues eres enorme! Yo hasta ahora usaba mod_vlc, pero la tuya es sublime. Ligera, manipulable,... karma++!
Claro, la mod_vlc es MUY superior técnicamente (porque libVLC lo es, quiero decir) pero ésta librería tiene un par de ventajas que, creo, la hacen muy interesante:
* Ésta es muchísimo más portable y simple. No son más que dos ficheros .c y un par de cabeceras, más las dependencias.
* La licencia de ésta librería es mucho más permisiva.

Desconectado Outlaw

  • Sr. Member
  • ****
  • Mensajes: 460
  • Karma: 9
  • Sexo: Masculino
    • Ver Perfil
Re:mod_theora
« Respuesta #5 en: Abril 06, 2013, 01:31:37 pm »
¡Mil gracias por este gran aporte Josebita!  :D
"Life is cheap when the bounty is high"

Desconectado osk

  • Hero Member
  • *****
  • Mensajes: 516
  • Karma: 52
  • Sexo: Masculino
    • Ver Perfil
Re:mod_theora
« Respuesta #6 en: Abril 07, 2013, 01:26:29 am »
Muchísimas, muchísimas, muchísimas gracias!!!