Mostrando entradas con la etiqueta CUDA. Mostrar todas las entradas
Mostrando entradas con la etiqueta CUDA. Mostrar todas las entradas

martes, 4 de julio de 2017

¿Cómo instalo el editor de video Shotcut en Ubuntu?

El 7 de febrero de 1974 Juan Perón sostiene una primera reunión con la Juventud Peronista en la Residencia Presidencial de Olivos, durante la cual cuenta cómo instalar y utilizar Shotcut, el potente editor de video en Ubuntu.

Vean señores,

Organizar no es juntar gente; es aunar voluntades conscientes con una finalidad, es decir, con un objetivo. Cuando digo voluntades conscientes, quiero decir hombres a los cuales se les haya dicho: "Nosotros queremos esto; ¿Lo quiere usted?'' Entonces venga con nosotros". "¿No quiere usted esto? Allá usted". Nosotros, durante treinta años, hemos venido haciendo esto. Claro que hemos soportado dieciocho años, donde primero nos quisieron destruir por el terror, fusilándonos; después nos quisieron absorber engañosamente para asimilamos a otras cosas que nosotros nunca hemos querido. A continuación nos quisieron dividir. Otros emplearon las tres cosas juntas. Ninguno de los cuatro métodos les permitió sacar la menor ventaja sobre el peronismo; pero ahora hemos llegado a un momento en que todos gritamos las mismas cosas, aun cuando todos no tenemos las mismas intenciones.
Cada organización tiene una finalidad, desde que es un instrumento. No le vamos a dar a un dentista una pala, ni a un jardinero un escalpelo, porque no le va a servir. Tenemos que hacer una organización para lo que debemos realizar. Esa organización ha de ser para la Reconstrucción Nacional en primer término y para la Liberación del software en segundo término.

En política, la perspectiva es inversa a la de la naturaleza. En ésta, los objetos lejanos se ven chiquititos y los cercanos se ven agrandados; pero en política es a la inversa. Hay muchos hombres que cuando están lejos uno los ve grandes y cuando los trae cerca y los conoce los ve así de chiquitos. Es una cosa que, naturalmente, sucede en la acción del gobierno, porque ésta se hace con hombres.

Ahora bien, esto se replica en el software privativo. Descargue usted un software privativo, y verá lo enorme que lo ve y lo pesado que es, y lo poco útil que tendrá a cambio de ninguna libertad. Por sano constraste, un software libre puede ser chiquito a la distancia, y cuando lo descargamos e instalamos, podremos notar el poderío y la utilidad que tiene por sus pocos Megabytes.

Esto es así pues en  nuestro Movimiento hemos dicho que donde existe una necesidad nace un derecho, y un software libre capaz de saciarlo. Esto es así pues el Software Libre es antes que nada una representación de los anhelos de un pueblo encarnado en un sistema informático de tipo comunitario.

Realmente existen pocos ejemplos de software que no tienen el destino de ser distribuidos. El software constituye en ese sentido una materia que ha de repartirse, y cuanto más y más libremente, mejor.

Ahora bien, existen ejemplos de software que por potencia, inteligencia, pero por sobre todas las cosas, por la libertad de su concepción, destacan como luminarias en nuestra Comunidad Organizada.

Uno de tales paquetes es el peronista Shotcut. Se trata de un paquete de edición de video potente, multiplataforma, y liberado bajo licencia GNU GPLv3.


sudo apt update ;
sudo apt install swh-plugins libsox3 libsdl1.2debian ;

cd ~/Descargas/ ;

wget https://github.com/mltframework/shotcut/releases/download/v18.09.16/shotcut-linux-x86_64-180916.tar.bz2 ;

tar xvjf shotcut-linux-x86_64-180916.tar.bz2 ;

mv ~/Descargas/Shotcut/ ~/.Shotcut/; 

Una vez descargado el programa, bien podríamos crear un lanzador, o acceso directo, para facilitar su ejecución. Si usamos Mate, pdoremos hacer clic con botón derechos sobre el panel superior, y escoger la opción Editar Menús. Se abrirá la ventana Menú Principal, y en su sección izquierda debemos escoger la categoría Sonido y Video. Acto seguido presionamos el botón +Elemento nuevo y se desplegará el cuadro de dialogo "Propiedades del Lanzador" donde podremos crear un lanzador nuevo.



En el campo "Nombre:" puedo ingresar algo como "Editor de video Shotcut", y en el campo "Comando:" debe decir:

sh -c "/home/peron/.Shotcut/Shotcut.app/shotcut"


Acto seguido presiono el botón Crear para que quede guardado. Podremos ya ejecutar el programa desde Aplicaciones / Sonido y Video / Editor de video Shotcut.

Se trata de un editor de video no lineal, capaz de las tareas mas interesantes en cuanto a edición de video.

El editor presenta un esquema clásico, de escasa dificultad comparado con otros, y relativamente potente para encarar el trabajo de edición semiprofesional. Las ventanas son ampliamente configurables en tamaño y disposición. El programa arranca "pelado", pero podremos agregar fácilmente una pista de video con Ctrl+Y, o una de audio con Ctrl+U. Estas se localizarán en la línea de tiempo inferior. Con Ctrl+ y Ctrl- puedo agrandar o achicar el tamaño de estas pistas para verlas mejor.

Al cargar un video, presionando mayúsculas y moviendo el ratón lateralmente podremos mover detalladamente en el cabezal/cursor de reproducción en la línea de tiempo. También podremos utilizar el conocido estándar de teclas "JKL". Estas están colocadas en el teclado en un orden lógico: l inicia la reproducción y si la volvemos a presionar duplica su velocidad de reproducción, k pausa la reproducción, y j inicia la reproducción en reversa y si la presionamos de nuevo aumenta su velocidad. De este modo podemos simular el movimiento del viejo cabezal de reproducción por medio de un jog dial en una vieja reproductora de videocasette.

Mientras estemos pausados, podremos usar las flechas izquierda o flecha derecha del cursor para avanzar o retroceder cuadro a cuadro. Si seleccionamos un clip de video en la línea de tiempos, usando la tecla s podremos dividir el clip en el punto preciso indicado.
  • z, Supr o Retroceder levanta el clip seleccionado de la línea de tiempo sin afectar las posiciones relativas de los otros clips en la pista.
  • x, Mayúsculas+Supr o Mayúsculas+Retroceder remueve el clip seleccionado de manera tal que los clips siguientes se desplacen hacia la izquierda (se muevan a un tiempo anterior).
  • c coloca un corte en la pista actual
  • v inserta un corte en la posición a continuación del cabezal de reproducción, dividiendo la toma bajo el indicador de reproducción en caso de ser necesario, y actúa en una forma de corte cambiando todas las tomas a continuación del cursor de reproducción hacia la derecha.
  • b sobreescribe en la pista actual con el clip del reproductor sin afectar las posiciones relativas de los demás cortes, siguiendo la duración del clip.
  • Flecha Arriba y Flecha Abajo cambia la pista seleccionada.
  • 0, ?, ¿ ajustan el nivel de zoom de la línea de tiempo (0 lo resetea al nivel por defecto y centra la posición en el slider; = hace zoom y ¿ lo quita.)
De la misma forma que JKL se usan para el control del cabezal de reproducción, las teclas i, o, x, c y b son teclas de control muy comunes en uso con otros programas de edición de video de Appl€, Avid, Lightworks y otros.

Shotcut nos permite activar una ventana con diferentes filtros de video, aplicables individualmente a cada clip de video de cada pista. Estos pueden copiarse y pegarse entre clips, lo que facilitan enormemente la coherencia de efectos en la edición

Normalmente estos se activan empleando nuestra CPU, pero podremos hacer que funcionen gracias a la GPU de nuestra placa aceleradora de video (si contamos con ella), con lo cual obtendremos resultados mas velozmente. Para ello debemos activar la función de procesamiento gráfico por GPU, desde Preferencias / Procesamiento GPU (experimental). El programa nos indicará que para activar esta funcionalidad, debemos reiniciar el programa.

Entre los filtros contamos con los clasicos difuminados (fade in o fade out). pasajes diapo, pasaje claqueta, etc.

Para tituladores también empleamos filtros, con la ventaja que estos se aplican por GPU si es el caso. Contaremos entonces con filtro de Texto 3D con las fuentes que tengamos en el sistema, Sobreimpresión HTML - Shotcut nos permitirá editar visualmente la placa de texto - y directamente el filtro Texto, que nos permite un editor mas bien espartano. También podremos usar imágenes con canal Alfa transparente, y hacer una composición de video (composting). Este caso debemos asegurarnos de activar la función Composting en el Encabezado de la pista de video, ya que normalmente esta función se encuentra desactivada para ahorrar CPU.
Los filtros también hacen a la mejora del sonido, con filtros antiviento, ecualizadores paramétricos, y varios efectos de sonido sencillos. Naturalmente que podremos hacer uso de otros programas de audio para mejorar este aspecto, pues fácilmente integrable con otros. Desde el punto de vista del programa, directamente contamos en él con vúmetros de control, así como espectómetros para analizar el audio, lo cual es ideal si editamos para cine o queremos tener un control preciso de los bajos y agudos.

Para la exportación contaremos con una amplísima variedad de formatos de audio y video predefinidos para varias aplicaciones, así como resoluciones y características técnicas. Estos a su vez los encontraremos pormenorizados según sus parámetros. De acuerdo a la resolución, modo de resolución (se recomienda actualmente progresivo) y tipo de desentrelazado (si hemos de usar), variará la carga del procesador durante la exportación del rendering. El estándar de alta calidad hoy en día es Full HD, con unos 1920x1080 pixels progresivos, a 30 cuadros por segundo, idealmente con el códec de video H.264 y códec de audio AAC.

Contaremos con la posibilidad de activar la opción Procesado en Paralelo, que activa el uso de varios núcleos en nuestra CPU para el rendering. Esta función opera muy bien en los equipos con procesadores multinúcleo, pero de momento provoca errores si la combinamos con el desentrelazado YADIF (de alta calidad e impuesto por defecto en algunos preajustes de exportación). Podremos optar por desactivar Procesado en Paralelo, o cambiar el desentrelazado a uno menos exigente como Un Campo (rápido).


Naturalmente si nuestro video compone un cortometraje sin muchos efectos los valores no deberían ser elevados, pero debemos siempre pensar que el procesado de video puede hacer amplio uso de la potencia de hardware instalada, y por ello debemos analizar el uso de CPU y la temperatura alcanzada por la misma.
Como todo este tipo de programas de edición de video, es de fundamental importancia el aprendizaje de uso del mismo y Shotcut es relativamente sencillo. Podremos encontrar una muy interesante serie de tutoriales en inglés en la web oficial, aquí.

martes, 26 de julio de 2011

¿Cómo instalo CUDA para ver videos acelerados por hardware en Ubuntu 10.10?

Ya desde Abril de 1956 Juan Perón escribe desde el número 2-52 de la Calle 58 - su exilio en Bella Vista, Panamá - planificando desde el exterior acciones que le permitieran retornar a la Argentina. Su objetivo: restablecer al Pueblo el verdadero poder usurpado por la autoproclamada Revolución Libertadora. En una de estas epístolas que constituyen verdaderos documentos históricos, Perón explica también como instalar CUDA en Ubuntu 10.10.

(...)
"El plan que he concebido para comenzar su ejecución prevé ampliar lo que dije hace tres meses, la resistencia pasiva. Usted sabe que dentro del secreto que han de tenerse en estas cosas, hoy podemos decir que las grandes líneas son las siguientes:
  1. Resistencia Pasiva (sabotaje y acciones pasivas) para desgastar moral y materialmente a la dictadura y descomponer sus fuerzas, preparando así su derrumbe ulterior.
  2. Entretanto, organización y preparación de nuestras fuerzas para accionar con unidad de concepción en el momento y lugares oportunos.
  3. Preparación de la acción decisiva mediante la paralización total del país y el levantamiento civil y militar.
Las noticias que me llegan del Uruguay son buenas y optimistas, pues le está llegando el agua al cuello a la dictadura. Es menester que se haga llegar la consigna permanente de sabotaje y resistencia pasiva que ahora debe ser más intensa que nunca. El cuento de la poliomielitis no debe impresionarnos a nosotros pues ha sido una jugarreta de la dictadura. Hacer llegar a la gente la orden de continuar todas las acciones de resistencia es fundamental en estos momentos, así lo he ordenado en todas partes. Si la resistencia afloja por cualquier motivo, la dictadura respirará y eso no nos conviene de ninguna manera. No olvidemos que esto es un juego de vivos, y que en ese juego, gana el que puede pasar de tonto sin serlo...

Por otro lado, es de vivos instalar CUDA en Ubuntu. CUDA es la arquitectura de procesamiento paralelo que utiliza las GPU de nVidia para correr programas y también asistir en su ejecución. Esto permite ampliar sin duda las posibilidades de ejecución de programas que hagan uso de esta tecnología: juegos, aplicaciones científicas, aplicaciones de procesamiento matemático intensivo, etc. Me han preguntado si se puede instalar CUDA para usarlo en Ubuntu para acelerar videos o desarrollar programas, y yo he de decirles que si, se puede.


Este tipo de programación requiere de un adaptador de video con procesadores compatibles con CUDA. Yo utilizaré para este ejemplo la nVidia GTX275, que tan buenos resultados ofrece en Ubuntu 10.10. Principalmente usaremos la tecnología para ver videos acelerados, pero quien se anime podrá programar sus propias aplicaciones usando el SDK o kit de desarrollo.

Vamos a Aplicaciones / Accesorios / Terminal y el la consola ingresamos los siguientes Comandos de Organización descargaremos el megapaquete CUDA 4.0:

sudo add-apt-repository ppa:aaron-haviland/cuda-4.0
sudo apt-get update
sudo apt-get upgrade


Recordemos que se instalará la paquetería en el kernel, modificándolo (al momento de la carta, a la versión 2.5.35-30 generic). También se descargará el último controlador nVidia (al momento, el 270.41.19 DKMS).

Luego dependiendo del tipo de arquitectura que utilice, ingresamos los siguientes comandos:

Si usamos Ubuntu 10.10 de 32 bits usamos:
sudo apt-get install nvidia-cuda-gdb nvidia-cuda-toolkit nvidia-compute-profiler lib32npp4 nvidia-cuda-doc nvidia-current-modaliases lib32cudart4 lib32cublas4 lib32cufft4 lib32cusparse4 lib32curand4 nvidia-current nvidia-opencl-dev nvidia-current-dev nvidia-cuda-dev nvidia-kernel-common opencl-headers

En el caso de utilizar Ubuntu de 64 bits el comando será:
sudo apt-get install nvidia-cuda-gdb nvidia-cuda-toolkit nvidia-compute-profiler libnpp4 nvidia-cuda-doc nvidia-current-modaliases libcudart4 libcublas4 libcufft4 libcusparse4 libcurand4 nvidia-current nvidia-opencl-dev nvidia-current-dev nvidia-cuda-dev nvidia-kernel-common opencl-headers

Esta paquetería redunda en aproximadamente 490MB de información, por lo que llevará un tiempo su descarga del éter telemático.

Opcionalmente, y únicamente si no teníamos ningún controlador de video nVidia instalado previamente en el sistema, ingresamos el siguiente Comando de Organización (de lo contrario, omitimos este paso):

sudo nvidia-xconfig

Ahora debemos - y es importante hacerlo - reiniciar el sistema. A la vuelta debe arrancar sin problemas.

Finalmente, si lo deseamos, podemos instalar también el SMPlayer, por ser un reproductor fuertemente peronista que podrá golpear a la dictadura por medio de su capacidad de usar la aceleración VPau.

Para hacerlo ingresamos el siguiente Comando:

sudo apt-get install smplayer smplayer-translations smplayer-themes

Para ejecutar este reproductor vamos a Aplicaciones / Audio y Video / SMPlayer. Luego podemos activar la aceleración en el menú Opciones / Preferencias y en el cuadro que surge elegimos / Controlador de Salida, y reemplazamos la opción "xv" escribiendo en la casilla "vdpau".

Si deseamos compilar software para que corra bajo las librerías CUDA, podemos hacerlo, y ello requiere ser avezados. nVidia pone a disposición un entorno de desarrollo (SDK) para GNU/Linux, cuyo nombre es gpucomputingsdk_4.0.13_linux.run.

a) instalar gupcomputingsdk con el siguiente Comando de Organización, aceptando las opciones :

sudo apt-get install freeglut3-dev libxi-dev libXmu-dev

Debemos descargar el Toolkit CUDA que corresponda a nuestra versión. El Toolkit pesa unos 125 MB aproximadamente.

Si tenemos Ubuntu 10.10 de 32 bitios lo bajamos de aquí. Si en cambio usamos Ubuntu 10.10 de 64 bitios lo bajamos de aquí. Y si tenemos otras distribuciones diferentes, podemos buscarlas aquí.

Una vez descargado el empaquetado precompilado, debemos darle permisos de ejecución y ejecutarlo.

Por ejemplo, en el caso de la versión de 64 bitios, sería con el siguiente Comando de Organización:
sudo chmod +x cudatoolkit_4.0.17_linux_64_ubuntu10.10.run
sh cudatoolkit_4.0.17_linux_64_ubuntu10.10.run


Luego tipeamos

sudo mkdir /usr/lib/include
sudo ln -s /ust/lib/include/thrust /usr/lib/include/

Y agregaremos el path de la nueva localización de confianza en el archivo common/common.mk. Lo hacemos con

sudo nano ~/NVIDIA_GPU_Computing_SDK/C/common/common.mk

y en la línea 64 agregamos "-I/usr/lib/include" de modo que cambie de la instrucción original:
INCLUDES += -I. -I$(CUDA_INSTALL_PATH)/include -I$(COMMONDIR)/inc -I$(SHAREDDIR)/inc

...y quede modificada así:
INCLUDES += -I. -I$(CUDA_INSTALL_PATH)/include -I/usr/lib/include -I$(COMMONDIR)/inc -I$(SHAREDDIR)/inc

Ahora compilamos el código de ejemplo con los siguientes Comandos de Organización:

cd NVIDIA_GPU_computing_SDK/C
make

Los ejecutables del código compilado irán a parar a la carpeta ~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release/

Para ejecutar esos códigos (por ejemplo, los programas nbody y deviceQuery) solamente debemos situarnos allí y tipear:

./nobody
./deviceQuery

Y así con cualquier programa que desarrollen.