Changeset 51912 in spip-zone


Ignore:
Timestamp:
Sep 27, 2011, 11:53:30 AM (8 years ago)
Author:
kent1@…
Message:

Moins de logs inutiles et plus de logs utiles

On déplace le changement de statut de la file d'attente à un endroit un peu mieux lors de l'encodage

On change le champ "metas" en "metadatas" dans la table spip_documents (entre en conflit avec spip_metas?)

La fonction de récupération des infos via Mediainfo nécessite l'id_document

Légères améliorations pour le script d'encodage

Ajout de différentes locutions pour des messages sur les encodages utilisables dans d'autres plugins/applications

On vire la surcharge d'AjaxCallback? … (je ne sais plus à quoi elle servait)

Une borne maximale pour la version de SPIP nécessitée et autres petits remaniements du plugin.xml

On passe en version 0.9.4

Location:
_plugins_/spipmotion
Files:
1 deleted
10 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/spipmotion/base/spipmotion.php

    r51401 r51912  
    5151        $tables_principales['spip_documents']['field']['rotation'] = "INTEGER";
    5252        $tables_principales['spip_documents']['field']['id_orig'] = "BIGINT(21) NOT NULL";
    53         $tables_principales['spip_documents']['field']['metas'] = "TEXT DEFAULT '' NOT NULL";
     53        $tables_principales['spip_documents']['field']['metadatas'] = "TEXT DEFAULT '' NOT NULL";
    5454
    5555        return $tables_principales;
  • _plugins_/spipmotion/base/spipmotion_upgrade.php

    r51401 r51912  
    2121                include_spip('base/create');
    2222                include_spip('base/abstract_sql');
     23                include_spip('inc/acces');
    2324                if (version_compare($current_version,'0.0','<=')){
    2425                        creer_base();
     
    257258                        ecrire_meta($nom_meta_base_version,$current_version='0.7.9');
    258259                }
     260                if (version_compare($current_version,'0.8.0','<')){
     261                        /**
     262                         * On change le champs metas en metadatas
     263                         */
     264                        sql_alter("TABLE spip_documents CHANGE `metas` `metadatas` TEXT DEFAULT '' NOT NULL");
     265                        /**
     266                         * Génération d'un htaccess dans le répertoire script_bash
     267                         */
     268                       
     269                        ecrire_meta($nom_meta_base_version,$current_version='0.8.0');
     270                }
    259271                /**
    260272                 * TODO : générer un htaccess dans le répertoire script_bash/
  • _plugins_/spipmotion/inc/encodage.php

    r51536 r51912  
    1313
    1414function inc_encodage_dist($source,$attente,$format=''){
     15        if(!is_array($GLOBALS['spipmotion_metas'])){
     16                $inc_meta = charger_fonction('meta', 'inc');
     17                $inc_meta('spipmotion_metas');
     18        }
     19       
    1520        /**
    1621         * On vérifie que l'on n'a pas déjà une version dans le format souhaité
     
    7984        $ffmpeg_version = $spipmotion_compiler['ffmpeg_version'] ? $spipmotion_compiler['ffmpeg_version'] : '0.7';
    8085        $rep_dest = sous_repertoire(_DIR_VAR, 'cache-spipmotion');
    81        
    82         /**
    83          * On change le statut d'encodage à en_cours pour
    84          * - changer les messages sur le site (ce media est en cours d'encodage par exemple)
    85          * - indiquer si nécessaire le statut
    86          */
    87         $infos_encodage = array('debut_encodage' => time());
    88         sql_updateq("spip_spipmotion_attentes",array('encode'=>'en_cours','infos' => serialize($infos_encodage)),"id_spipmotion_attente=".intval($doc_attente));
    8986
    9087        $attente = sql_fetsel("*","spip_spipmotion_attentes","id_spipmotion_attente=".intval($doc_attente));
     
    103100
    104101        $fichier = basename($source['fichier']);
     102
    105103        /**
    106104         * Génération des noms temporaires et finaux
     
    116114        $fichier_log = "$dossier$query.log";
    117115        spip_log("le nom temporaire durant l'encodage est $fichier_temp","spipmotion");
    118 
     116       
    119117        /**
    120118         * Si on n'a pas l'info hasaudio c'est que la récupération d'infos n'a pas eu lieu
     
    123121         */
    124122        if(!$source['hasaudio'] OR !$source['hasvideo']){
     123                spip_log('on récup les infos pour vérif audio','spipmotion');
    125124                $recuperer_infos = charger_fonction('spipmotion_recuperer_infos','inc');
    126125                $recuperer_infos($source['id_document']);
    127126                $source = sql_fetsel('*','spip_documents','id_document ='.intval($source['id_document']));
    128127                if(!$source['hasaudio'] OR !$source['hasvideo']){
     128                        spip_log('La source n a ni audio ni video','spipmotion');
    129129                        return false;
    130130                }
     
    213213                        if(($source['audiochannels'] > 2) && ($encodeur != 'ffmpeg2theora')){
    214214                                $samplerate = $source['audiosamplerate'];
    215                                 spip_log($acodec,'spipmotion');
    216215                                if($acodec == '--acodec libmp3lame'){
    217216                                        $acodec = '--acodec libfaac';
     
    242241                $audiofreq = "--audiofreq ".$samplerate;
    243242                $texte .= "ar=$samplerate\n";
    244 
     243               
    245244                /**
    246245                 * On passe en stereo ce qui a plus de 2 canaux et ce qui a un canal et dont
     
    269268        }
    270269       
     270        /**
     271         * On change le statut d'encodage à en_cours pour
     272         * - changer les messages sur le site (ce media est en cours d'encodage par exemple)
     273         * - indiquer si nécessaire le statut
     274         */
     275        $infos_encodage = array('debut_encodage' => time());
     276        sql_updateq("spip_spipmotion_attentes",array('encode'=>'en_cours','infos' => serialize($infos_encodage)),"id_spipmotion_attente=".intval($doc_attente));
     277
    271278        /**
    272279         * Encodage
     
    481488
    482489        if($encodage_ok && file_exists(get_spip_doc($source['fichier']))){
    483                 spip_log('on ajoute le document dans la base','spipmotion');
    484490                /**
    485491                 * Ajout du nouveau document dans la base de donnée de SPIP
  • _plugins_/spipmotion/inc/spipmotion_mediainfo.php

    r51536 r51912  
    1414 * @param string $chemin
    1515 */
    16 function inc_spipmotion_mediainfo_dist($chemin){
     16function inc_spipmotion_mediainfo_dist($chemin,$id_document,$only_cover=false){
    1717        $infos = array();
    1818        if(file_exists($chemin)){
     
    2323                foreach($tracks as $track => $info){
    2424                        $metas[$track] = $info;
    25                         //spip_log($info,'spipmotion');
    2625                        if($track == 'track type="General"'){
    27                                 $infos['titre'] = $info[0]['Title'][0] ? $info[0]['Title'][0] : $info[0]['Movie_name'][0];
     26                                $infos['titre'] = $info[0]['Title'][0] ? $info[0]['Title'][0] : ($info[0]['Movie_name'][0] ? $info[0]['Movie_name'][0] : $info[0]['Track_name '][0]);
    2827                                $infos['descriptif'] = $info[0]['Description'][0] ? $info[0]['Description'][0] : $info[0]['desc'][0];
    2928                                $infos['credits'] .= $info[0]['Performer'][0]? $info[0]['Performer'][0].($info[0]['Copyright'][0] ? ' - '.$info[0]['Copyright'][0] : '') : $info[0]['Copyright'][0] ;
     
    5756                $infos['hasvideo'] = 'non';
    5857        }
    59         $infos['metas'] = serialize($metas);
     58        $infos['metadatas'] = serialize($metas);
    6059        return $infos;
    6160}
  • _plugins_/spipmotion/inc/spipmotion_recuperer_infos.php

    r51536 r51912  
    6969        if(!$GLOBALS['meta']['spipmotion_mediainfo_casse']){
    7070                $mediainfo = charger_fonction('spipmotion_mediainfo','inc');
    71                 $infos = $mediainfo($movie_chemin);
     71                $infos = $mediainfo($movie_chemin,$id_document);
    7272        }
    7373        else if(class_exists('ffmpeg_movie')){
  • _plugins_/spipmotion/lang/spipmotion_en.php

    r51592 r51912  
    9494        'info_document_encodage_en_cours_plusieurs' => 'This document is waiting for encoding in @nb@ formats.',
    9595        'info_document_encodage_en_cours_unique' => 'This document is waiting for encoding in one format.',
     96        'info_document_encodage_en_erreur' => 'The encoding of this document contains an error.',
     97        'info_document_encodage_en_erreur_contacter' => 'Please contact an administrator to warn him.',
     98        'info_document_encodage_en_erreur_relancer_url' => 'You can restart the encoding <a href="@url@">on this page</a>.',
    9699        'info_document_encodage_realise' => 'It has ever been encoded in the next formats: ',
     100        'info_document_encodage_termine' => 'The encoding of this document is finished.',
     101        'info_document_encodage_termine_recharge' => 'You can reload the page to see the definitive content.',
    97102        'info_document_encode_formats' => 'This document has been encoded in: ',
    98103        'info_duree' => 'Duration: ',
  • _plugins_/spipmotion/lang/spipmotion_fr.php

    r51591 r51912  
    9292        'info_document_encodage_en_cours_plusieurs' => 'Ce document est en attente d\'encodage en @nb@ formats.',
    9393        'info_document_encodage_en_cours_unique' => 'Ce document est en attente d\'encodage en un format.',
     94        'info_document_encodage_en_erreur' => 'L\'encodage de ce document est en erreur.',
     95        'info_document_encodage_en_erreur_contacter' => 'Veuillez contacter un administrateur pour le lui signaler.',
     96        'info_document_encodage_en_erreur_relancer_url' => 'Vous pouvez relancer l\'encodage sur <a href="@url@">cette page</a>.',
    9497        'info_document_encodage_realise' => 'Il a déjà été encodé en : ',
     98        'info_document_encodage_termine' => 'L\'encodage de ce document est termine.',
     99        'info_document_encodage_termine_recharge' => 'Vous pouvez recharger la page pour voir le contenu définitif.',
    95100        'info_document_encode_formats' => 'Ce document a été encodé en : ',
    96101        'info_duree' => 'Durée : ',
  • _plugins_/spipmotion/plugin.xml

    r51401 r51912  
    11<plugin>
    2         <nom>SPIPmotion</nom>
     2        <nom>SPIPMotion</nom>
    33        <slogan>
    44                <multi>
     
    1010        <auteur>kent1 (kent1@arscenic.info)</auteur>
    1111        <licence>GNU/GPL v3</licence>
    12         <version>0.9.3</version>
    13         <version_base>0.7.9</version_base>
     12        <description>
     13                <multi>
     14                        [fr] Faire un site à la Youtube ou Dailymotion ...
     15                        [en] Create a Youtube or Dailymotion like website...
     16                </multi>
     17        </description>
     18        <lien>http://www.mediaspip.net/technical-documentation/plugins-used-by-mediaspip/spipmotion/</lien>
     19       
     20        <version>0.9.4</version>
     21        <version_base>0.8.0</version_base>
    1422        <etat>test</etat>
    15         <description>
    16         <multi>
    17         [fr] Faire un Youtube ou Dailymotion avec SPIP...
    18         [en] Create a Youtube or Dailymotion with SPIP...
    19         </multi>
    20         </description>
    21         <lien>http://kent1.sklunk.net/spip.php?article93</lien>
    22         <options>
    23         spipmotion_options.php
    24         </options>
    25         <fonctions>
    26         spipmotion_fonctions.php
    27         </fonctions>
    28         <prefix>
    29         spipmotion
    30         </prefix>
     23        <prefix>spipmotion</prefix>
     24       
     25        <options>spipmotion_options.php</options>
     26        <fonctions>spipmotion_fonctions.php</fonctions>
     27       
    3128        <pipeline>
    3229                <nom>editer_contenu_objet</nom>
     
    8784                <inclure>spipmotion_pipelines.php</inclure>
    8885        </pipeline>
     86       
    8987        <bouton id='spipmotion_file' parent='naviguer'>
    9088                <titre>spipmotion:titre_page_file</titre>
     
    107105                <url>ffmpeg_infos</url>
    108106        </bouton>
     107       
    109108        <install>base/spipmotion_upgrade.php</install>
    110109
    111         <necessite id="SPIP" version="[2.1.1;]" />
     110        <necessite id="SPIP" version="[2.1.1;2.1.99]" />
    112111        <necessite id='cfg' version='[1.13;]' />
    113112        <necessite id='saisies' version='[1.0;]' />
     
    117116        <necessite id="jqueryui" version="[1.8.5;]" />
    118117        <necessite id="lib:flot" src="http://flot.googlecode.com/files/flot-0.6.zip" />
     118       
    119119        <utilise id='podcast' />
    120120        <utilise id='fonctions_images' version='[0.5.1]' />
     121       
    121122        <categorie>multimedia</categorie>
    122123</plugin>
  • _plugins_/spipmotion/script_bash/spipmotion.sh

    r50666 r51912  
    11#!/bin/bash
    2 # SPIPmotion : A shell program to convert multimedia files
    3 # Version 0.3.3
    4 #
    5 # Dependancies :
    6 #   * ffmpeg with libmp3lame support
     2# SPIPMotion :
     3# Un programme shell de conversion de fichiers audios et vidéos
     4#
     5# Version 0.3.4
     6#
     7# Dependances :
     8#   * ffmpeg avec le support de libmp3lame
    79#       * ffmpeg2theora
    810#
    9 # Credits prealables : aozeo - http://www.aozeo.com/blog/40-linux-convertir-videos-flv-ffmpeg-telephone-portable
    10 
    11 VERSION="0.3.3"
     11# Credits préalables : aozeo - http://www.aozeo.com/blog/40-linux-convertir-videos-flv-ffmpeg-telephone-portable
     12#
     13# Pour l'installation des binaires nécessaires :
     14# -* Compilation de librairies nécessaires à FFMpeg :
     15#    http://technique.arscenic.org/compilation-de-logiciel/article/compilation-et-installation-de
     16# -* Compilation de FFMpeg lui-même :
     17#    http://technique.arscenic.org/compilation-de-logiciel/article/compiler-ffmpeg
     18# -* Compilation de FFMpeg2theora :
     19#    http://technique.arscenic.org/compilation-de-logiciel/article/ffmpeg2theora
     20#
     21
     22VERSION="0.3.4"
    1223
    1324################ LOCALISATION #####################
     
    1526SPIPmotion v$VERSION
    1627
    17 Utilisation : ./spipmotion arguments
     28Utilisation : ./spipmotion.sh arguments
    1829ou arguments doit inclure le fichier source et le fichier de sortie et éventuellement :
    1930* la taille de la video ex : --size 320x240
     
    3243##  Ce programme recquiert une version de ffmpeg                                       ##
    3344##        compilée avec le support libmp3lame                                          ##
    34 ## Voir http://technique.arscenic.org/compilation-de-logiciel/article/compiler-ffmpeg1 ##
     45## Voir http://technique.arscenic.org/compilation-de-logiciel/article/compiler-ffmpeg ##
    3546#########################################################################################
    3647"
     
    5667
    5768FORCE="false";
     69
     70if [ -z "$log" ];then
     71        log="/dev/null"
     72fi
     73
    5874while test -n "${1}"; do
    5975        case "${1}" in
     
    133149        fi
    134150esac
    135 
    136 if [ -z "$log" ];then
    137         log="/dev/null"
    138 fi
    139151       
    140 function spipmotion_encodage_ffmpeg (){
     152spipmotion_encodage_ffmpeg (){
    141153
    142154        ########## TRAITEMENT DES ARGUMENTS ###############
     
    207219        On encode un son
    208220        "
    209                 echo "nice -19 $chemin -i $entree $acodec $audiobitrate_quality_ffmpeg $audiofreq_ffmpeg $ac_ffmpeg -y $sortie 2> $log >> $log" >> $log
    210                 nice -19 "$chemin" -i $entree $acodec $audiobitrate_quality_ffmpeg $audiofreq_ffmpeg $ac_ffmpeg -y $sortie 2> $log >> $log ;;
     221                echo "nice -19 $chemin -i $entree $acodec $audiobitrate_quality_ffmpeg $audiofreq_ffmpeg $ac_ffmpeg -y $sortie 2>> $log >> $log" > $log
     222                nice -19 "$chemin" -i $entree $acodec $audiobitrate_quality_ffmpeg $audiofreq_ffmpeg $ac_ffmpeg -y $sortie 2>> $log >> $log ;;
    211223          *".flv"|*".mp4"|*".ogv"|*".mov"|*".m4v"|*".webm" )
    212224                echo "SPIPmotion v$VERSION
     
    214226        On encode une video
    215227        "
    216                 echo "nice -19 $chemin -i $entree $acodec $audiobitrate_quality_ffmpeg $ac_ffmpeg $audiofreq_ffmpeg $pass $fps_ffmpeg -s $size $vcodec $bitrate_ffmpeg $params_sup $fpre -y $sortie 2> $log >> $log" >> $log
    217                 nice -19 $chemin -i $entree $acodec $audiobitrate_quality_ffmpeg $ac_ffmpeg $audiofreq_ffmpeg $pass $fps_ffmpeg -s $size $vcodec $bitrate_ffmpeg $params_sup $fpre -y $sortie  2> $log >> $log ;;
     228                echo "nice -19 $chemin -i $entree $acodec $audiobitrate_quality_ffmpeg $ac_ffmpeg $audiofreq_ffmpeg $pass $fps_ffmpeg -s $size $vcodec $bitrate_ffmpeg $params_sup $fpre -y $sortie 2>> $log >> $log" >> $log
     229                nice -19 $chemin -i $entree $acodec $audiobitrate_quality_ffmpeg $ac_ffmpeg $audiofreq_ffmpeg $pass $fps_ffmpeg -s $size $vcodec $bitrate_ffmpeg $params_sup $fpre -y $sortie  2>> $log >> $log
    218230        esac
    219231        exit $?
    220232}
    221233
    222 function spipmotion_encodage_ffmpeg2theora ()
     234spipmotion_encodage_ffmpeg2theora ()
    223235{
    224236        echo "SPIPmotion v$VERSION
     
    231243}
    232244
    233 function ffmpeg_infos ()
     245ffmpeg_infos ()
    234246{
    235247        [ -z "$info" ] && return 1
  • _plugins_/spipmotion/spipmotion_pipelines.php

    r51851 r51912  
    210210                         */
    211211                        $fichier = basename(get_spip_doc($document['fichier']));
    212                         spip_log($fichier,'spipmotion');
    213212                        $racine = preg_replace('/-encoded-(\d)/','',substr($fichier,0,-(strlen($document['extension'])+1)));
    214213                        $racine = preg_replace('/-encoded-(\d+)/','',$racine);
Note: See TracChangeset for help on using the changeset viewer.