Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

Sortir le format, durée etc d'une vidéo avec php ?

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
XoSt
WRInaute accro
WRInaute accro

Inscrit le: 06 Oct 2003
Messages: 1407

URL permanente de ce messagePosté le : Ven Jan 27, 2006 0:26    Sujet du message: Sortir le format, durée etc d'une vidéo avec php ?

Bonjour,

Comment sortir le format, la durée, et toutes les informations d'une vidéo avec php ?

Merci
 
XoSt Visiter le site web du posteur
biddybulle
WRInaute accro
WRInaute accro

Inscrit le: 30 Mai 2005
Messages: 1352

URL permanente de ce messagePosté le : Ven Jan 27, 2006 1:07    Sujet du message: Sortir le format, durée etc d'une vidéo avec php ?

oui si quelqu un a je suis interessé aussi

Enfin, je pense pas vraiment que cela soit possible mais bon
 
biddybulle Visiter le site web du posteur
XoSt
WRInaute accro
WRInaute accro

Inscrit le: 06 Oct 2003
Messages: 1407

URL permanente de ce messagePosté le : Ven Jan 27, 2006 1:09    Sujet du message: Sortir le format, durée etc d'une vidéo avec php ?

Tout est possible...
 
XoSt Visiter le site web du posteur
XoSt
WRInaute accro
WRInaute accro

Inscrit le: 06 Oct 2003
Messages: 1407

URL permanente de ce messagePosté le : Ven Jan 27, 2006 2:00    Sujet du message: Sortir le format, durée etc d'une vidéo avec php ?

J'ai trouvé ça mais je n'arrive pas à m'en servir... une idée ?

Code:
define(GUID_ASF_HEADER,
" \x30\x26\xb2\x75\x8e\x66\xcf\x11\xa6\xd9
\x00\xaa\x00\x62\xce\x6c");
define(GUID_ASF_META_INFO,
" \x40\xa4\xd0\xd2\x07\xe3\xd2\x11\x97\xf0
\x00\xa0\xc9\x5e\xa8\x50");
define(GUID_ASF_FILE_PROPERTIES,
" \xa1\xdc\xab\x8c\x47\xa9\xcf\x11\x8e\xe4
\x00\xc0\x0c\x20\x53\x65");
define(GUID_ASF_STREAM,
" \x91\x07\xdc\xb7\xb7\xa9\xcf\x11\x8e\xe6
\x00\xc0\x0c\x20\x53\x65");
define(GUID_ASF_AUDIO_STREAM,
" \x40\x9e\x69\xf8\x4d\x5b\xcf\x11\xa8\xfd
\x00\x80\x5f\x5c\x44\x2b");
define(GUID_ASF_VIDEO_STREAM,
" \xc0\xef\x19\xbc\x4d\x5b\xcf\x11\xa8\xfd
\x00\x80\x5f\x5c\x44\x2b");


// PHP can't handle unsigned 32 bit integers
// this function forces any overflowed ulong into floats
function uint32($n) {
if($n < 0) { // signed
$n += 4294967296;
}
return $n;
}

function read_asf_int64($file) {
$data = fread($file, 8);
$v = unpack("V2name", $data);
$int64 = uint32($v['name2']) * 4294967296 + uint32($v['name1']);
return $int64;
}

function read_asf_long($file) {
$data = fread($file, 4);
$v = unpack("Vname", $data);
return uint32($v['name']);
}

function read_asf_short($file) {
$data = fread($file, 2);
$v = unpack("vname", $data);
return $v['name'];
}

function read_asf_str($file) {
$data = fread($file, 2);
$v = unpack("vname", $data);
$len = $v['name'];
$data = fread($file, $len);
// convert UCS-16 to UTF-8 by dropping second byte
$s = '';
for($i = 0; $i < $len; $i += 2) {
$s .= $data{$i};
}
return $s;
}

function read_asf_guid($file) {
$guid = fread($file, 16);
return $guid;
}

function analyse_asf_file($file_name) {
$props = array();
$file = fopen($file_name, "rb");
$guid = read_asf_guid($file);
if($guid == GUID_ASF_HEADER) {
$offset = 30;
$chuck_length = read_asf_int64($file);
$num_chunks = read_asf_long($file);
$unknown = read_asf_short($file);
for($i = 0; $i < $num_chunks; $i++) {
fseek($file, $offset);
$guid = read_asf_guid($file);
$chuck_length = read_asf_int64($file);
read_asf_header_chunk($file, $guid, &$props);
$offset += $chuck_length;
}
}
fclose($file);
return $props;
}

function read_asf_header_chunk($file, $guid, &$props) {
switch($guid) {
case GUID_ASF_FILE_PROPERTIES:
read_asf_file_properties($file, $props);
break;
case GUID_ASF_META_INFO:
read_asf_meta_info($file, $props);
break;
case GUID_ASF_STREAM:
read_stream_obj($file, $props);
break;
}
}

function read_asf_file_properties($file, &$props) {
$props['client_guid'] = read_asf_guid($file);
$props['file_size'] = read_asf_int64($file);
$props['file_creation_time'] = read_asf_int64($file);
$props['number_of_packets'] = read_asf_int64($file);
$props['end_position'] = read_asf_int64($file);
$props['duration'] = read_asf_int64($file);
$props['start_position'] = read_asf_int64($file);
$props['flags'] = read_asf_long($file);
$props['minimum_pack_size'] = read_asf_long($file);
$props['maximum_pack_size'] = read_asf_long($file);
}

function read_asf_meta_info($file, &$props) {
$num_of_pairs = read_asf_short($file);
for($i = 0; $i < $num_of_pairs; $i++) {
$name = read_asf_str($file);
$spacer = read_asf_short($file);
$value = read_asf_str($file);
$props[$name] = $value;
}
}

function read_stream_obj($file, &$props) {
$stream_type = read_asf_guid($file);
$audio_error_concealment = read_asf_guid($file);
$unknown = read_asf_int64($file);
$type_specific_data_len = read_asf_long($file);
$stream_specific_data_len = read_asf_long($file);
$stream_num = read_asf_short($file);
$unknown = read_asf_long($file);
if($stream_type == GUID_ASF_AUDIO_STREAM) {
$props['format_tag'] = read_asf_short($file);
$props['channels'] = read_asf_short($file);
$props['sample_per_sec'] = read_asf_long($file);
$props['avg_bytes_per_sec'] = read_asf_long($file);
$props['block_align'] = read_asf_short($file);
$props['bits_per_sample'] = read_asf_short($file);
}
else if($stream_type == GUID_ASF_VIDEO_STREAM) {
$props['picture_width'] = read_asf_long($file);
$props['picture_height'] = read_asf_long($file);
$unknown = fread($file, 1);
$bitmapinfoheader_size = read_asf_short($file);
$bitmapinfoheader_size = read_asf_long($file);
$props['bitmap_width'] = read_asf_long($file);
$props['bitmap_height'] = read_asf_long($file);
$props['bitmap_planes'] = read_asf_short($file);
$props['bitmap_bitcount'] = read_asf_short($file);
$props['bitmap_compression'] = read_asf_long($file);
$props['bitmap_sizeimage'] = read_asf_long($file);
$props['bitmap_xpelspermeter'] = read_asf_long($file);
$props['bitmap_ypelspermeter'] = read_asf_long($file);
$props['bitmap_colorused'] = read_asf_long($file);
$props['bitmap_colorimportant'] = read_asf_long($file);
}
}

$props = analyse_asf_file("video3.wmv");
foreach($props as $name => $value) {
echo "$name = $value<br>";
}

print_r($props);
 
XoSt Visiter le site web du posteur
biddybulle
WRInaute accro
WRInaute accro

Inscrit le: 30 Mai 2005
Messages: 1352

URL permanente de ce messagePosté le : Ven Jan 27, 2006 15:21    Sujet du message: Sortir le format, durée etc d'une vidéo avec php ?

pas encore mais je vais étudier cela et je te tiens au jus.

merci
 
biddybulle Visiter le site web du posteur
biddybulle
WRInaute accro
WRInaute accro

Inscrit le: 30 Mai 2005
Messages: 1352

URL permanente de ce messagePosté le : Ven Jan 27, 2006 15:23    Sujet du message: Sortir le format, durée etc d'une vidéo avec php ?

on dirait qu il cherche en ouvront le fichier en lecture hexa à savoir ses informations
 
biddybulle Visiter le site web du posteur
biddybulle
WRInaute accro
WRInaute accro

Inscrit le: 30 Mai 2005
Messages: 1352

URL permanente de ce messagePosté le : Ven Jan 27, 2006 15:38    Sujet du message: Sortir le format, durée etc d'une vidéo avec php ?

Bon déjà pour des fichiers wmv au niveau de la premiere fonction

$guid = read_asf_guid($file);
if($guid == GUID_ASF_HEADER) {

le GUID n'est pas valable, pas de correspondance. ce la doit sans doute marcher uniquement avec des fichiers ASF

donc pas assez d interet il fodrait toutes les videos.
 
biddybulle Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Autres sujets de discussion :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort