Je sais même pas si on appelle ça des métadonnées pour les vidéos, mais voila mon problème :
J'ai installé PY Gvideo pour pouvoir lire des vidéo en ligne sur YouTube, GoogleVideo ou DailyMotion. Le seul problème c'est que les métadonnées ne suivent pas, le nom de l'auteur est "non disponible"
Qui sait quel logiciel utiliser pour ajouter des métadonnées aux vidéos?
Est-ce que c'est les mêmes numéros de champs que pour les photos?
Merci!
++
Hors ligne
Heu... tu utilises quelle version de gvideo?
Car dans les dernières, tu peux renseigner (manuellement) le champ nom, auteur et description...
Tu peux aussi le faire après l'ajout d'une vidéo...
C'est pas que tu veux faire?
Si tu as un nom d'auteur à mettre sur plusieurs vidéos déjà ajoutées, utilise le panier...
Hors ligne
Merci P@t pour ta réponse...
En fait j'ai avancer dans mes recherche et je passe maintenant par le plugin charlies content que j'essaie de modifier : http://forum.phpwebgallery.net/viewtopi … mp;p=9#125
Je trouve que c'est mieux quand on a la possibilité d'héberger les vidéos... Par contre je ne sais pas comment intégrer des métadonnées à ma vidéo de façon à ce que ça remplisse correctement les champs, comme pour les images... Tu comprends la? Il faudrait que ces métadonnées entre dans la BDD lors de la synchro...
Merci !
Hors ligne
En anglais (désolé): http://www.clir.org/pubs/reports/pub106/video.html
Déjà que les Metadata ne sont pas encore très stables dans le monde de l'image...
8-)
Hors ligne
Hop!
Juste une idée que je viens d'avoir subitement ! (Et oui ça m'arrive)
On a dis que l'auteur d'une vidéo peu être entré lorsque on ajoute la vidéo. Seul problème, lorsque on fait une synchro de tous les éléments (même ceux déjà synchronisés) on pert tout :(
Alors voila, je pensais faire un fichier texte ou quelque chose dans le genre qui se créerait automatiquement lors de l'ajout de la vidéo, dans le même répertoire que la vidéo. Ce fichier contiendrait les "métadata" ou au moins le nom de l'auteur. Il faudrait simplement rajouter, lors de la synchro, un test pour utiliser ce fichier : s'il existe, on récupère le nom de l'auteur et on le met dans la bdd, sinon on continue comme actuellement.
Ca ne gène en rien la synchro...
Vous comprenez?
Pas trés compliqué je pense, et ça peut éviter de gros soucis lors des synchro...
Qu'en pensez vous?
Hors ligne
tipytch a écrit:
on récupère le nom de l'auteur et on le met dans la bdd, ...
Dans le petit fichier, ok.
Mais ce nom y est venu comment dans le petit fichier texte?
8-)
Hors ligne
tipytch a écrit:
je pensais faire un fichier texte ou quelque chose dans le genre qui se créerait automatiquement lors de l'ajout de la vidéo, dans le même répertoire que la vidéo.
Lorsque on ajoute l'image, on supprime la ligne qui met le nom dans la bdd, et on le met dans un fichier texte...
T'es pense quoi?
Hors ligne
Je ne comprends pas où est l'intérêt.
L'ajout d'une vidéo n'altère en rien la base... Le "nom" de l'image reste vide.
A l'affichage d'une image ou d'une vidéo, si le nom dans la base est vide c'est le nom du fichier qui sera affiché en transformant les _ par des espaces.
Créer un fichier lors de la synchro pénaliserait la synchro.
Créer un fichier avec quelle extension? Extension qu'il faudra ignorer des synchros ultérieures. Qui me dit que cette extension n'existera jamais et ne sera jamais incluse dans le processus de synchro?
Ce petit fichier texte apportera quoi de plus?
Si on a quelque chose à indiquer dans la base autant pouvoir le faire pour les vidéos directement via une interface d'admin... J'en reviens donc à la question à quoi servirait ce petit fichier.
Proposer la mise à jour des champs normalement chargés par les Metadatas des images pour tout fichier non image, cela est une idée à creuser peut être...
Quant au nom de l'auteur que tu voulais mettre dans le petit fichier, tu peux le mettre directement dans la base déjà actuellement... Non?
Hors ligne
attends je crois que je m'embrouille...
C'est à l'ajout d'une vidéo par le plugin PY GVideo que l'on rentre le nom de l'auteur, jusque la on est d'accord...
Mais si on synchronise ensuite toute les données, mêmes celles déja synchronisées, on perd cett donnée non?
Hors ligne
Effectivement "embrouillage"...
Tu confonds évolution/problème/besoin.
J'éclaicirai tant que faire ce peut un peu plus tard.
8-)
Hors ligne
Reprenons:
PY Gvideo est un plugin qui crée des petits fichiers textes...
Les extensions générées sont YTube, Gvideo ou dm
Lors de la synchro, comme pour un autre élément la table phpwebgallery_images est renseignée à minima.
Lors de la synchro des métadata, étant donné que ces fichiers textes n'ont pas de métadata, les champs récupérés sont vides (et vides de sens).
Les champs vides vont donc écraser des données de la base.
Pour éviter cela...
1 - Tout de suite après la synchro physique...
2 - Je fais une synchro des métadonnées uniquement sur celles jamais synchronisées... J'écrase donc du vide par du vide.
3 - Je renseigne l'auteur et autres par l'interface de modification d'une image...
Comme pour les métadatas, je ne synchronise toujours que sur des éléments jamais synchronisés, je n'écrase jamais mes données de ma base que cela soit des vidéos ou des images, le pb est le même.
Maintenant...
Problème: Pourquoi quand PhpWebGallery ne trouve que des métadonnés vides, il écrase des données saisies?
Besoin: Une option dans la synchro de métadata, annule et remplace / remplace sauf si déjà renseigné.
Tout champ déjà renseigné (manuellement ou non) ne sera pas écrasé avec le second choix.
Evolution de PY Gvideo: Lors de la définition de la vidéo dans PY Gvideo, avoir un champ auteur et/ou autres...
Si le champ correspondant de base est vide au moment de l'affichage, on affichera celui fourni dans le fichier YTube, Gvideo ou dm
Hors ligne
+5 !
Bonnes idées VDigital !
Je me suis bidouillé un petit truc en attendant tout ça, je mes les données entrées par PY GVideo dans une table que j'ai créé, et lorsque j'affiche la page picture.php, je regarde si la vidéo existe dans ma table. Si elle existe j'affiche les données de ma tables, sinon celle normal.
Ca ne change rien par rapport au fonctionnement de pwg, seul truc c'est que la bdd ne sera pas écrasée. C'est vrai que ça aurait été plus simple de faire comme tu dis...
Mais maintenant que c'est fait et que ça marche, je laisse!
Merci ++
Hors ligne
Et bien entendu tu partages...
8-)
Hors ligne
euh... c'est que c'estma première vrai modification, alors j'espère qu'il n'y a pas trop de bugs :$
Alors c'est partie :
1 - je crée ma table : depuis PhpMyAdmin
-- -- Structure de la table `phpwebgallery_perso_metadata` -- CREATE TABLE `phpwebgallery_perso_metadata` ( `id` int(11) NOT NULL auto_increment, `file` varchar(255) collate latin1_general_ci NOT NULL, `name` varchar(255) collate latin1_general_ci NOT NULL, `parent` varchar(255) collate latin1_general_ci NOT NULL, `author` varchar(255) collate latin1_general_ci NOT NULL, `date_creation` date NOT NULL, `description` varchar(255) collate latin1_general_ci NOT NULL, `hauteur` smallint(6) NOT NULL, `largeur` smallint(6) NOT NULL, `poids` smallint(6) NOT NULL, KEY `id` (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=6 ;
2 - je modifie le picture.php
Aprés
// legend if (isset($picture['current']['comment']) and !empty($picture['current']['comment'])) { $template->assign_block_vars( 'legend', array( 'COMMENT_IMG' => nl2br($picture['current']['comment']) )); $header_infos['COMMENT'] = strip_tags($picture['current']['comment']); }
Ajouter
//MODIF AFFICHAGE METADATA PAR TABLE PHPWEBGALLERY_PERSO_METADATA $reponse = mysql_query("SELECT file, parent, description FROM phpwebgallery_perso_metadata"); while ($donnees = mysql_fetch_array($reponse) ) { if($donnees['file']==$page['image_id']) { $template->assign_block_vars( 'legend', array( 'COMMENT_IMG' => nl2br($donnees['description']) )); $header_infos['COMMENT'] = strip_tags($donnees['description']); } } //FIN MODIF
---------------------------
Aprés
else { $infos['INFO_AUTHOR'] = l10n('N/A'); }
Ajouter
//MODIF AFFICHAGE METADATA PAR TABLE PHPWEBGALLERY_PERSO_METADATA $reponse = mysql_query("SELECT file, parent, author FROM phpwebgallery_perso_metadata"); while ($donnees = mysql_fetch_array($reponse) ) { if($donnees['file']==$page['image_id']) { $infos['INFO_AUTHOR']=$donnees['author']; } } //FIN MODIF
---------------------------
Aprés
else { $infos['INFO_CREATION_DATE'] = l10n('N/A'); }
Ajouter
//MODIF AFFICHAGE METADATA PAR TABLE PHPWEBGALLERY_PERSO_METADATA $reponse = mysql_query("SELECT file, parent, date_creation FROM phpwebgallery_perso_metadata"); while ($donnees = mysql_fetch_array($reponse) ) { if($donnees['file']==$page['image_id']) { $val = format_date($donnees['date_creation']); $url = make_index_url( array( 'chronology_field'=>'created', 'chronology_style'=>'monthly', 'chronology_view'=>'list', 'chronology_date' => explode('-', $picture['current']['date_creation']) ) ); $infos['INFO_CREATION_DATE'] = '<a href="'.$url.'" rel="nofollow">'.$val.'</a>'; } } //FIN MODIF
---------------------------
Aprés
else { $infos['INFO_DIMENSIONS'] = l10n('N/A'); }
Ajouter
//MODIF AFFICHAGE METADATA PAR TABLE PHPWEBGALLERY_PERSO_METADATA $reponse = mysql_query("SELECT file, parent, hauteur, largeur FROM phpwebgallery_perso_metadata"); while ($donnees = mysql_fetch_array($reponse) ) { if($donnees['file']==$page['image_id']) { $infos['INFO_DIMENSIONS'] = $donnees['largeur'].'*'.$donnees['hauteur']; } } //FIN MODIF
---------------------------
Aprés
else { $infos['INFO_FILESIZE'] = l10n('N/A'); }
Ajouter
//MODIF AFFICHAGE METADATA PAR TABLE PHPWEBGALLERY_PERSO_METADATA $reponse = mysql_query("SELECT file, parent, poids FROM phpwebgallery_perso_metadata"); while ($donnees = mysql_fetch_array($reponse) ) { if($donnees['file']==$page['image_id']) { $infos['INFO_FILESIZE']=$donnees['poids']; } } //FIN MODIF
La suite au prochain post...
Hors ligne