• Publicidad

Módulo Video::Info

Así que programas sin strict y las expresiones regulares son otro modo de hablar. Aquí encontrarás respuestas de nivel avanzado, no recomendable para los débiles de corazón.

Notapor zozo666 » 2007-08-30 12:06 @545

¿Con estas líneas solas ya saco la información del vídeo?

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  use Video::Info;

  my $info = Video::Info->new(-file=>'my.mpg');

  $info->fps();
  $info->aspect();
  ## ... see methods below
Coloreado en 0.005 segundos, usando GeSHi 1.0.8.4


Por que por lo que veo en el http://search.cpan.org/~allenday/Video- ... 93/Info.pm es la única forma, ¿hay que agregarle algo más?
zozo666
Perlero nuevo
Perlero nuevo
 
Mensajes: 139
Registrado: 2007-05-26 10:36 @483

Publicidad

Notapor explorer » 2007-08-30 12:30 @562

Todo lo que puede hacer un módulo está descrito en su documentación. En el ejemplo que pones, en la última línea, dice que se pueden usar más métodos que están descritos más abajo, como por ejemplo, title().
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor zozo666 » 2007-08-30 12:54 @579

La verdad q no encuentro el problema, estoy probando hace varias horas y no logro hacer que funcione. Alguna idea?
zozo666
Perlero nuevo
Perlero nuevo
 
Mensajes: 139
Registrado: 2007-05-26 10:36 @483

Notapor explorer » 2007-08-30 13:03 @585

Prueba con este:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/perl -l
use Video::Info;

my $info = Video::Info->new(-file=>'my.mpg');

print $info->title();
print $info->aspect();
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
(cambiando my.mpg por el fichero que quieres analizar).
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor zozo666 » 2007-08-31 08:08 @381

Hola, probé de esa manera pero no hay forma... La verdad no sé por qué no anda y sé que problema de modulo no es, ya que lo estoy usando sin instalar. Acá muestro el código final del script para ver si tiene algún error o algo que no iría:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  #! /usr/bin/perl -w
use lib ('lib');
use Video::Info;

print "content-type: text/html \n\n";

my $prueba= Video::Info->new(-file=>'yo.mpg');
 
print $prueba->width();
print $prueba->fps();
print $prueba->minutes();
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Se ve claramente que lo estoy usando sin instalar el módulo, pero eso es lo único que puede estar fallando. Tengo este directorio "lib/Video/Info.pm" ¿¿puede ser que esté erróneo algo de esto??
zozo666
Perlero nuevo
Perlero nuevo
 
Mensajes: 139
Registrado: 2007-05-26 10:36 @483

Notapor explorer » 2007-08-31 13:46 @615

1.- Te sobran dos espacios delante del '#'. Con ellos, Linux no sabe qué tipo de fichero es ese programa.
2.- Yo quitaría también el espacio que hay después del '!', por si acaso.
3.- Sobra un espacio después de 'text/html'. Es más, yo lo cambiaría de momento por 'text/plain'.
4.- Por la línea anterior (del print) deduzco que ahora lo quieres ejecutar como un CGI. ¿Es así?. Si es así, recuerda que el script se ejecutará en el directorio de trabajo del servidor web, normalmente en /usr/lib/cgi-bin, por lo que deberás indicar, tanto a 'use lib' como a '-file=>' el camino correcto a esos ficheros. De todas formas, te aconsejo que lo ejecutes antes como un programa normal, como estábamos trabajando hasta ahora, desde la línea de comandos ¿o no tienes acceso al entorno de línea de comandos?
5.- Dices que lo ejecutas, ¿no sale nada? ¿sale un error? ¿qué error?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor zozo666 » 2007-08-31 14:31 @647

Paso a explicar: tengo el siguiente script (todos estos scripts trabajados en IIS en texto formato Windows y en Linux en texto formato Unix):
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#! /usr/bin/perl -w
use lib 'lib/';
use Video::Info;

print "content-type: text/html\n\n";

my $info= Video::Info->new(-file=>'video1.MPEG');
 
print "Codec de video : " . $info->vcodec() . "<br>";
print "Dimensions  : " . $info->width() . "x" . $info->height() . "<br>";
#print "Aspect Ratio : " .  $info->aspect() . "<br>";
print "Frames por segundo : " . $info->fps() . "<br>";
print "Duracion de video : " . $info->duration() . "<br>";
print "Canidad de Frames : " . $info->vframes() . "<br>";
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Me está funcionando esto, pero veo errores (esto lo estoy viendo ejecutándolo desde mi servidor IIS, porque desde mi servidor virtual de Linux directamente me muestra la página en blanco):

Use of uninitialized value in -s at lib//Video/Info/MPEG.pm line 117. Use of uninitialized value in -s at lib//Video/Info/MPEG.pm line 117. Use of uninitialized value in addition (+) at lib//Video/Info/MPEG/System.pm line 91. Use of uninitialized value in string eq at lib//Video/Info/MPEG.pm line 196. Use of uninitialized value in addition (+) at lib//Video/Info/MPEG/System.pm line 91. Codec de video : MPEG1 Dimensions : 320x240 Frames por segundo : 24 Duracion de video : 447.037155555556 Canidad de Frames : 10728


Desde "Codec de video" en adelante sale la información. Ahora... Cuando cambio las extensiones me pasa lo siguiente (esto todo en el IIS, vuelvo a repetir que en el Linux no funciona nada de esto):

Con MPEG: ya mostrado arriba;
CON MPG: queda cargando la página (colgada);
Con asf: anda perfecto muestra todo sin ningún error;
Con MOV: muestra todos los valores "0" sin ningún error en pantalla.

Este script lo probé con todos estos formatos y solamente funciona a la perfección con ASF.

Vuelvo a repetir, cuando subo mis script al servidor virtual de Linux (antes cambiándolo a texto Unix) no funcionan para nada. Pero ahora que me decís, ¿cómo es eso de indicarle a "use LIB" y a "-file=>" el camino a esos ficheros? Porque en realidad el problema en Linux debe ser ese. Gracias, hasta luego.
zozo666
Perlero nuevo
Perlero nuevo
 
Mensajes: 139
Registrado: 2007-05-26 10:36 @483

Notapor explorer » 2007-08-31 19:37 @859

Primero pedir disculpas: el módulo Video::Info no se instala desde CPAN por culpa del número de versión que el autor le dio, por lo que hay que hacerlo 'a mano' (siguiendo las instrucciones del README).

Además, la parte de Quicktime necesita que esté instalada la libraría del mismo nombre.

En definitiva, estamos ante un módulo viejo. Lo correspondiente sería mandar un correo al autor para solicitarle que lo arreglara, al menos un poquito.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor explorer » 2007-08-31 19:48 @866

Hay otros módulos que quizás te funcionen mejor. ¿Qué tipo de formato de vídeo quieres controlar?

Entra en CPAN y busca por el nombre de ese formato. Por ejemplo, para el formato MP3 está el módulo MP3::Info.

Quizás te sea más interesante el Image::ExifTool pues es capaz de entender un montón de formatos de imagen, sonido y video.

Y hay alguno más...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor zozo666 » 2007-09-03 11:57 @539

Lo que necesito es algo muy parecido a Video::Info que me permita por ejemplo extraer la calidad de vídeo, el tamaño del vídeo y sobre todas las cosas, la duración del vídeo. ¿Alguno conocido?
zozo666
Perlero nuevo
Perlero nuevo
 
Mensajes: 139
Registrado: 2007-05-26 10:36 @483

AnteriorSiguiente

Volver a Avanzado

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron