Arxiu

Arxiu de juliol de 2009

Gestores de descarga para Linux, Mac y Windows

30 de juliol de 2009 Booletaire

Hace unos días gerno nos explicaba cómo facilitarnos las descargas mediante el plugin Illimitux y la aplicación FreeRapid Downloader.

A parte de FreeRapid existen algunas otras aplicaciones disponibles para Linux, Mac y Windows que os servirán como gestores de descarga para páginas como megaupload o rapidshare. A continuación os expongo un par más que encuentro bastante interesantes.

tucan_logoTucan Manager

Software libre español desarrollado en python. Disponible para Windows y Linux.

Muy sencillo de utilizar. Permite descargar de 4shared, megaupload, sendspace, zshare, filefactory, mediafire, gigasize y rapidshare y permite el uso de cuentas premium em MegaUpload y Rapidshare.

www.tucaneando.com

tucan_screen2

jDownloader

Desarrollado en Java* y con prestaciones similares a FreeRapid Downloader.

Al igual que FreeRapid Downloader permite la descarga de decenas de páginas web (entre ellas las mencionadas anteriormente) y la configuración de cuentas premium en muchas de ellas (a diferencia de FreeRapid, éste sí permite el uso de cuentas premium en Megaupload).

Además tiene varios plugins interesantes, como el de interfaz web (con el que podemos controlarlo remotamente desde donde queramos), o uno que ya viene instalado por defecto que descomprime los ficheros comprimidos compuestos por varias partes.

* Al estar desarrollado en Java podemos utilizarlo desde cualquier sistema operativo que permita Java (Windows, Linux y Mac por supuesto que permiten Java)

www.jdownloader.org

JDownloader

Aplicacions, Linux, Mac, Windows , ,

Evitar mensaje de Windows & Office Genuine Advantage

26 de juliol de 2009 Booletaire

Hace ya un tiempo Destroy (a.k.a Axelain) publicó como eliminar este mensaje tan molesto que todos los que tenemos una copia ilegal de windows (es decir, todos) sufrimos o hemos sufrido alguna vez.

Él explicó cómo eliminarlo, algo realmente útil para cuando el mal ya está hecho y no hay vuelta atrás, pero yo creo que estas cosas mejor prevenirlas que curarlas, así que os voy a explicar cómo he evitado siempre estos mensajes:

Como ya he dicho esto es la medida de prevención, por ello necesitaremos una instalación de Windows semi nueva que todavía no esté “infectada” por este mensaje.

Vayamos a Mi PC / Panel de Control / Actualizaciones automáticas y habilitemos la casilla “Notificarme, pero no descargarlas ni instalarlas…”

Actualizaciones de windows¿Porqué hacemos esto? Porque el mensaje de Windows Original no es más que una actualización del sistema, si evitamos descargarla e instalarla ya no tendremos que preocuparnos más por ello (sólo intenta instalarse una vez).

Así pues tendremos que fijarnos a la hora de instalar las actualizaciones. La actualización en concreto se llama “Herramienta de notificación del programa de ventajas de Windows Original”.

Para Office pasa igual, existe una actualización que si se descarga nos hace igual que con Windows. La actualización se llama igual, pero en lugar de Windows, Office ;)

Cuando hayamos desmarcado las actualizaciones que no queramos le damos a descargar y, en la nueva ventana que nos aparezca, marcamos “No volver a notificarme sobre estas actualizaciones”.

Windows ,

Leer y editar etiquetas ID3v1 e ID3v2 con CakePHP 1.2

19 de juliol de 2009 Booletaire

Si, como yo, estáis interesados en editar y leer las etiquetas ID3 de los ficheros mp3 que se suban a vuestro servidor, podéis hacerlo utilizando las funciones propias de PHP para ello (necesitáis que vuestro hosting lo tenga instalado) o bien, si os pasa igual que a mi que en mi hosting no tienen habilitadas estas funciones (y si no tienes un servidor dedicado no te las instalarán para no detener el servicio), podéis utilizar las classes de PHP GetID3.

Si no las conocíais os recomiendo que las descarguéis y hagáis alguna prueba con ellas, realmente se les puede sacar mucho jugo ya que con ella no solo podemos editar etiquetas ID3; esto son algunos de los muchos formatos cuya información podéis consultar y / o editar con este magnífico conjunto de clases:

getID3() is a PHP script that extracts useful information from MP3s & other multimedia file formats:

getID3() can write:

He eliminado unos cuantos formatos de la lista, si queréis verlos todos id a su página web.

¡Al grano! Ya conocemos las clases ID3 (aunque sea un poco por encima, como yo..) y queremos implementarlas en nuestra aplicación de Cake.

No es muy complicado si utilizamos las demos que nos dan en el zip que nos descargamos de getID3.org. Simplemente debemos tener en cuenta que los “require” que utilicen en las demos debemos substituirlas por App::import(‘vendor’,'rutadelaclase’).

Lo primero que deberemos hacer será descargar getID3. Si queréis editar etiquetas ID3v2 deberéis descargar la versión estable (actualmente la 1.7.9) ya que en la versión beta (actualmente la 2.0.0-b5) no funcionan las clases necesarias.

Una vez descargado, lo descomprimimos y lo subimos a la carpeta vendors de nuestro proyecto Cake (para mayor comodidad renombrar la carpeta a “getid3″). Seguramente habréis visto que existen dos carpetas vendor en vuestra aplicación de Cake. Debéis ponerlo en la que se encuentra en la carpeta raíz (junto con las carpeta “app” y “cake”).

Ahora que ya tenemos nuestro plugin en la aplicación debemos crear un componente que nos sirva de conexión entre las librerías getID3 y nuestro Cake.

Para hacerlo utilizaremos como referencia las demos “demo.basic.php” y “demo.simple.write.php”. Recordad que hay que substituir los require e includes por App::import(). Este es el resultado que he obtenido yo:

<?php
class Getid3Component extends Object
{
	function __construct()	{
		set_time_limit(20*3600);
		ignore_user_abort(false);
	}

	function extract($filename)	{
		// Importamos el fichero getid3.php que contiene la classe getID3
		App::import('vendor','getid3/getid3',array('file'=>'getid3.php'));
		// Initialize getID3 engine
		$getID3 = new getID3;

		// Analyze file and store returned data in $ThisFileInfo
		$ThisFileInfo = $getID3->analyze($filename);
		// Devolvemos un array con toda la información del fichero
		return $ThisFileInfo;
	}

	function write($filename, $data)
	{
		App::import('vendor','getid3/getid3/getid3');

		// Initialize getID3 engine
		$getID3 = new getID3;
		// Indicamos a getID3 que utilice la codificación de Cake
		$getID3->setOption(array('encoding'=>Configure::read('App.encoding')));

		App::import('vendor','getid3/getid3',array('file'=>'write.php'));

		// Initialize getID3 tag-writing module
		$tagwriter = new getid3_writetags;

		//$tagwriter->filename       = $filename;
		$tagwriter->filename       = $filename;
		$tagwriter->tagformats     = array('id3v1', 'id3v2.3');

		// set various options (optional)
		$tagwriter->overwrite_tags = true;
		$tagwriter->tag_encoding   = Configure::read('App.encoding');
		$tagwriter->remove_other_tags = true;

		// populate data array
		$TagData['title'][]   = $data['title'];
		$TagData['artist'][]  = $data['artist'];
		$TagData['album'][]   = $data['album'];
		$TagData['year'][]    = $data['year'];
		$TagData['genre'][]   = $data['genre'];
		$TagData['comment'][] = $data['comment'];
		$TagData['track'][]   = $data['track'];

		$tagwriter->tag_data = $TagData;

		// write tags
		if ($tagwriter->WriteTags()) {
			if (!empty($tagwriter->warnings)) {
				return $tagwriter->warnings;
			}
			return true;
		} else {
			return $tagwriter->errors;
		}
	}
}

Recordad que los componentes van en la carpeta app/controllers/components y que el nombre de este fichero deberá ser getid3.php.

Ahora que ya tenemos nuestro componente vayamos al controlador sobre el que queramos utilizarlo y añadamoslo al resto de componentes:

<?php
class AudiosController extends AppController
{
	var $name = 'Audios';
	var $components = array('Upload','Getid3');

Y sólo nos queda saber cómo utilizarlo:

$datos = array(
				'album'=>'Nombre del álbum',
				'title'=>"Título del tema",
				'artist'=>"Artista",
				'year'=>"Año",
				'genre'=>'Estilo',
				'comment'=>"Comentario");
	$this->Getid2->write('rutadelfichero.mp3',$datos);

Y para leer los datos de un mp3:

$this->Getid2->extract('rutadelfichero.mp3')

Que nos dará una salida similar a ésta.

Habéis visto más o menos el método de implementar funciones de getID3 en CakePHP. Ahora es tarea vuestra intentar añadir más funcionalidades a vuestro complemento según vuestras necesidades.

Como siempre, espero que le sirva a alguien!

Páginas de referencia:

Llegir més…

Programació, Web , , , ,