lunes, 26 de diciembre de 2011

Instalar FFmpeg y x264 en Ubuntu Lucid Lynx 10.04 LTS y Ubuntu 11.10 Oneric Ocelot

FFmpeg es una libería open-source multi plataforma para archivos de video y audio.
Con FFmpeg podrás lograr convertir tus videos, extracciones de sonido, etc..

Es mucho mejor que usar VLC player & Audacity para convertir los videos y también para las extracciones de audio.

También existe una interfaz gráfica para realizar las conversiones de todo tipo de formatos a uno solo, la cual se llama WinFF y la puedes acceder utilizando la siguiente linea de comando:

sudo apt-get install winff.

Ahora comencemos a instalar los códecs necesarios para un óptimo funcionamiento del FFmpeg:

Primero que nada , tenemos que asegurarnos de que no existe ninguna instalación previa del FFmpeg o del x264 . Para ello tipeamos la siguiente linea:

sudo apt-get remove ffmpeg x264 libx264-dev yasm

Ahora actualizamos el repositorio para estar seguros de que vamos a instalarnos la última versión del programa.

sudo apt-get update


sudo apt-get update
sudo apt-get install build-essential git-core checkinstall texi2html libfaac-dev \ libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev \ libvorbis-dev libx11-dev libxfixes-dev zlib1g-dev


Antes de comenzar a instalar los codecs quiero comentar que por experiencia personal alguna de las instalaciones siguientes me fallaron , y leyendo un poco en el error que me daban me di cuenta que era por algunos directorios faltantes, los cuales cree , eliminé todos los archivos relacionados al codec que fallaba y volví a compilarlos e instalarlos y de esa manera si quedaban funcionando al 100%

Yasm es requerido por x264 para ellos lo instalamos usando las siguientes lineas:

cd
wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
tar xzvf yasm-1.2.0.tar.gz
cd yasm-1.2.0
./configure
make
sudo checkinstall --pkgname=yasm --pkgversion="1.2.0" --backup=no --deldoc=yes --default

Ahora vamos a instalar el codec x264

cd
git clone git://git.videolan.org/x264
cd x264
./configure --enable-static
make
sudo checkinstall --pkgname=x264 --default --pkgversion="3:$(./version.sh | \ awk -F'[" ]' '/POINT/{print $4"+git"$5}')" --backup=no --deldoc=yes

Seguimos con la instalación de Lame (codec para el encodeo de mp3 audio)

sudo apt-get remove libmp3lame-dev
sudo apt-get install nasm
cd
wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.tar.gz
tar xzvf lame-3.99.tar.gz
cd lame-3.99 ./configure --enable-nasm --disable-shared
make
sudo checkinstall --pkgname=lame-ffmpeg --pkgversion="3.99" --backup=no --default \ --deldoc=yes

Por último instalamos el Libvpx

cd
git clone http://git.chromium.org/webm/libvpx.git
cd libvpx
./configure
make
sudo checkinstall --pkgname=libvpx --pkgversion="$(date +%Y%m%d%H%M)-git" --backup=no \ --default --deldoc=yes


Ahora instalemos el FFmpeg .

Para la version : Ubuntu Lucid Lynx 10.04 LTS

Escribir en la consola lo siguiente:

cd
git clone --depth 1 git://source.ffmpeg.org/ffmpeg
cd ffmpeg
./configure --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb \ --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx \ --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab
make
sudo checkinstall --pkgname=ffmpeg --pkgversion="5:$(./version.sh)" --backup=no \ --deldoc=yes --default hash x264 ffmpeg ffplay ffprobe

Para la versión Ubuntu 11.10 Oneric Ocelot

Escribir en la consola lo siguiente:

cd 
git clone --depth 1 git://git.videolan.org/ffmpeg

cd ffmpeg
./configure --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab

make
sudo checkinstall --pkgname=ffmpeg --pkgversion="5:$(date +%Y%m%d%H%M)-git" --backup=no --deldoc=yes --fstrans=no --default

hash x264 ffmpeg ffplay ffprobe



Subir archivos a por ssh en linux

Los que usamos ssh alguna vez hemos necesitado pasar algun archivo por ssh, para ello se utiliza el comando scp, yo normalmente lo utilizo para subir archivos a la fonera si estoy en linux, ya que si estoy en windows utilizo el winscp que va bastante bien

Es bastatne sencillo utilizar el scp desde la consola de comandos

# scp archivo_a_subir usuario@dominio:/ruta_donde_sera_subido
# scp aircrack-ng root@192.168.1.1:/usr/bin/


nos pedira el password de acceso para ese usuario, y listo, en poco tiempo tendremos el archivo subido, la segunda orden habra subido el aircrack-ng en la carpeta /usr/bin del otro sistema

Para efectuar la copia inversa, es decir, bajarnos un archivo de un servidor, debemos invertir el orden

# scp usuario@dominio:ruta/archivo ruta_local

Si lo que queremos es subir una carpeta, deberemos meter el operador -r quedando de este modo el comando

# scp -r carpeta_a_subir/ usuario@dominio:/carpeta_padre

La forma inversa sería exactamente igual a la de los archivos, lo unico distinto es que se cambia el archivo por una carpeta:

# scp -r usuario@dominio:/ruta_hasta_la_carpeta/carpeta_a_pasar/

Creo que solo falta añadir si queremos conectarnos a un puerto distinto del que viene por defecto:

# scp -P[numeroDelPuerto] usuario@dominio

Activar el mod_rewrite en Linux

El mod_rewrite es un módulo de Apache que permite modificar lo que aparece en la barra de dirección, supongamos que tenemos lo siguiente: index.php?mod=index&taskid=9, podría quedar: /task/9. La verdad nunca lo he usado a pie, pero se necesita tener activado este módulo para poder utilizar diversas aplicaciones y frameworks (como CakePHP). Veamos como activarlo en Ubuntu 7.10.

Como siempre en Ubuntu todo es más fácil, esta distribución se la recomiendo a todos aquellos que quieran empezar a familiarizarse con GNU/Linux. Entonces tecleamos lo siguiente en la línea de comandos:

sudo a2enmod rewrite

El comando a2enmod (podría ser una abreviatura de Apache2 Enable Module) sirve para activar módulos que se encuentren en el directorio /etc/apache2/mods-available y los pasa al directorio /etc/apache2/mods-enabled.

Ahora lo que sigue es modificar nuestro host donde queremos que aplique el rewrite, en mi caso sera para todo lo que este dentro de mi localhost, entonces me voy al directorio /etc/apache2/sites-enabled/ y aquí debe de haber un archivo llamado 000-default, lo abrimos con vim o nano.

sudo vim /etc/apache2/sites-enabled/000-default

Aquí buscamos en las líneas que digan AllowOverride None y las cambiamos por AllowOverride All. Incluso podemos definir que directorios queremos que aplique es rewrite y cuales no.

Por último tenemos que reiniciar Apache2:

sudo /etc/init.d/apache2 force-reload

Y eso es todo!!!

Como instalar Apache2 + PHP5 + MySql + Extensiones PHP5 + phpMyAdmin en Linux

A continuación explico como instalar el WebServer de Apache en Linux.

1) Nos Logeamos como usuario Root del sistema

sudo su

2) Instalamos MySql (Cliente y Servidor)

aptitude install mysql-server mysql-client

3) Deberás poner una contraseña

New password for the MySQL "root" user:
< -- aca va tu contraseña

Repeat password for the MySQL "root" user: <-- aca repetimos la contraseña

4) Instalamos Apache

aptitude install apache2

5) Una vez finalizada la instalación de apache, corroboramos que el servidor se encuentre activo y funcionando dirigiendonos a la dirección : http://localhost o htt://127.0.0.1 donde deberíamos ver algo parecido a esto:



La raiz de Apache por defecto en Ubuntu es /var/www y el archivo de configuración se encuentra en /etc/apache2/apache2.conf .
Adicionalmente encontrarás subdirectorios de configuración como por ejemplo /etc/apache2/mods-enabled (para los módulos de Apache) , /etc/apache2/sites-enabled (para las virtual host).

6) Ahora nos ponemos a instalar PHP
Podemos instalar PHP5 y el módulo de PHP5 en apache con la siguiente linea :

aptitude install php5 libapache2-mod-php5
7) Ahora deberíamos resetear el Apache:

/etc/init.d/apache2 restart

8) Ahora instalamos los módulos de MySql y de Php en Apache.
Para ver todos los módulos posibles a instalar deberías tipear esto en la consola:

aptitude search php5

Aca dejo una lista completa de módulos, donde deberías seleccionar cuales necesitas para que tu aplicación funcione o bien podrías instalarlos todos:

aptitude install php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-json

9) Volvemos a resetear el Apache .. (Recuerda que cada vez que realizamos un cambio en la configuración de nuestro servidor debemos resetearlo, de otra manera no podrás ver los cambios)

/etc/init.d/apache2 restart

10) Para poder ver todos los cambios que estuvimos haciendo, y corroborar que los módulos de apache y MySql hayan sido correctamente instalados en el servidor deberíamos crear un archivo php en la raiz de Apache y en el colocar la siguiente linea:



De esta manera veríamos algo parecido a esto :



11) Por último isntalaremos phpMyAdmin en apache:

aptitude install phpmyadmin

Verás las siguientes preguntas:
Web server to reconfigure automatically: <-- Marcar la opción apache2 Configure database for phpmyadmin with dbconfig-common? <-- Poner "No"

Luego de esto deberías poder acceder a phpMyAdmin escribiendo en el navegador http://localhost/phpmyadmin