Showing results 1 - 10 of 13 for the tag: PHP.

18

May

2009

4

[Idea] Corregir subtítulos gracias a VLC de manera colaborativa

reloj20:24 calendarioCategorías: General, Series, Software

Últimamente el 90% de las series que veo están en versión original, por lo que páginas como subtitulos.es se han añadido a la lista de mis visitadas diariamente. El problema vino cuando me compré el nuevo monitor de 22″, que ha hecho que me vuelva bastante esquisito a la hora de disfrutar una serie, esto es: toda serie fue grabada para verla como poco en HD (720p). Pero si sumamos los dos requisitos anteriores (subtítulos + 720p), el abanico de posibilidades a la hora de encontrar los dichosos archivos .srt, queda reducido prácticamente a 0.

Hace tiempo se me ocurrió una idea: ¿por qué no crear un script que mediante 3 ficheros .srt, genere un subtítulo en castellano con los tiempos del capítulo en HD?. La idea era sacar los tiempos del fichero en inglés de 720p, y comparándolos con los de inglés en calidad normal, sustituir estos por los del archivo traducido al castellano. Todo fácil y sencillo, en principio…

Como me parecía algo que se puede hacer perfectamente en una tarde, me puse a ello inmediatamente, y como resultado creé un par de clases en PHP que dejo en los enlaces de abajo. No tardé demasiado en darme cuenta de que existía un problema: los diálogos no tienen porqué estar divididos exactamente igual, tirando con esto al traste toda mi investigación.

Desde entonces empecé a usar VLC para ver las series en HD (invitado también por FrontRow, que no se lleva muy bien con muchos .mkv, y pega tirones), que permite adelantar y retrasar los subtítulos con J y K, así que me voy apañando sincronizando los subtítulos sobre la marcha, y aquí es donde surgió la idea: un plugin que fuese guardando estas pulsaciones de J y K, para ir generando un subtítulo con los tiempos corregidos, y todo esto sincronizado con alguna especie de wiki, de manera que con que un par de personas «retoquen» al vuelo los subtítulos (labor muy fácil con VLC, como digo), tendríamos unos subtítulos para cualquier versión del archivo, eliminando así la tediosa tarea de tener que generar desde cero los subtítulos para cada versión de cada capítulo.

Bueno, como digo, lo mismo esto ya existe y no me enteré (agradecería que me comentaseis), pero sino… ¿alguien se anima a hacerlo? Yo ya puse la idea 🙂

  • SubChanger | Clase para manejar subtítulos en formato .srt

15

Dic

2008

5

Uploader gratuíto v0.25

reloj01:34 calendarioCategorías: Peripecias, PHP

Ya hace casi medio año desde aquel primer uploader en versión más alpha que beta, pero que al menos me ha servido para compartir ciertos archivos con la gente de manera cómoda y rápida.
Este fin de semana he aprovechado para actualizarlo un poco, utilizando un control de versiones como mostré en el videotutorial que hice, por lo que puedo decir, que incluso en proyectos pequeños como este sirve para localizar alguna metedura de pata sin comernos mucho la cabeza.
Y ya solo me queda invitaros a probarlo, y si queréis, podéis colgarlo en vuestro hosting, ya que comparto el cutre-código, que fijo que a alguien le viene bien. Algunas de las features de esta versión son:

  • URL más cortas, ahora son de la forma http://up.patoroco.net/XXXX (1.500.625 posibilidades)
  • Recuerda el nombre del archivo original.
  • Devuelve cabeceras originales, obligando a descargar el archivo al navegador en caso necesario.
  • Envía tamaño del archivo para que los gestores de descargas calculen tiempos estimados y demás.
  • La interfaz sigue siendo igual de cutre 🙂

La tabla que utilizo para guardar la información de los archivos tiene la siguiente estructura:

CREATE TABLE IF NOT EXISTS `uploader` (
  `clave` varchar(6) NOT NULL default '' COMMENT 'Clave que se pondrá a cada archivo (http://up.patoroco.net/*clave*)',
  `original` varchar(100) NOT NULL default '' COMMENT 'Nombre del archivo que subieron',
  `tipo` varchar(50) default NULL,
  `tamano` int(11) default NULL,
  `fecha` datetime default NULL,
  `agente` text,
  `ip` varchar(15) default NULL,
  PRIMARY KEY  (`clave`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

13

Oct

2008

1

Diapositivas de la PHPConference de Barcelona

reloj16:41 calendarioCategorías: PHP

Hace algún tiempo se celebró en Barcelona el PHPConference, un congreso donde acudieron bastantes personalidades del mundillo PHP, con conferencias y presentaciones.
Para los que nos quedamos con ganas de asistir, se han colgado varias de las presentaciones que se hicieron, y como me ha parecido interesante, dejo un par de ellas después del salto… [+ Más]

25

Sep

2008

2

RealComments y no cuentes comentarios de más

reloj14:10 calendarioCategorías: WordPress

Desde que cambié de theme, empecé a utilizar numerosos plugins interesantes, uno de ellos era CommentCount, un plugin que arreglaba el fallo que tiene WordPress a la hora de contar los comentarios para cada post.
El caso es que tras varios días con este plugin, me dí cuenta de que ciertos posts mostarban un número de comentarios incorrecto, y tras investigar, vi que el problema era que también tenía en cuenta los comentarios que estaban moderados, por lo que me decidí a modificar el plugin (viva el software libre!), y como puede ser útil a alguien más, lo comparto: RealComments modifica el contador de WordPress, y no cuenta ni trackbacks, ni pingbacks, ni comentarios moderados (spam por ejemplo), dando una cifra más real para cada entrada.

22

Sep

2008

2

Permite a los visitantes enviar un enlace de tus posts a Twitter

reloj16:25 calendarioCategorías: PHP, Twitter, WordPress

Hoy voy a explicar un sencillo truco con el que incluir un botón que al pulsarlo enviará un texto a Twitter, muy útil para que las visitas compartan las entradas interesantes por este sistema de microblogging.
Esto es muy fácil utilizando la API de Twitter, que permite escribir el status mediante una petición GET de la forma:

http://twitter.com/home/?status=[TEXTO]

Y puesto que estamos en WordPress, es muy sencillo incluir el título y dirección de una entrada en un tweet:

< ?php
	$twit = get_the_title().': '.get_permalink();
	$twit = urlencode($twit);
	$twit = htmlentities($twit);
	echo 'Enviar a Twitter';
?>

Bastaría incluir esto al final del loop en nuestro index.php, y obtendríamos algo así: Enviar a Twitter.

13

Sep

2007

8

Funcion is_date()

reloj23:33 calendarioCategorías: PHP

Bueno, la acabo de hacer, y me apetecía compartirla. Imagino que habrá alguna otra por ahí, pero esta es mía, mi tesooooro 🙂

function is_date($fecha){
//Comprueba si la cadena introducida es de la forma D/m/Y (15/04/1920)
if (ereg("([0-9]{1,2})/([0-9]{1,2})/([0-9]{4})", $fecha, $bloques)){
if (($bloques[2]>12)|($bloques[2]<1)){
return FALSE;
}
if (($bloques[2]==4)|($bloques[2]==6)|($bloques[2]==9)|($bloques[2]==11)){
$dias_mes = 30;
}else{
if ($bloques[2]==2){ //febrero
if((($bloques[3]%4==0)&(!($bloques[3]%100==0)))|($bloques[3]%400==0)){
$dias_mes = 29;
}else{
$dias_mes = 28;
}
}else{
$dias_mes = 31;
}
}
if (($bloques[1]<1)|($bloques[1]>$dias_mes)){
return FALSE;
}
}else{
return FALSE;
}
return TRUE;
}

30

Abr

2005

0

Estadísticas del Project Dolphin

reloj17:27 calendarioCategorías: Internet, Peripecias, PHP, Programas

Esta tarde me dió por enredar un poco con la galería gráfica de PHP GD y la primera chorrada que se me pasó por la cabeza fue hacer una imagen que muestre mi estado en el Project Dolphin.
Básicamente es una imagen de fondo, y luego muestra el nick, las pulsaciones con las que he contribuido en mi equipo, mi posición dentro de mi equipo y entre parentesis la posición global (para todos los usuarios), la última fecha de Pulse (la última vez que «actualicé» mis pulsaciones) y por último el nombre del equipo al que pertenezco :).

13

Abr

2005

6

Pintando a Nemo

reloj02:33 calendarioCategorías: Personal, PHP, Tonterias

En PHP-Hispano han propuesto este desafío consistente en pintar a Nemo usando la librería gráfica de PHP GD. Y bueno, como me gustan los retos, he decidido hacerlo sin usar esta librería, y bueno, el resultado ha sido más bien bueno…

Nemo
Tags Tags: , ,

27

Mar

2005

7

Resizeador de imagenes (II)

reloj18:24 calendarioCategorías: PHP

Como ya sabéis, ando haciendo una galería para otra web, por lo que me hice una función para cambiar el tamaño fácilmente, y he pensado en compartirla, porque fijo que a alguno os viene bien…

< ?
function resizear_imagen ($imagen,$img_anch_max,$img_alto_max){
    $extension = explode(".",imagen);
    $num = count($extension)-1;
    $extension = $extension[$num];
    $extension = strtolower($extension);
    switch ($extension){
        case "jpg": if (ImageCreateFromJpeg($imagen)) { $img = ImageCreateFromJpeg($imagen); } else { $errores = "Si"; } break;
        case "jpeg": if (ImageCreateFromJpeg($imagen)) { $img = ImageCreateFromJpeg($imagen); } else { $errores = "Si"; } break;
        case "gif": if (ImageCreateFromGif($imagen)) { $img = ImageCreateFromGif($imagen); } else { $errores = "Si"; } break;
        case "png": if (ImageCreateFromPng($imagen)) { $img = ImageCreateFromPng($imagen); } else { $errores = "Si"; } break;
    }
    //CALCULO LAS PROPORCIONES    
    $prop_imagen = getimagesize($imagen);
    $ancho = $prop_imagen[0];
    $alto = $prop_imagen[1];
    if ($ancho >= $alto){
        $proporcion = $ancho/$alto;
        $ancho_dev = $img_anch_max;
        $alto_dev = $ancho_dev/$proporcion;
        if ($alto_dev > $img_alto_max){
            $alto_dev = $img_alto_max;
            $ancho_dev = $alto_dev * $proporcion;
        }
    } else {
        $proporcion = $alto/$ancho;
        $alto_dev = $img_alto_max;
        $ancho_dev = $alto_dev/$proporcion;
        if ($ancho_dev > $img_anch_max){
            $ancho_dev = $img_anch_max;
            $alto_dev = $ancho_dev * $proporcion;
        }
    }
    //CREO LA IMAGEN DEVUELTA
    $image = imagecreatetruecolor($ancho_dev, $alto_dev);
    ImageCopyResized($image, $img, 0, 0, 0, 0, $ancho_dev, $alto_dev, $ancho, $alto);
    if ($errores == "Si"){
        return "";
    } else{
        return $image;
    }
}
?>

Espero comentarios y demás 🙂

26

Mar

2005

2

Task List

reloj03:05 calendarioCategorías: Personal, PHP

Bueno, llevo un par de días de vacaciones, espatarrao’ en el sofá con mi amado Acer TravelMate 292 LCi + Wireless.
Tanta tranquilidad me hizo pensar en cosas que tenia que hacer en estas vacaciones, y bueno, desde el sofá todo ello, me puse a trabajar en la web de los apartamentos en los que resido entre semana, que ya solo me faltaba la parte de la galería de imágenes, y bueno, por hoy creo que ya hice bastante. De forma resumida diré que este script te permite elegir donde subir tus imágenes o también puedes elegir si quieres crear una nueva. Luego sube la imagen en los formatos comunes, y la pasa a jpg a 75% de calidad y el tamaño por debajo del tamaño máximo que se especifica por un fichero config.php. Aparte guarda una descripción de la foto, el nombre del archivo antes de subirlo, y renombra el archivo según el id de la tabla.
Se que si no lo has programado tú, resulta difícil de comprender exactamente lo que hace, pero vamos, yo estoy contento del resultado que da por ahora.
Me falta nada más el tema de hacer los thumbnails, mostrar las galerías y demás, y todo el tema de edición, tanto del moderador, como del propietario de los archivos, a nivel de archivo y de directorio (sí, ya digo directorio y no carpeta ;).
Bueno, creo que ya es hora de irse a la cama, que ya empieza la Tele Tienda con lo de:

en 2 semanas y media usando «Belfor», he perdido 3 centímetros de cintura y 4 de muslos

Un saludo, y ya os lo enseñaré cuando Martín y yo nos pongamos de acuerdo para hacer el CSS para la susodicha página :).
¡A dormir!

Pages: « Anterior 1 2 Siguiente »