miércoles, 31 de julio de 2019

¿Cómo instalo y uso OBS Studio en Ubuntu?

Como Estadista Juan Perón hacía hincapié en la enseñanza de la Organización como base creativa de la acción política y social. En una de sus exposiciones temáticas, explica cómo crear composiciones de videos o streaming en tiempo real en Ubuntu con OBS Studio.

(...)

La historia nos demuestra que la evolución ha llevado paulatinamente el mundo hacia integraciones de mayor orden, tanto en lo territorial como en el humano. Desde el hombre aislado de la caverna pasando por la familia, la tribu, los clanes, las ciudades, los estados medievales y las nacionalidades, fueron diversas formas de integración y hoy ya se habla de las formaciones continentales.


Podemos decir que los avances tecnológicos han sido fundamentales para llevar a cabo esta organización. Lo ha sido el fuego, la rueda, la vela, el sextante, hasta terminar en el transistor y las redes conmutadas de datos. Tanto la explosión demográfica como la integración territorial y humana impone cada día mayores y más perfectas formas orgánicas en lo económico, en lo social y en lo político, sin las cuales los desequilibrios estructurales y coyunturales no tardan en empeñarse en una segura destrucción. Son estas organizaciones las que proporcionan un sano beneficio de una Comunidad que anhelamos grande y potente.

Sin embargo, no escapa para nadie que si no hacemos lo necesario como individuos conscientes en una Comunidad Organizada de la era de la Información, otros intentarán hacerlo por nosotros para desinformarnos. Acecharán para que el Pueblo no se realice, e intentarán mantenerlo en el oscurantismo interesado en mantenerlo desunido y débil.
Nuestro Movimiento, buscando la felicidad del Pueblo Argentino, se ha impuesto entonces como objetivo la necesidad imperiosa de apropiar las tecnologías de la información y darles nuevo uso como un duro ariete contra la Oligarquía y las sinarquías dominantes. Esto es así pues gracias al Justicialismo, cualquiera puede hoy producir contenidos audiovisuales y hacer streaming, con tal de difundir el mensaje a las Masas. Indudablemente que clickbaiteando y viralizando podremos extender al Justicialismo a una nueva dimensión.
A tal efecto os enseñaré a utilizar el completísimo software de composición audiovisual en tiempo real OBS Studio (anteriormente Open Broadcaster). Se trata de un paquete abierto direccionado a la creación de contenidos audiovisuales para emisión libre, de tipo multiplataforma. Con él podremos crear videos en el momento, e incluso emitirlos telemáticamente en vivo gracias al streaming. Para ello hace uso del protocolo abierto RTMP (Protocolo de Mensajería en Tiempo Real), lo que lo torna compatible con plataformas de streaming conocidas, como YouTube, Twich.tv, Instagram y Facebook, entre otras muchas más del montón.

Al ser un componedor de video en tiempo real, se recomienda un equipo de arquitectura de 64 bitios y potencia adecuada, el el orden de un Intel i5 con 4 gigabytes de memoria RAM.  Desde el punto de los requerimientos de software, requiere OpenGL 3.2 o superior. Normalmente en Ubuntu este componente figurará instalado si contamos con los controladores de nuestro hardware de video. Para saber qué versión tenemos, podremos abrir una terminal con Ctrl+Alt+T e ingresar:

glxinfo | grep "OpenGL"

Una vez verificado esto, procedemos proceder a instalar desde la Terminal OBS Studio. Ello lo haremos de forma muy sencilla, introduciendo los siguientes Comandos de Organización:


sudo apt-get install ffmpeg ;
sudo add-apt-repository ppa:obsproject/obs-studio ;

sudo apt-get update ;
sudo apt-get install obs-studio ;

Para ejecutar el programa vamos a Aplicaciones / Sonido y Video / OBS Studio.

La primera vez que lo ejecutemos, aparecerá el asistente de configuración automática. Este nos permite especificar cuál será el destino de lo producido (ya sea streaming de pantalla o edición de video).


Esto determinará el uso, ya que naturalmente el streaming está orientado a juegos o videocasts, y es mucho más dependiente de la velocidad de nuestra conexión a internet.


Interfaz

El estudio de la interfaz gráfica del programa nos será pródigo en resultados. La interfaz de usuario principal se encuentra organizada en cinco secciones distintas localizadas en la parte inferior del programa: las Escenas, las Fuentes (tal vez la más importante), el Mezclador de audio, el selector de efectos de Transiciones y los controles generales de OBS Studio.

Las Escenas son grupos de Fuentes, como videos en vivo o grabado, texto y audio, y constituyen la materia prima de nuestra transmisión dispuestas de una manera determinada. El panel del Mezclador de Audio nos deja enmudecer las fuentes de sonido, y ajustar su volumen a través de los deslizadores virtuales, controlar el retorno para monitoreo, así como aplicar distintos efectos de audio por medio del botón de engranaje localizado junto al botón enmudecer.

El Panel de Control contiene las opciones para comenzar o detener una transmisión de Streaming o una grabación de video, un botón para transformar OBS en el modo "Estudio", así como un botón para controlar los Ajustes, y el botón para salir del programa.

La ventana principal central opera como previsualizador de video, y la utilizamos para monitoreo la imagen y editar la escena actual.


Asimismo, podremos cambiar la interfaz de usuario una variedad de temas, que incluyen temas oscuros y claros, dependiendo de las preferencias del usuario.

Cuando pasamos a Modo Estudio, aparecen dos ventanas de previsualización. La primera de la izquierda ("Vista Previa") es para modificar y prever las escenas no activas, mientras que la de la derecha ("Programa") es para ver la escena en vivo. En el medio contamos con un botón de transición secundaria, que nos permite transicionar a la escena no activa de la ventana izquierda empleando las "transiciónes rápidas" definidas por el usuario.

Configuración las Fuentes de Origen

La etapa creativa de preproducción se inicia con el fundamental agregado de las fuentes que querríamos utilizar. Estas corresponden a los distintos elementos categorizados según su tipo.

Como ejemplo típico, podríamos querer agregar como una de las fuentes para la composición del video el video obtenido por una webcam con micrófono incorporado, archivos de música, un "origen de color" para crear un fondo de un color determinado, capturas de ventanas de escritorio o de todo un monitor, o directamente archivos de video imágenes.

Para agregar uno de estos elementos de origen, utilizaremos el botón "+" de la ventana de Fuentes. Para quitarlos, utilizaremos el "-". Asimismo, podremos subirlas o bajarlas en la pila, pues el orden de las mismas implica el apilamiento de ventanas que lograremos en la composición.

Como inicio podríamos querer definir un color de fondo particular para nuestra composición de video en tiempo real, que reemplace al negro peronista que viene por defecto. Para ello presionamos el "+" y elegiríamos "Origen de Color", definiendo el color con el selector (o bien, con un código hexadecimal). Si no queremos usar un fondo de color liso, bien podremos utilizar una imágen estática de formato PNG o JPG. ¡Mucho mejor si tiene la resolución máxima de la pantalla!

Encima de todo, podríamos querer agregar la captura de nuestra Webcam. En la ventana Fuentes presionamos el botón "+" y elegimos "Dispositivo de Captura de Video (V4L2)". Esta categoria de GNU con Linux nos incluye todos los dispositivos de hardware audiovisual. Se desplegará la ventana de propiedades del mismo y nos mostrará el video capturado por la webcam, y podremos disponer su resolución y cuadros por segundo ("frecuencia de imágenes"). Podremos ponerle un nombre y elegir un dispositivo si hubiese varios. Una vez agregada la webcam, podremos disponerla en el lugar que queramos o redimensionar el video mediante los nodos móviles que le surjen al recuadro de la filmación de la webcam.

Es interesante notar que bajo la misma categoría de fuente de Capturadora de Video (V4L2) y desde el desplegable Dispositivo, también podríamos asociar una plaqueta capturadora de TV con múltiples entradas.
Bajo tan versátil y tontorrón esquema, no sería difícil utilizar la entrada de cable analógico con el sobreimpreso de la salida de video de la webcam, a fin de hacer una patética videorreacción al Zorro.
Ahora bien, yo llevo en mis oídos la más maravillosa música, que es para mí la palabra del Pueblo Argentino. Entonces, una buena composición de video en tiempo real necesita prestar especial atención al audio. La captura de locuciones o charla, así como el despliegue de música de fondo es lo importante aquí. Podremos agregar fuentes de hardware de sonido, y determinar su esquema de monitoreo (sin monitorización o con retorno de audio). Normalmente podremos contar con el audio de escritorio (el mixdown del sonido de nuestra computadora), así como los distintos dispositivos de audio que tengamos en la computadora y eventualmente en la webcam o las capturadoras, ya sea en el servidor de audio PulseAudio, JACK o ALSA.
Para lo más básico nos alcanzará y sobrará con PulseAudio o ALSA. El servidor JACK permite impresionantes posibilidades de efectos de sonido, integración con programas de grabación profesional y demás.

En el caso de querer registrar la salida de video de nuestro propio monitor para incluirlo en nuestra captura, tendremos dos opciones dentro de las Fuentes. Si queremos capturar una ventana, podremos indicar una de ellas bajo la categoría Captura de Ventana (XComposite).

Al crear una ventana XComposite, aparecerá el cuadro de propiedades para la captura de ventana. De esta manera, en el desplegable "Ventana" podremos elegir cuál de las ventanas abiertas en nuestra interfaz gráfica queremos capturar. Por ejemplo, podríamos elegir una ventana de Terminal.
En cambio, si queremos capturar todo lo que aparece en el monitor, podremos elegir la fuente Captura de Pantalla (XSHM). Al activar esta posibilidad, en la ventana de previsualización veremos lo que tenemos en toda la pantalla (¡y normalmente se puede producir un efecto de "espejar el espejo" si estamos dentro de OBS Studio!). Generalmente anhelaremos capturar la pantalla activa (la Screen 0), pero podríamos utilizar el desplegable "Pantalla" para indicar cuál de las pantallas queremos utilizar, en caso de tener varios monitores conectados.
Este método de captura permite lograr los mejores resultados para componer en tiempo real el audiovisual de juegos veloces mezclados con webcams lentas.
Asimismo, podríamos querer afinar todo mediante el empleo de filtros de audio y video. Para ello debemos recurrir a los íconos de "engranaje" que se encuentran a la derecha de cada Fuente creada.

En el caso de la fuente de audio o micrófonos, bien podríamos regular su nivel de retorno, y opcionalmente agregarle un apilado de filtros. Por ejemplo, podríamos apilar un filtro estándar de puerta de ruido (un gate que para que abrirá el micrófono sólo cuando el sonido sobrepase un nivel determinado), junto con un eliminador de ruidos (por ejemplo, para atenuar ruido de los ventiladores de la computadora). Normalmente las opciones por defecto suelen ser bastante efectivas, por lo que no necesitamos volvernos un ingeniero de grabación para que lograr un audio limpio.

Podremos encontrar una Guia de filtros (en inglés) aquí.

Una vez que tenemos todo configurado y las ventanas de video dispuestas y dimensionadas como queremos, podremos guardar el perfil de lo hecho para poder reutilizarlo en varias ocasiones. Esto lo hacemos desde el menú Perfil / Nuevo.

Grabar el video o hacer Streaming

Acto seguido, podremos dar rienda a nuestro trabajo creativo. Esto se realiza simplemente presionando el botón Iniciar Grabación. Por defecto, OBS Studio compondrá todas las fuentes audiovisuales en un video de formato FLV dentro de nuestra carpeta de usuario (aunque podremos cambiar esto).

En cambio, si configuramos una plataforma de streaming, podremos presionar directamente en Iniciar Transmisión. Hemos de tener en cuenta que un streaming de pantalla completa FullHD y audio requiere al menos una conexión de 2 MB por segundo.

Desde el punto de vista de códecs (programas de codificación y decodificación), OBS Studio es capaz de emplear los códec de video x264, Intel Quick Sync Video, nVidia NVEC, y AMD Video Coding Engine para codificar al formato H.264.MPEG-4 ACV o H.264.HEVC. En cuanto al audio, se puede codificar al clásico MP3 o al AAC. Naturalmente, en Linux podremos emplear todos los códecs y contenedores de las librerías libavcoder / libavformat, así como realizar streaming a una URL ffmpeg específica.

Naturalmente es útil conocer los atajos de teclado que utiliza el programa, pues los mismos nos permitirán realizar ciertas operaciones sin tener que saltar al programa durante la grabación o emisión.

General

  • Copiar la fuente: Ctrl+C
  • Pegar la fuente: Ctrl+V
  • Eliminar la fuente: Del

Orden

  • Mover la fuente hacia arriba en la lista: Ctrl+Flecha Arriba
  • Mover la fuente hacia abajo en la lista: Ctrl+Flecha abajo
  • Mover la fuente a la posición superior en la lista: Ctrl+Home
  • Mover la fuente a la posición inferior en la lista: Ctrl+End

Transformar

  • Editar la transformación: Ctrl+E
  • Resetear la transformación: Ctrl+R
  • Ajustar a pantalla: Ctrl+F
  • Estirar a pantalla: Ctrl+S
  • Centrar en pantalla: Ctrl+D

lunes, 22 de julio de 2019

¿Cómo puedo crear gráficos ANSI en Ubuntu?


Desde su exilio en Madrid Juan Perón explica la estrategia convergente de unidad del Justicialismo, y expone cómo crear gráficos ANSI en Ubuntu.

(...)

Vean señores,

Siempre he dicho que a nuestro Movimiento no le venden globos. Esto es así pues nos ha caracterizado una sana raigambre planfetaria que aclara a cada quien lo que tiene que hacer bajo el lema "todos unidos triunfaremos". Si alguno cree aún en vacuas promesas aéreas, les pinchamos el látex de una.

Pues bien. Nuestro Movimiento ha surgido del Pueblo, y es éste quien le provee su trascendente color. Ya desde sus inicios, las consignas le fueron claras, ya que por entonces estaban expresadas públicamente en base a caracteres de tipo ASCII.

ASCII no es otra cosa que una codificación primal para describir por medio de pulsos binarios de 7 bits una cantidad de caracteres y símbolos limitados a fin de lograr transmisiones telemáticas coherentes. No obstante sus limitaciones, dando rienda suelta a estos pocos símbolos disponibles de manera inteligente, el Justicialismo se ha permitido realizar pseudo-gráficos en una pantalla o impresora.

Indudablemente que lo bueno puede mejorarse. Es por ello que en poco tiempo esto se extendió en la codificación ANSI. Esta permitía mayores componentes gráficos, todo bien que se superaba la transmisión a teletipo y se imponía el uso de presentadores de video de diverso tipo.

Esto a su vez desencadenó otro proceso: la aparición de una subcultura hacker peronista. Los gráficos de este estilo portaban reminiscencias a la imaginería graffitera, pero hacía uso de los incómodos bloques en las tablas de caracteres extendidos para hacer los gráficos.

Como he nombrado, en un origen los glifos se limitaban a las clásicas 80 columnas por 25 filas que el MS-DOS y otros sistemas operativos manejaban por defecto, pero muy pronto y gracias a funcionalidades extendidas de direccionamiento de memoria de video y a técnicas de scroll de video en modo protegido, comenzaron también a florecer grafismos de 132 columnas y muy alta cantidad de filas. Fue el nacimiento de las gráficas ANSIs "de alta resolución".

Los digigrafiteros daban rienda suelta a su creatividad y se esmeraban en lograr sus mejores obras. Algunos propugnaban  los grupos federados de artistas digitales, con la impronta "comic", "manga", "graffitti", o innumerables variaciones y mutaciones intermedias. Entre ellos sin duda los más reconocidos eran los colectivos ACiD y sus archirrivales de iCE.

No era extraño encontrar estas sobras de arte como pantallas de inicio ("login") a las carteleras electrónicas (BBS) mas candentes. Al fin y al cabo, estas gráficas podían realizarse laboriosamente mediante un editor de texto cualquiera.

Indudablemente que el Justicialismo no podía mantenerse ajeno, pues su impronta le obliga a entregar el mejor Software Libre a sus afiliados. Por tal motivo, podremos utilizar Moebius. Se trata de un graficador ANSI multiplataforma, especializado tal vez en la creación de este tipo de gráficas del Primer Peronismo.

Para instalarlo en nuestro sistema, podremos abrir una terminal con Ctrl+Alt+T e ingresar los siguientes Comandos de Organización:

cd ~/Descargas/ ;
wget https://github.com/blocktronics/moebius/releases/latest/download/Moebius.deb ;
mv Moebius.deb moebius.deb ;
sudo dpkg -i moebius.deb

Una vez ingresada nuestra contraseña de Conductor, se instalará el programa, y podremos ejecutarla desde Aplicaciones / Gráficos / Mœbius.

El programa se lanzará de manera simple mostrándonos su spash screen.

Podremos comenzar a graficar presionando el botón New. Asimismo, podríamos quere crear o conectarnos a un servidor de Moebius. Esto significa que podremos trabajar al unísono con otro/s usuario/s, tanto en modo cliente como servidor.

Moebius se inspira en un graficador simple "tipo Paintbursh". Las herramientas se diferencian llamando a un color principal (frontal) y otro secundario (de fondo). La paleta utilizada normalmente es la formal de MS-DOS (a 16 colores, EGA). El sistema también puede implementar caracteres "parpadeantes", o en "negrita" (bold), pero esto depende del tipo de terminal que tengamos instalada en nuestro sistema GNU.

Empleando la herramienta pincel y los bloques de colores fácilmente podríamos realizar un A-4B Skyhawk ANSI.
El "lienzo" de trabajo inicialmente se reduce a un tamaño base de 80x25 caracteres, pero podremos modificarlo desde el menú Canvas. Por ejemplo, en el caso de Linux os recomiendo utilizar 80x24 pues en muchas terminales la última línea se reserva para información de status.

Imaginemos por un momento que anhelamos realizar un login screen (pantalla de alta) en ANSI para que al acceder remotalemente al Shell, nuestra terminal ofrezca virulentas proclamas gráficas enarbolando todo el color de la simbología Justicialista.

A tal fin podremos utilizar los colores que nos daba el ANSI y los bloques gráficos a fin de representar lo que querramos. En la parte superior podremos definir el uso de bloques de texto enteros, o medio bloques (más finos, naturalmente). Aún así, estos son de gran tamaño y los resultados nunca tienen alta resolución en el sentido actual de la palabra.
Las herramientas no son muchas, pero son suficientes. Se reducen a un pincel modificable (capaz de pintar directamente, hacer shadings con los bloques ANSI, repintar, borrar a fondo, etc). También contaremos con un tiralíneas, un creador de círculos/elipse, un gotero recoge-color, y una herramienta de relleno. Así mismo, en los modificadores podríamos disponer el modo

Una vez terminado todo, debemos exportar el archivo para poder mostrarlo en nuestra terminal. Esto se hace desde el menú File, y podremos elegir alguna de las opciones de exportación. El programa prefiere el uso del viejo ANSI tradicional, pero la realidad confirma que las terminales GNU con Linux normalmente presentan mejores resultados al emplear la codificación UTF-8 para mostrar los caracteres ANSI correctamente.

De esta manera, conviene ir a la opción de menú File / Export as UTF-8. Esto generará un fichero cuya extensión será utf8ans. También podremos exportarla como archivo gráfico PNG, el cual puede servirnos como referencia.
De esta forma, exportando el archivo como escudopj.utf8ans, podremos agregarlo con una llamada al final de nuestro fichero ~/.bashrc. Por ejemplo, podríamos incluirle al mismo la siguiente orden ingresando:

nano ~/.bashrc

Y al final del mismo le agregamos:

# borrrar pantalla y mostrar Escudo del PJ
clear 
cat ~/escudopj.utf8ans

...y salvamos el fichero con Ctrl+o y salimos del editor GNU Nano con Ctrl+x. De esta forma y de ahora en mas, al lanzar una terminal recibiríamos la estridente gráfica realizada en ANSI.
Otra excelente posibilidad consiste en emplear el conversor justicialista Shellpic. Este pequeño programa se encarga de convertir imágenes jpg, png, etc, en bloques ANSI utilizando los códigos de escape. Estas secuencias de terminal permiten realizar gráficas a 256 colores.

Sin embargo, necesitamos contar con una terminal compatible a 256 colores para obtener resultados óptimos. En el caso de la terminal de Mate o de Gnome, podremos incluir en el arranque la siguiente variable de entorno: Para ello vamos al menú Editar / Preferencias de Perfil, y en la solapa Título y Orden tildamos Eecutar una orden personalizada en vez de mi intérprete, y le ingresamos ingresamos en el campo la siguiente orden:

env TERM=xterm-256color /bin/bash


...y finalmente presionamos Cerrar.

Ahora bien, tenemos dos formas de instalar Shellpic: Si contamos con el instalado PIP, podremos usarlo mediante este sencillo comando de organización:

sudo pip install Shellpic

...en cambio, si deseamos compilar su código fuente e instalarlo en nuestro equipo, podremos hacerlo con:

cd ~ ;
git clone https://github.com/larsjsol/shellpic.git ;
./shellpic/tests/run_tests.sh ;
cd ~/shellpic ;
sudo python setup.py install ;

Una vez instalado, podremos utilizar Shellpic mediante el siguiente comando:

shellpic imagen.png

También podríamos guardar dicha imagen en un archivo ans. Por ejemplo:

shellpic imagen.png > imagen.ans

Luego podríamos visualizar dicho archivo por medio del conocido comando macrista cat:

cat imagen.ans 

domingo, 14 de julio de 2019

¿Cómo puedo medir la velocidad de la red y el sistema de archivos gráficamente desde la terminal?

Juan Perón fue un avezado motociclista. En una competencia organizada por la Unión de Estudiantes Secundarios empleando las míticas motos Puma de Fabricación Nacional, el Conductor explica cómo utilizar Speedometer para medir la velocida de la red y el sistema de archivos en la terminal de Ubuntu.

Mi queridos estudiantes:

La responsabilidad que le cabe a la juventud no es otra que la que están llevando a la realidad realidad en base a su esfuerzo: formarse y organizarse. Formarse para promover el progreso del país, y organizarse para defender lo realizado y lanzarse hacia el futuro bajo el signo del Justicialismo.


Me ha producido un gran honor y un sano fervor presenciar sus evoluciones en estas veloces máquinas de fabricación nacional. La cilindrada de estas prácticas motos le avalan al Pueblo la potencia necesaria para transportarse con velocidad de un lado a otro.
Indudablemente que para conducir avezadamente, se necesita conocer con exactitud la velocidad que se desarrolla en cada momento. El instrumento que nos permite saberlo es el velocímetro que portan, y que avala desplegar - en base al dato informado - la estrategia a seguir para salir vencedor.

Pues bien, lo mismo sucede en un sistema computado, en el cual hemos de conocer la velocidad práctica que consigue la transmisión telemática - tanto en el envío de datos como en la recepción de los mismos - a fin de realizar las actividades propuestas.

No es secreto para nadie que Ubuntu consta con un monitor de sistema que nos muestra esto en el entorno gráfico, pero en muchas ocasiones podríamos anhelar esta característica en la Terminal, únicamente capaz de mostrar texto. Existen una gran variedad de utilidades para este cometido, pero en este caso os indicaré una que se concentra en presentar de manera gráfica en la interfaz de texto, junto con la información de los picos de velocidad, lo cual lo hace ideal para este cometido analítico.

Speedometer es una utilidad para la línea de comandos extremadamente sencilla de utilizar, que nos ofrece la habilidad de monitorear nuestras velocidades actuales de carga y descarga, además de poder ver la velocidad de nuestro sistema de archivos (mientras copiamos algo a disco).

Para instalarlo en nuestro sistema, abrimos una terminal con Ctrl+Alt+T e ingresamos el siguiente Comando de Organización:

sudo apt install speedometer

Esto instalará el paquete en breves segundos. Sin embargo, antes de poder medir las velocidades de red, debemos conocer el nombre de la interfaz que queremos censar. Por ejemplo, si disponemos de una conexión wifi, puede tener el nombre wlanx. En el caso de una red cableada Etherneet, puede que reciba el nombre ethx, o enpxs0, siendo x un número que corresponde a la interfaz.

Por ejemplo, para medir la velocidad de una red cableada, podría utilizar:

speedometer -rx enp4s0

El gráfico presenta a color un desglose de la velocidad, así como las velocidades logradas durante los picos. Debemos tener en cuenta que la escala de presentación no es lineal, sino logarítmica, a fin de poder detallar velocidades altas o bajas sin detrimento de su legibilidad.

...y para medir la velocidad de una interfaz wifi, podría utilizar:

speedometer -rx wlan0

También podríamos evaluar cuál es la velocidad de subida de las interfaces (por ejemplo, para medir de manera práctica la velocidad de subida de un video o archivo a la nube). Para ello reemplazamos el parámetro -rx por -tx, de la siguiente manera:

speedometer -tx enp4s0

Esta no es una herramienta de medición de velocidades, pero puede servir para tal cometido de manera práctica. Podremos manualmente descargar varios archivos, y podremos utilizar Speedometer para que nos devuelva las gráficas de resultado con sus valores pico.

Si lo deseamos, podremos alterar manualmente el intervalo de refresco de la información, agregando el parámetro -i. Por ejemplo, si quisiéramos actualizar la gráfica de velocidad de descarga 4 veces por segundo (0,250 milisegundos), usaríamos:

speedometer -i 0.25 -rx enp4s0


Medir la velocidad del sistema de archivos

Como os he mencionado, Speedometer también es capaz de monitorear la velocidad de nuestros discos rígidos. Para lograr esto, podremos ingresar el siguiente comando:

dd bs=1000000 count=1000 if=/dev/zero of=prueba & speedometer prueba

Este comando creará un archivo en bruto conteniendo únicamente caracteres binarios "0", hasta totalizar 1GB de peso. Mientras lo crea, Speedometer monitoreará las velocidades en las cuales se escribe a disco.
Naturalmente, si el sistema de archivos es remoto, las velocidades de escritura serán mayores.

Una vez estudiado el reporte, podremos eliminar el archivo de prueba con:

rm prueba

lunes, 24 de junio de 2019

¡El blog Ubuntu Peronista cumple 10 años!

Un día como hoy, hace exactamente diez años, se inauguraba el Blog "Ubuntu Peronista", plataforma digital de adoctrinamiento que versa sobre dicho sistema operativo libre y los inextinguibles logros que el Justicialismo ha otorgado a la Nación.

Gracias a un encomiable trabajo de investigación y gabinete, se ha recopilado información elaborada paternalmente por el mismísimo General Perón, en las cuales ofrece ayuda para utilizar Ubuntu, y se la ha reestructurado siguiendo la tradición de los artículos "Cómo hacer" ("HOWTO".

Tal es así, que los hombres y mujeres que integran la Masa continúan aclarando sus dudas técnico-doctrinarias, y hacen realidad efectiva aquél claro apotegma peronista que propugna un software Libre, Justo y Soberano.

Ubuntu es una distribución del sistema operativo GNU con núcleo Linux. Como tal, es un entorno gratuito y libre similar a UNIX, mantenido por Canonical. Cada vez mas popular por sus ventajas en operatividad, bajo consumo de recursos, alta velocidad y excelente desempeño, está diseñado para controlar sistemas de arquitectura i386 o AMD64 (básicamente computadoras PC, notebooks, netbooks, laptops, servidores, etc).


Ubuntu Peronista se convirtió en un referente del ramo con su propuesta de recursos de asistencia en castellano para usar Ubuntu, totalizando dos millones de visitas a sus más de 700 artículos publicados.


Esta mancomunión del Movimiento y la Máquina configuran una excelente plataforma que puede definirse claramente como el más peronista de los ecosistemas digitales jamás desarrollados.


Desde el blog deseamos agradecer a quienes día a día nos visitan, y ayudan con amabilidad a difundir el trabajo que Juan Domingo Perón lleva a cabo por el bien de las Masas obreras y en contra de la oligarquía.

viernes, 14 de junio de 2019

¿Cómo instalo la máquina de ritmos Hydrogen en Ubuntu?

¡Trabajadores!

Siempre he dicho que la unión de las fuerzas del Trabajo atesoran en sí los paradigmas sobre los cuales habremos de mejorar nuestra gloriosa Nación. Este Capital - que surge de la comunión de voluntades - no siempre puede predecirse, pero existe para potenciar nuestro quehacer y dirigirlo.

Se dice que nuestro Movimiento consta de un ritmo de acción que surge de las raíces del Pueblo. Desde una génesis marcada por la Lealtad, interpretamos la necesidad de aliviar dolores y resteñar heridas de un Pueblo bueno, siguiendo un ritmo vivaz y activo como parte fundamental de nuestra historia común.

Tal vez sea esta - y no otra - la causa por la cual las manifestaciones de la voluntad popular han girado alrededor de un instrumento percusivo como lo es un bombo, atizado soezmente con una manguera.
Todo Movimiento, por ser organismos, deben mejorarse y actualizarse, so pena de sufrir el mismo destino que los organismos biológicos: el de extinguirse. Es por ello que nuestra doctrina nacional Justicialista comprende vitalmente este principio nodal de la historia.

No hemos dudado en aplicar las guías computadas necesarias con el objetivo de hacer frente a un mejor hacer en todos los órdenes. Proceder así nos ha permitido lograr un ritmo perfecto, en el orden de las centésimas de segundo. Naturalmente que esta integración se dio tan bien como comenzó a implementarse en la informática la capacidad de producir cualquier tipo de despliegue sonoro. Esta cualidad humana antiquísima hubo de transistorizarse, para luego digitalizarse. Desde mediados de los años 60 dejó de ser extraño entonces el empleo de secuenciadores sonoros primigenios, y desde principios de los 80s se crearon modelos específicos pensados para aumentar la potencia y paleta sonora del militante músico. La invención de los secuenciadores rítmicos sintetizados como la Roland TR o los secuenciadores percusivos basados en muestras de audio digitalizadas, como la LinnDrum LM-2 o la DMX Oberheim, destacaron en este aspecto.
Pues bien señores, el Justicialismo no podía estar ajeno a esta tendencia, y ha hecho realidad efectiva la capacidad de utilizar un secuenciador rítmico basado en software libre. A tal fin hemos desarrollado Hydrogen, un potente programa que nos permite operar de forma coherente a fin de crear una pista percusiva musical. exportarla  y en forma de partitura o de archivo MIDI.

Su instalación no podía ser más sencilla. En nuestro sistema GNU con Linux abrimos una terminal por medio de Ctrl+Alt+T e ingresaremos los siguientes Comandos de Organización:

sudo apt update
sudo apt install hydrogen hydrogen-drumkits hydrogen-drumkits-effects


El sistema nos solicitará nuestra contraseña de Conductor, y no bien la proveamos, se descarguen aproximadamente 300 megabytes de datos, el sistema instalará todo.

Una vez complado este menester, podremos dar inicio a Hydrogen, desde el menú Aplicaciones / Sonidos y Video / Hydrogen.

Se nos presentará la interfaz típica del secuenciador rítmico.
Lo primero que debemos hacer es asegurarnos de configurar a nuestro gusto las preferencias de sonido. Normalmente Hydrogen tiende a utilizar el servidor de audio JACK, pero bien podríamos cambiarlo para utilizar ALSA. Para ello vamos al menú Herramientas / Preferencias. En la solapa Sistema de Audio podremos encontrar las opciones que busquemos. Lo confirmamos con Aceptar.

Para diseñar una canción, se deben editar los patrones percusivos (Patterns) que componen los compases, y luego organizarlos, incluso superpuestos. Cada patrón percusivo está formado por varios instrumentos que querríamos incluir. Una canción completa se compone entonces de varios compases de patrones encadenados entre sí.


Encontraremos que la interfaz del programa se divide en distintos decks utilitarios.   

El Deck superior está destinado los controles de reproducción, con su selector de BPM (compases por minuto, o velocidad), control de entrada MIDI y consumo de CPU, y los temporizadores adecuados. En este deck es importante el selector de Modo de Trabajo, que opera por dos botones unívocos: debemos elegir entre reproducir la canción completa (seleccionando Song) o reproducir un patrón en bucle (seleccionando Pattern). Esta es la opción ideal para programar los patrones.

El Deck Central consta de una sección principal que es su Editor de Patrones. Este editor es el más importante, pues nos permite armar las  las partes mínimas que conformarán la canción, o mejor dicho, su pista percusiva.
Para introducir las notas hemos de agregarlas individualmente con el ratón, o si somos hábiles, presionar PLAY y REC en el Deck Superior y darle a las letras del teclado para tocar los distintos elementos de nuestra batería virtual. El programa cuantiza las notas para que caigan con ritmo perfectamente computado. Aún así, la opción más práctica para el avezado podría ser emplear un instrumento dotado de MIDI (por ejemplo, un teclado o un controlador con parches sensitivos (para tocar con los dedos), o una batería electrónica (si queremos tocar con baquetas).

Cada patrón consta de un número determinado de compases, y se asocia con la plantilla de instrumentos programables del Deck Izquierdo. En principio, debemos escoger su duración (en compases) y la duración de las notas.

Opcionalmente podremos editar los parámetros de cada nota individual, Los datos como paneo estéreo, intensidad, etcétera, se introducen fácilmente en la sección inferior del deck central dibujándolos  con el mouse (se representan con líneas en la línea de tiempo, para cada parámetro).

Cada patrón puede servir para un efecto determinado, por lo cual podremos renombrarlos libremente.

En la sección superior del deck central contaremos con el Editor de Canción. Por ejemplo, podríamos elegir un rock que inicie con un redoble (fill) de introducción, cuatro compases A para un verso, un compás B para un puente, dos compases C para un estribillo, redoble, y repetirse todo por una segunda sección, terminando con un redoble de final. Cada una de estas partes corresponderían a un patrón.

El programa utiliza kits de batería (drumkits) compuestos por varios instrumentos individuales (tambores, bombos, címbalos, platos, etc). Todos se encuentran accesibles en el Deck Derecho, organizados dentro de la Bibliotecas de Sonidos. La Biblioteca de Sonidos se organiza en diferentes Drumkits de sistema y Drumkits de usuario.

Por ejemplo, encontraremos aquí un drumkit muy logrado formado por los sonidos de la colorida máquina de ritmos sintetizada Roland TR-808 (la batería electrónica de culto en el scene hip-hop). Dispondremos de una batería BJA Pacific completa, una Pearl con platos Sabian y Zildjian,  y algunas otras.

En el Deck izquierdo tendremos los instrumentos seleccionados. Normalmente el programa ya tendrá precargado el drumkit "General MIDI". Si quisiéramos eliminar instrumentos individuales podremos hacerlo mediante clic derecho del botón del ratón, así como eliminar todos los instrumentos asignados a la canción actual, podremos ir al menú Instrumentos  / Limpiar Todo.

Si deseamos sumarle nuevos sonidos o un drumkit entero desde la Biblioteca de Sonidos para trabajar, hacemos clic con el botón derecho del ratón en aquel Drumkit del Deck Derecho, que querramos utilizar, y elegimos la opción Cargar.

Adicionalmente, podremos instalar nuevos kits de batería libres a nuestra Biblioteca de Sonidos, debemos ir al menú Instrumentos / Importar Biblioteca. Este nos presentará una ventana en la que podremos elegir nuevos conjuntos de batería. Simplemente debemos elegir uno nuevo de la lista y presionar el botón Descargar e Instalar.
Esto hará lo procedente en unos pocos segundos, dependiendo de nuestra velocidad de conexión. Cuando estén descargados, estas bibliotecas de sonidos figurarán como Drumkits de usuario.

En el Deck derecho podremos también podremos elegir el control de efectos para cada uno de los instrumentos.
Suponiendo que la utilicemos en modalidad de Control de Instrumentos, podremos elegir un modificador general para afinar cada uno de ellos, que tiene una buena versatilidad. Contaremos con un control de envolvente ADSR individual (ataque, decaimiento, sostenimiento y apagado del instrumento), a la vez que podremos aplicar un filtrado de corte y resonancia, y un aleatorizador de tono. Podremos programar el número de nota y su canal MIDI, y los rangos de intensidad (velocity) de las notas, por si queremos emparejarlas.



Asimismo, presionando el botón BPM de del Deck Izquierdo, podremos editar las velocidades de cada compases por minuto (BPM). Esto tendrá sentido si el ritmo musical se altera durante la pieza.


Contaremos también con los botones que nos permiten acceder a los elementos  flotantes adicionales de la interfaz de Hydrogen. Ellos son el Rack de Instrumentos, y el Mezclador.

El mezclador (Alt+M) nos permite regular el volumen de cada elemento pèrcusivo y su paneo, tanto individual como para el total de la pista. Así, podremos como Conductor aplicar efectos de audio individualmente o en conjunto.
El programa cuenta con manual (en inglés), que podremos acceder desde el menú Info / Manual del usuario. Indudablemente, gracias a Hydrogen  podremos desatar ahora el más colorido Ritmo del Justicialismo.

jueves, 6 de junio de 2019

¿Cómo juego Tetris en la Terminal de Ubuntu?

Cuando estamos entre muchos, tenemos que encajar. Esta es una de las artes que emanan del Justicialismo.

Esto ha inspirado a muchos en diversos órdenes e índoles de la vida. Por ejemplo, el 6 de junio el Marxista Alexei Pajitnov se dio a lanzar un juego minimalista que respondía a estos quehaceres.

Se trataba del Tetris. Desarrollado originalmente para la variante soviética del sistema operativo RT-11 que movía  a la Electronika-60 (sistema clon de la DEC LSI, de arquitectura PDP-11), este juego de organizar los bloquecitos que caían demostró su excelente potencialidad lúdica.

Es un juego de todos los tiempos que, empleando reecursos de hardware mínimos y al alcance de todos, permite a todos jugar. Un Juego de Masas.

Indudablemente que una fórmula popular de este tamaño no podía más que replicarse con gran rapidez, y fundar un imperio comercial. Si bien la modalidad original está ahora tutelada intelectualmente por la Tetris Company, agotada su licencia productiva comercial original, nada nos impide hacer realidad aquél viejo apotegma que reza "ni yanquis ni marxistas, peronistas". Por tando podremos correr versiones liberadas en nuestra terminal GNU una saga de honoríficos clones realizados sin fines de lucro.

Por ejemplo, podríamos probar el tint, tal vez uno de los más parecidos al original de Pajitnov.

Lo instalamos con:

sudo apt install tint

Y lo ejecutamos con:

tint
Las instrucciones están en pantalla, y sus reglas no requieren mayor explicación a esta altura del partido.

En cuanto a variantes algo más modernas, pero que conservan la base original, podremos evaluar el Tetris de Sam Tay. Representa un acercamiento actualizado (por ejemplo, cuenta con "sombras", que permiten visualizar cómo quedará la pieza una vez soltada.

Para instalarlo, abrimos una terminal y ejecutamos los siguientes comandos de organización:

curl -L https://github.com/samtay/tetris/releases/download/0.1.3/tetris-`uname -s`-`uname -m` -o tetris ;
chmod +x tetris ;
sudo mv tetris /usr/local/bin/

Una vez hecho esto, podremos ejecutarlo con el comando:

tetris
Con el correr del tiempo, se incorporaron más funcionalidades a la tipología original. Por ejemplo, el licenciamiento para Nintendo Entertainment System trajo las modalidades de dos jugadores. Si queremos contar con una versión libre que haga honor a esto, junto con el soporte de joysticks y el juego en red, podremos utililizar vitetris. Para ello debemos descargar la versión que se corresponda con nuestra arquitectura e instalarla.

Para Ubuntu de 64 bits:

cd  ~/Descargas/
wget http://ftp.br.debian.org/debian/pool/main/v/vitetris/vitetris_0.57.2-2_amd64.deb
sudo dpkg -i vitetris_0.57.2-2_amd64.deb

Para Ubuntu de 32 bits:

cd ~/Descargas/ 
wget http://ftp.br.debian.org/debian/pool/main/v/vitetris/vitetris_0.57.2-2_i386.deb
sudo dpkg -i vitetris_0.57.2-2_i386.deb

Lo ejecutamos con:

vitetris

El juego nos permite elegir uno o dos jugadores, o jugar en red local (en modo host o cliente). Si tenemos uno o dos joysticks conectados al sistema debemos asignar cuál de ellos deseamos para cada jugador (normalmente figuran como js0 o js1). También podremos asignar "keyb" (teclado) para uno de los jugadores.
Adicionalmente, podremos asignar los botones o teclas para asignar las funciones del juego que querramos. Naturalmente, un gamepad USB funcionará de maravillas con Tetris.
Una vez inciada la partida, podremos jugar uno contra otro, por tiempo o por puntaje. Indudablemente que también podremos jugar solos, como toda la vida.
Bastet es otra iteración de tetris, a la cual podríamos llamarlo "gorila", aunque se autodefine como "tetris bastardo". Está pensado para mandarnos el tetramino que menos necesitamos. Para quien desee esta frustrante experiencia, podrá lograrla instalándolo con:

sudo apt install bastet

...y le damos arranque con

bastet
La terminal queda perfectamente cubierta entonces para este sencillo juego de puzzles. Sin embargo, si lo que deseamos es contar con versiones para nuestro entorno gráfico GNU con Linux, existen iteraciones que nos permitirán dar con la tecla. Tan sólo ingresamos el comando:

sudo apt install ltris quadrapassel

Con ello lograremos instalar Ltris, una variante moderna que cuenta con la opción de jugar de a dos o contra hsta 3 jugadores controlados por la CPU, incluso en pantalla completa.

Mientras tanto, Quadrapassel es otra variante simple y directa, que cuenta con una opción de pausa.