Notxor tiene un blog

Defenestrando la vida

Videotutoriales

2021-07-02

A veces podemos tener la idea de que las cosas entran por los ojos y un buen vídeo nos puede ahorrar muchas explicaciones. Esto puede ser cierto y falso a la vez. No voy a entrar en muchos detalles, porque creo que se verá de manera muy sencilla qué es lo que quiero expresar con una serie de proyectos que estoy realizando. Se verá que cada cosa tiene sus ventajas y sus inconvenientes y que es posible que lo que es bueno para mostrar un proyecto no lo sea para mostrar otro. Se trata de los siguientes temas.

  1. Realizar un vídeo con mi forma de trabajar con Emacs.
  2. Trabajar en un proyecto de programación, convirtiendo un proyecto incipiente en programación literaria.
  3. Ver si es posible realizar algunas de las entradas del blog en forma de vídeo utilizando las herramientas a mi disposición:
    • ffmpeg
    • OBS
    • kdenlive
    • audacity
    • screenkey

Entre los posibles inconvenientes está que mi aterciopelada voz no se presta para ser grabada y mi incapacidad de aclararme conmigo mismo sobre la marcha impiden que la captura del audio sea fresca. Para eso siempre recurro a escribir lo que pienso, porque decir, digo muchas tonterías. Aún teniendo el guión escrito, me encuentro con algunos impedimentos técnicos derivados de lo justo que es mi equipación para realizar estas tareas.

Captura de pantalla con ffmpeg

De primeras pensé en hacerlo al estilo yutuber pofesioná capturándolo todo con el OBS Studio mientras trabajaba. No hubo manera de hacerlo correctamente. Aunque en el vídeo final hay algún trozo capturado con OBS la mayoría del mismo está capturado con ffmpeg utilizando el comando:

ffmpeg -f pulse -i default -f x11grab -framerate 10 -i :0.0 -q:v 5 fichero-video.mp4

Viendo que mi tarjeta de sonido hace ruido como para ocultar el despegue de un reactor, eliminé la captura del sonido:

ffmpeg -f x11grab -framerate 10 -i :0.0 -q:v 5 fichero-video.mp4

Esta captura es directa y tendrá la resolución que tenga configurada la pantalla. En mi caso, las X tienen una resolución de 1920x1020 y a esa resolución quería el vídeo, para que el texto se leyera con facilidad.

La captura se realiza además activando el programa screenkey para mostrar qué teclas, y qué botón del ratón, voy pulsando mientras trabajo. Esto facilitará mucho las explicaciones, porque podemos obviar los listados interminables de las combinaciones de teclas.

Ventajas e inconvenientes del videotutorial

Todo lo que se me ocurre como ventaja es que es más visual, ese sería su principal punto a favor. Se ve cómo se trabaja de forma directa, qué teclas se pulsan y qué reacciones tiene Emacs. Para alguien que se inicia en el uso de este editor es posible que vea que el trabajo es tan fluido como con cualquier otro editor y se anime a probarlo más a fondo.

Como digo, eso, quizá, sea su único punto a favor... el resto me he encontrado con un montón de inconvenientes. Los enumero y explico algunos:

  • Tenéis que soportar mi aterciopelada voz (podría ser considerado como tortura en algunas culturas, lo sé).
  • El flujo de trabajo se me hace muy raro y farragoso (con lo fácil que es escribir y ya).
  • Estoy limitado por el equipo con el cuento (soy pobre, os recuerdo que podéis donar para comprar nuevo equipo si os molan los vídeos).

Quizá el flujo de trabajo sea raro también, por una cuestión de potencia del equipo con el que trabajo. Mi ordenador es un portátil con un intel i5 y 4Gb de RAM de hace 11 años. El tema de gráficos y proceso de sonido le vienen a estas alturas ya un poco justos, por no decir cuesta arriba.

Como habéis visto antes la captura de vídeo la he hecho principalmente con ffmpeg capturando a 10fps. Para ver cómo evoluciona el texto sobre la pantalla es suficiente. Lo he hecho así por la imposibilidad, o desconocimiento, de cómo conseguir la misma resolución con OBS. Este programa se empeña en comprimir el vídeo y en algunos momentos el texto se hacía ilegible. Sin embargo, lo he utilizado a la hora de capturar las pruebas del código en el entorno gráfico. OBS sincroniza bien el sonido con la imagen, sin embargo, al intentar hacer la captura más precisa con ffmep el sonido se capturaba con 1,5 segundos de retardo, aproximadamente. Probé un montón de parámetros para hacer la captura y después de perder mucho tiempo, me decidí a capturar esa parte con OBS.

Capturar vídeo con ffmpeg y OBS y sonido con Audacity es lo de menos: luego hay que montarlo todo y para eso utilicé kdenlive. Juntar todas las pistas con un poco de coherencia supongo que será cogerle el tranquillo al programa. El problema es que al generar el vídeo tengo limitadas las posibilidades. Me he tenido que pelear con los programas para conseguir la resolución que quería. Además de tener que reducir la calidad, el tiempo que tarda en generar el vídeo, bloqueándome cualquier otro trabajo, es enorme.

El principal problema con el sonido es la falta de aparatos solventes. Toda la grabación de voz se realizó con unos auriculares con micrófono. Sin embargo, el hardware produce tanto ruido que posteriormente, con audacity debía pasarle a la pista varias veces el filtro de reducción de ruido para conseguir algo decente. El resultado es que la voz parece estar metida en una cueva. Aunque aún presenta ruido que ha sido enmascarado por una bonita melodía de fondo.

Flujo de trabajo

Mi expectativa era poder grabar el vídeo mientras iba haciendo el trabajo. Como mucho al final sería cortar y pegar con kdenlive y todo sería fácil, pero no ha sido así.

Primero, al capturar con OBS me encontraba que se empeñaba en comprimir el vídeo y estropeaba la visualización del texto en pantalla. También intenté capturar el vídeo con ffmpeg, reduciendo los fps. El problema de la captura en directo es de mi hardware de sonido, el problema de visualización del texto se puede solventar con unas fuentes más grandes, pero el ruido parásito de la tarjeta de sonido, no.

Por todos esos impedimentos, al final se desechó todo el sonido grabado a la par que el vídeo y se grabó uno específicamente para sustituirlo. La captura del sonido la he tenido que hacer, además, en varias sesiones. Necesitaba la casa en silencio, así que aprovechaba cuando la familia dormía, el perro del vecino no ladraba, las tórtolas no se llamaban unas a otras, el camión de la basura no pasaba y, en fin, cuando encontraba un poco de paz y sosiego para hacerlo. Si en el vídeo, en algunas ocasiones, os parece que estoy susurrando, es que efectivamente estaba susurrando porque cuando lo grabé todo el mundo dormía. Ya lo siento.

Una vez registradas las imágenes y el sonido, hay que montarlo en el vídeo. La herramienta elegida ha sido kdenlive como ya he dicho antes y soy muy novato en estas lides. Se puede apreciar que ni siquiera he sido capaz de alinear bien los títulos generados. Tiene tantos pichorros que me pierdo muchas veces y aunque sé lo que quiero conseguir no sé muy bien cómo hacerlo.

Resultados

El resultado producido por el vídeo se puede ver en el repositorio del en codeberg y el vídeo es éste:

O directamente en peertube:

https://video.nogafam.es/videos/watch/0c166161-8d59-4a48-9c87-feb55bb38c46

Conclusiones

Con el vídeo soy menos productivo, no creo que pudiera mantener un ritmo regular de publicar. Que no es que publique mucho, pero escribir un post me lleva unas pocas horas, mientras que editar el vídeo me lleva unos cuantos días. Además la falta de material adecuado: un ordenador más potente, una tarjeta de sonido decente, un micrófono adecuado, un espacio insonorizado que me permita grabar cuando quiera y no cuando pueda, etc.

Ya me contaréis que os parece el experimento. Yo he visto el vídeo ya unas cuantas veces mientras lo montaba, lo editaba y lo publicaba; seguro que más fallos y pegas que le he encontrado yo ya no le vais a encontrar. Pero ahí queda como referencia a superar en los próximos vídeos (que viendo cómo ha quedado, es fácil hacerlo)

También aprovecho para agradecer a https://nogafam.es por proporcionarme el espacio para alojar el vídeo de pruebas.

Categoría: tutorial video emacs

Comentarios

Debido a algunos ataques mailintencionados a través de la herramienta de comentarios, he decidido no proporcionar dicha opción en el Blog. Si alguien quiere comentar algo, me puede encontrar en Mastodon y en Diaspora con el nick de Notxor.

También se ha abierto un grupo en Telegram, para usuarios de esa red.

Disculpen las molestias.