jueves, 4 de junio de 2009

Adaptando el contenido

En anteriores entradas hemos visto cómo obtener los datos, y de dónde. Seguramente todo lo que he escrito se irá quedando desfasado muy rápidamente, pero aquel que está pendiente de estos temas seguramente no tendrá problema. Si estás empezando, quédate con la filosofía y las posibilidades más que con recursos concretos: adelantarás más.

Bien, vamos con un tema muy importante, diría que tanto o más que disponer de fuentes de datos es presentarla de forma atractiva. Existen millones de webs ahí fuera, y que un usuario se decida por la nuestra como punto de referencia al que volverá no es tarea fácil. Por triste que parezca, la dura realidad es que al usuario no le importa lo más mínimo lo legible que sea tu código, que uses este u otro lenguaje, o el tiempo que le hayas dedicado a crearlo. Lo que les importa a los visitantes es lo que pueden ver.

Y a veces ni eso, hay otros factores como "quién llega antes". Si una web fea tiene éxito porque ofrece algo novedoso, sus clones megaperfeccionados raramente superarán al original. Por ejemplo, YouTube como web es bastante fea. Y la parte de administración de la cuenta, horrible. Es fácil de usar, para navegantes con cierta experiencia, pero es en general una web fea. Pero como llegó antes que nadie ofreciendo la posibilidad de subir vídeos hasta reventar, triunfó.

Hay ejemplos más elegantes de una web de vídeos:
Como verás, el diseño está mucho más cuidado, pero no son tan conocidas como YouTube. Tú puedes crear tu propio clon de YouTube gratis, por ejemplo, con Phpmotion. Merece la pena echarle un ojo, es bastante elegante y personalizable.

De todos modos, en esta entrada no hablaré de crear un clon de Youtube, sino de cómo adaptar los datos obtenidos de distintas fuentes en nuestra web. Ver otros scripts sin duda ayuda bastante, por eso recomiendo visitarlos e incluso bajar el código fuente y jugar con ellos.

Añadir vídeos a nuestra web

En una web musical como Eightnotes.org no puede faltar vídeo. Es el recurso más visual del que podemos echar mano. Está bien presentar letras de canciones, información sobre artistas, imágenes, etc... Pero el vídeo sin duda dará vida y fuerza a la web.

Hay varias formas de incluir vídeo: como contenido principal (tipo YouTube), como complemento de la información mostrada, o a petición (búsqueda de vídeos, por ejemplo). En nuestro caso la segunda y tercera opción serán las principales.

Cuando mostremos información sobre un artista, o la letra de una canción, podemos por ejemplo incluir un widget lateral con imágenes y vídeos, al estilo BoxNet. Pero también podemos hacer algo más espectacular y vistoso, como es incluir reproductor en el que reproducir el/los video(s) relacionados en la misma página, como en este ejemplo. Basta un plugin gratuito (flash, windows media player, quicktime, realplayer) para que nuestros visitantes puedan ver los vídeos que colguemos (dependiendo del formato escogido). Pero existen reproductores comerciales bastante potentes, como el JW FLV Media Player, que van más lejos. Incluyen opciones como crear listas de reproducción, aceptan distintos formatos, live streaming, se pueden personalizar con skins, etc. También hay todo tipo de reproductores de imágenes, como SimpleViewer.

Las listas de reproducción concretamente son una opción bastante recomendable, tanto como para encadenar vídeos relacionados, como para ofrecer al usuario tal opción. O incluso para poner en portada una lista de vídeos desde un RSS. YouTube por ejemplo permite crear estas listas, y acceder a ellas como RSS desde otras webs o desde lectores de noticias. Puedes probar a ver tu lista, si tienes alguna, usando esta pequeña herramienta.

Hay muchas formas de incluir vídeos en la web aparte de las mencionadas, y, como decía al principio, seguramente mi lista se irá quedando desfasada muy pronto.

Hasta ahora hemos hablado de cómo mostrar vídeos obtenidos desde fuentes ajenas. Ahora veremos cómo hacer para permitir a los usuarios que suban sus propios vídeos. Eightnotes.org no es YouTube ni lo pretende, pero estaría muy bien que un usuario subiera un vídeo que ha grabado con el móvil en un concierto, para mostrarlo junto a los datos de un artista. De hecho, de esta forma estaríamos generando contenidos propios que no dependerían de esas fuentes ajenas...

Generando nuestra propia base de información

Como acabo de decir, permitir que los usuarios suban vídeos es la mejor forma de tener contenidos propios. Pero también podemos hacer nuestros aquellos vídeos publicados en otras fuentes. No nuestros de propiedad, eso está claro, me refiero a romper la dependencia con esa fuente ajena de la que leemos. Imaginad que MTV un día deja de ofrecer ese web service al que recurrimos para enseñar el vídeo de X artista. O que se cae el servicio. O simplemente queremos cachearlo en nuestro servidor. Sea el motivo que sea, sería bueno generar una base propia de la que tirar. También es posible que el usuario quiera descargar el vídeo en cuestión, podemos ofrecerle la opción sin que necesite un plug-in en su navegador. Existen pequeños scripts que hacen esta función, como PHP YouTube Downloader.

Vamos por pasos. Ambos casos, es decir, descargar el vídeo desde su fuente original y ofrecer al usuario la posibilidad de su descarga requieren que conozcamos la URL origen del vídeo, es decir, la ruta absoluta del archivo. En el caso de YouTube no es muy evidente a partir de una URL típica (esa es la intención). Pero los web services sí nos la proporcionan. En otros servicios como el de MTV también tenemos esa ruta completa, pero no en todos. Mis recomendaciones al respecto son estas:
  • Guardar los vídeos cuando exista una justificación: muy populares, con muchas visualizaciones, difíciles de encontrar o colgados de forma temporal. También cuando la fuente no es especialmente estable o susceptible de desaparecer.
  • Aunque cacheemos el vídeo, es decir, tengamos una copia en nuestro servidor, no servir nosotros el vídeo. Sólo en el caso de que la fuente original no esté disponible. Con esto evitaremos consumir tráfico innecesariamente. Si MTV aloja un vídeo y lo pone a disposición de otros servicios para ser mostrado, ¿por qué voy yo a servirlo desde mi hosting? Aprovecharé el suyo, que seguro es mejor... ¡y para eso está! Lo mismo se aplica si ofrecemos un link de descarga de ese vídeo. Ojo a los derechos sobre el mismo y las condiciones del servicio, pueden tener restricciones en ese aspecto. Siempre respeta a tu proveedor de contenidos, recuerda que gracias a ellos puedes ofrecer ciertos servicios (si no todos).
El cacheo de datos es un tema del que hablaré más en profundidad en otro post, porque es fundamental. Y no se aplica sólo al vídeo, también la información sobre artistas y su música debería ser guardada, actualizada y mantenida. Cuando mezclamos y filtramos datos de distintas fuentes y empezamos a transformarlo, estamos creando nuestra propia base real de datos, que será responsabilidad nuestra.

Subir vídeos del usuario a nuestra web es más complejo. Seguramente necesitará transformarse (comprimirse o codificarse a otro formato). Y luego están las táreas no técnicas, que son moderar esos vídeos, clasificarlos correctamente, crear las opciones necesarias en el menú de usuario para hacer posible la subida, etc. Aquí hay un tutorial de cómo codificar vídeos usando el programa FFmpeg.

Este tema, adaptar el contenido a nuestra web, es realmente extenso. En esta entrada me he centrado en el vídeo, pero volveremos a ello. ¡Espero que os haya parecido interesante!

1 comentario:

  1. Eres un crack! Gracias por todo el tiempo que has dedicado en explicar, de manera comprensible para el usuario, todo esto :)

    Disfruta de California!

    Un saludo, Luis

    ResponderEliminar

Gracias por comentar en OchoNotas (EightNotes.org)