09 enero 2008

Cómo sacarse unas perrillas con software libre... sin tener que programar

Dinero, la fuerza que mueve el negro y gordo culo de la humanidad en nuestros días. Y lo que hay que sudar para ganarlo cuando eres, como yo, un currantillo de clase media-baja.

Es difícil vivir con poco dinero, es obvio, y mucho más difícil es ser geek con poco dinero, que los gadgets cuestan mucho. Digo yo, ¿Quién se gasta 300 euros en un reproductor de música portátil? Pues alguien a quien le sobre el dinero o un geek. O un geek al que le sobre el dinero. Bueno, no, ese se compraría uno bastante más caro. A lo que quiero llegar es a que cuando el mileurismo no es tu problema para llegar a fin de mes sino algo que todavía está sin tachar en tu lista de objetivos, realmente necesitas una fuente secundaria de ingresos, lo que nos lleva al título del post. Ganar algo de dinero con el software libre sin tener que escribir ni una sola línea de código. Hay más formas, pero esta es una de ellas.

Dejándome de rodeos, se trata de oferta y demanda. Cada vez más gente tiene cámaras de vídeo domésticas, de las cuales, hoy en día las más baratas, y a mi juicio la mejor elección, son las que graban en cintas miniDV. El problema para sus usuarios radica en la falta de conocimientos técnicos. Vamos, que para grabar y hacer zoom, la mayoría casi tienen que hacer un cursillo.
Esto nos deja con un escenario donde los usuarios tienen cintas grabadas y ni puta idea de cómo reproducirlas fuera de la pantallita de 3 pulgadas de la cámara. Podrían enchufar la cámara al televisor, pero eso es demasiado complicado y, ¿para qué vamos a engañarnos? es un coñazo tener que hacerlo cada vez que quieren enseñarle el vídeo a su prima la gorda.

La solución es pasar el vídeo a DVD, pero, una vez más, no tienen ni idea de cómo hacerlo. Oferta y demanda, oferta y demanda. ¡Por todos los tentáculos del Monesvol, estoy hablando como si fuera un neoliberal! No, en serio, la verdad es que si tienes los medios y los conocimientos, puedes cobrar por el servicio. A ellos les facilitas la vida y tú obtienes un pequeño ingreso extra. Mola.

Para ello solamente necesitamos:
  • Un PC que no sea muy viejo (volcar y comprimir vídeo necesita una cantidad importante de recursos, como veremos más adelante).
  • Un puerto FireWire (IEEE 1394, para los pedantes) en el PC.
  • Una cámara de vídeo miniDV (a ser posible que funcione, facilita mucho las cosas).
  • Un cable FireWire para conectar la cámara al PC.
  • Una distribución de GNU/Linux más o menos reciente (en mi caso, openSUSE 10.3)
  • El programa Kino y por supuesto sus dependencias, que no será difícil encontrar en los repositorios.
  • Una grabadora de DVD, un disco virgen (preferiblemente importado para no pagar canon, especialmente injusto para este trabajo) y un programa para grabarlo, por ejemplo K3B, que es dios (con permiso de su fideeza).
Y yo creo que eso es todo. Pero este post se quedaría en poco si no explicase al menos un poco el proceso ¿no? Pues venga...

Lo primero es conseguir clientela, que casi viene a ser el paso más complicado y lo peor es que depende de ti. No, amigo, el Tío Rubo no va a salvar tu culo esta vez (leer esto último con voz de macho muy macho).
Una vez consigas que alguien te confíe sus cintas con momentos íntimos y familiares, cosa que yo consigo con amabilidad y cara de niño bueno pero en tu caso puede que funcione mejor una navaja automática, lo primero es cerciorarte de que podrás pasar esa cinta. ¿Por qué digo esto? Porque según mi experiencia, algunos modelos de cámaras graban en un formato "raro" que mi cámara no reproduce, y otras personas más descuidadas, directamente te darán una cinta sucia o deteriorada que no se ve ni en la cámara en la que fue grabada.
Lo más habitual es que no haya problemas, pero asegúrate probando la cinta en tu cámara.

El proceso de conversión es bastante sencillo, aunque lleva su tiempo, aumentando en función de la duración del vídeo, la calidad de desentrelazado que quieras aplicar al vídeo resultante y, por supuesto, es inversamente proporcional a la potencia de tu PC.

El primer paso consistirá en conectar la cámara al ordenador con el cable FireWire, proceso que, si has llegado a este punto del post sin ayuda, estoy seguro de que serás capaz de resolver sin problemas. Luego abrimos el Kino, aplicación sencillita donde las haya y que a su margen derecho tiene una serie de pestañas bastante evidentes, siendo la segunda de ellas "Captura". Como ves, la gente tiene razón cuando dice que GNU/Linux es difícil.


Abajo encontramos un campo donde deberemos introducir la ubicación y el nombre de los archivos resultantes del volcado de la cinta. Por ejemplo, no estaría mal que dentro de tu carpeta personal creases una carpeta llamada "DV", o si quieres despistar, también le puedes llamar "tetas" o algo así. Pulsando en el iconito de la carpeta a la derecha nos encontraremos un diálogo en GTK al que los usuarios de GNOME están más que de sobra acostumbrados, así que sigamos adelante, que no tiene ningún misterio.
En mi caso dentro de la carpeta DV suelo crear una subcarpeta por cada proyecto y en caso de que el proyecto conste de varias cintas, creo una subcarpeta más por cinta. Esto es debido a que Kino va generando varios archivos a lo largo del proceso de volcado, por lo que es conveniente tenerlos más o menos organizados. Por ejemplo, para la segunda cinta de mi último proyecto, la ruta es la siguiente:
/home/tiorubo/DV/Cliente/2/captura
Eso es todo lo que necesitamos para empezar con el volcado. Pulsamos el botón "Captura" y Kino se encarga, si todo está bien hecho, de poner en marcha la cámara y comenzar el volcado.

Nota 1: En el caso de mi cámara, para que Kino pueda controlarla remotamente, la pantalla lateral debe estar cerrada. Esto fue frustrante las primeras veces, en las que yo no entendía por qué los botones de control de la cámara en el programa se negaban a funcionar. Comprueba también que la cámara está encendida y en su modo de reproducción.

Nota2: Volcar vídeo es un proceso muy estresante para el disco duro. Asegúrate de que tu disco duro es rápido y de tener mucho espacio libre. Volcar 60 minutos de una cinta en modo SP puede ocupar aproximadamente 12 gigas y medio, y 90 minutos en LP, casi 20. Luego no digas que no aviso.

Una vez completado el volcado, que tardará el tiempo que dure la cinta a no ser que lo detengas antes, sería una buena idea guardar el proyecto, no vaya a ser que la líes. Así que vas a tu carpeta DV, o como quiera que la hayas llamado, y en un alarde de originalidad, guardas el proyecto con un nombre al estilo "cinta1.kino".
El archivo generado es un xml con las instrucciones acerca de la ubicación de los archivos y su posición en el proyecto, poco más. No contiene el vídeo en sí.

Luego ya está en tu mano jugar con el programa para editar el vídeo. Yo suelo limitarme a quitar los clips basura que a veces generan las cámaras y a recortar los espacios vacíos, que identificarás porque al ver el vídeo, hay un buen trozo con una imagen estática. Esto es porque el Kino rellena ese espacio con el último fotograma capturado antes de llegar a ese punto.

Nota: En el panel izquierdo de Kino, la intuición probablemente te lleve a seleccionar un clip y pulsar la tecla "suprimir" cuando quieres eliminarlo. Esto no funciona, así que en su lugar, pulsa el icono de "cortar" en la barra de herramientas de arriba.

Para cuando acabes de jugar con el vídeo y quieras exportarlo a DVD, ya te habrás dado cuenta de la existencia de la pestaña etiquetada como "Exportar". En su interior encontraremos más pestañas, pero la que realmente nos interesa es la que pone MPEG (como probablemente sabrás, el formato de vídeo de los DVDs es MPEG2). Casi todo lo que tenemos aquí es autodescriptivo. Arriba elegimos dónde guardar el resultado y cómo llamar a los archivos generados, y debajo nos interesa seleccionar como formato de fichero, DVD.

La opción de desentrelazar es importante y determinará en gran medida el tiempo que tardará el programa en convertir el vídeo a un formato apto para grabar en DVD. Si tu procesador no es muy potente o tienes prisa, lo mejor es seleccionar "desentrelazado interno", y aún así tardará lo suyo. Si el vídeo tiene mucho movimiento y/o eres exigente con la calidad, "desentrelazar YUV" es una opción más recomendable.
Más abajo tenemos "salida XML para DVDauthor". Yo suelo dejarlo en "Create DVD-video (dvdauthor)", por si luego se me diese por utilizar alguna aplicación basada en dvdauthor, y daño no hace.
Para terminar (o más bien para empezar a comprimir, le damos a "Exportar"), y ahora más vale que te busques algo que hacer en lugar de quedarte mirando la barra de progreso, porque va a tardar. Mucho. Horas. Supongo que mis MJPEG-tools no están optimizadas para procesadores multinúcleo. Si fuera así, me ahorraría un ratito.

Nota 1: En mi caso, comprimir 2 horas de vídeo con desentrelazado YUV requiere más de 7 horas de proceso (y tengo un Core 2 Duo e6750).

Nota 2: Desde que me actualicé a la última versión de Kino, no me funciona el desentrelazado YUV y la versión anterior ya no está en el repositorio de Packman. Puede que en tu caso tengas más suerte. No sé si es un bug del programa o un problema de la compilación que yo estoy usando.

Vale, ya estamos acabando. Si todo sale bien sólo faltará grabar el resultado en un DVD y para eso tenemos a nuestro amigo K3B. Creamos un nuevo proyecto de DVD-video y a él arrastramos las carpetas AUDIO_TS Y VIDEO_TS que nos ha generado el Kino donde le habíamos dicho. Fíjate que solamente la carpeta VIDEO_TS tendrá contenido. Mira dentro y asegúrate de que se han generado los archivos .IFO y .BUP. De lo contrario si grabas el disco tal como va, solamente con los archivos .VOB, no podrás ver el disco en un reproductor doméstico.
Grabamos el disco y listo. Se lo das a tu cliente y lo mejor es que puedes cobrarle por un trabajo que no es precisamente el colmo de la dureza. Cuánto le cobres dependerá de ti. No seré yo quien te ponga guías en ese sentido. Baste decir que a mi me cunde, sin llegar a sentirme como un atracador. Si las primeras veces que vas a cobrar a alguien por este trabajo tienes dudas de si le parecerá mucho o poco, puedes fingir que fue un trabajo realmente complicado para dar penita.

Creo que esto es todo. Por cierto, este post lo he escrito desde el trabajo con el ordenador de casa utilizando NX. En un post futuro hablaré de esta tecnología, que es realmente interesante.

Saludos!

P.D.: En caso de duda, no os cortéis en preguntar =)

2 comentarios:

carlosbcn dijo...

La verdad es que el tema propiamente dicho no es que me interese demasiado, de hecho nada porque no tengo cámara de vídeo ni me veo futuro en el negocio de la conversión de soportes audiovisuales :-| , pero hay que reconocer que te has currado este pedazo de explicación/tutorial! Intuyo que más de uno que se vea en esa situación, lo agradecerá.

Tío Rubo dijo...

¿A que mola cuando te comentan los posts en plan bien? Que sepas que desde tus posts sobre las preguntas de las entrevistas de trabajo, estás en mi lector de feeds :)