Extensions Image, Audio et Vidéo Administration et programmation

Stockage d'une miniature (objets image et vidéo uniquement)

Lorsque vous stockez un objet image ou vidéo dans un format personnalisé, vous avez la possibilité d'enregistrer une miniature de l'image. C'est vous qui définissez la taille et le format de la miniature. Lorsque vous stockez une image dans un format reconnu par l'extension image, celle-ci génère et stocke automatiquement une miniature pour l'objet (au format GIF et d'une taille de 112 x 84 pixels).

Lorsque vous stockez un objet vidéo dans un format personnalisé, vous pouvez également enregistrer une miniature symbolisant l'objet. Si le format de l'objet est reconnu par l'extension vidéo, celle-ci génère et stocke automatiquement une miniature pour l'objet (au format GIF et d'une taille de 108 x 78 pixels).

Si vous ne voulez pas stocker de miniature avec l'objet image ou vidéo dont les attributs sont définis par l'utilisateur, remplacez la référence à la miniature par la valeur NULL ou une chaîne vide.

Générez la miniature dans votre programme car les extensions ne fournissent pas d'API à cette fin. Créez également la structure de la miniature dans votre programme et spécifiez-la dans la fonction UDF.

Les instructions ci-après, incluses dans un programme d'application en langage C, stockent une ligne contenant une séquence vidéo dans une table de base de données. La séquence vidéo source, qui se trouve dans un fichier sur le serveur, est dans un format défini par l'utilisateur. Son contenu reste sur le serveur et la table comporte un pointeur sur ce fichier. Une miniature d'une image vidéo représentative est également enregistrée.

EXEC SQL BEGIN DECLARE SECTION;
long hvStorageType;
         struct  {
        short len;
        char data [4000];
       }hvVidattrs;
struct {
        short len;
       char data[10000];
       }hvThumbnail;
  EXEC SQL END DECLARE SECTION;
 
MMDBVideoAttrs         *pvideoAttr;
 
hvStorageType=MMDB_STORAGE_TYPE_EXTERNAL;
 
pvideoAttr=(MMDBVideoAttrs *)hvVidattrs.data;
strcpy(pvideoAttr>cFormat,"Formatv");
hvVidattrs.len=sizeof(MMDBVideoAttrs);
 
/* Création d'une miniature et affectation des données à la structure de la vidéo */
 
EXEC SQL INSERT INTO EMPLOYEE VALUES(
        '128557',
      'Anne Dupont',
      DB2VIDEO(
          CURRENT SERVER,
          '/Employés/vidéo/adupont.vid',
          :hvStorageType,
          'Séquence vidéo d''Anne',
          :hvVidattrs,
          :hvThumbnail)                     /* Miniature*/
       );


[ Début de page | Page précédente | Page suivante | Table des matières | Index ]