Show Menu
SUJETS×

Chemin

Cette section contient des informations sur la mesure des vidéos sous iOS au moyen de la mesure Jalon.
Au cours de la lecture vidéo, de fréquents appels de « pulsation » sont envoyés à ce service afin de mesurer la durée de lecture. Ces appels de pulsation sont envoyés toutes les dix secondes, ce qui se traduit par des mesures d’engagement vidéo granulaires et par des rapports d’abandons vidéo plus précis. Pour plus d’informations, voir Mesures audio et vidéo dans Adobe Analytics .
Le processus général de mesure vidéo se ressemble sur toutes les plateformes. Cette section donne une vue d’ensemble des tâches du développeur et fournit des exemples de code.

Mise en correspondance des événements du lecteur avec les variables Analytics

Le tableau suivant répertorie les données multimédias envoyées à Analytics. Utilisez des règles de traitement pour mapper les données contextuelles à une variable Analytics.
  • a.media.name
    (Obligatoire) Collecte le nom de la vidéo, comme spécifié dans la mise en œuvre, lorsqu’un visiteur affiche une vidéo d’une certaine manière. Vous pouvez ajouter des classifications pour cette variable.
    (Facultatif) La variable Insight personnalisé fournit des informations sur le cheminement vidéo.
    • Type de variable : eVar
    • Délai d’expiration par défaut : Visite
    • Insight personnalisé (s.prop, utilisé pour le cheminement vidéo)
  • a.media.name
    (Facultatif) Fournit des informations de cheminement vidéo. Le cheminement doit être activé par le service à la clientèle pour cette variable.
    • Type de variable : Insight personnalisé (s.prop)
    • Type d’événement : Insight personnalisé (s.prop)
  • a.media.segment
    (Obligatoire) Collecte des données de segments de vidéos, notamment le nom du segment et l’ordre d’apparition du segment dans la vidéo. Cette variable est renseignée en activant la variable segmentByMilestones lors du suivi automatique des événements du lecteur ou en configurant un nom de segment personnalisé lors du suivi manuel des événements du lecteur. Par exemple, lorsqu’un visiteur affiche le premier segment dans une vidéo, il est possible que SiteCatalyst collecte les 1:M:0-25 dans l’eVar Segments :
    La méthode par défaut de collecte des données sur les vidéos collecte les données aux points suivants :
    • début de la vidéo (lecture)
    • début du segment
    • fin de la vidéo (arrêt) Analytics compte l’affichage du premier segment au début du segment, lorsque le visiteur commence la lecture. Les affichages de segments suivants commencent au démarrage du segment.
    • Type de variable : eVar
    • Délai d’expiration par défaut : page vue
  • a.contentType
    Collecte les données sur le type de contenu affiché par un visiteur. Les envois d’accès par mesures vidéo se voient attribuer un type de contenu video . Cette variable ne doit pas être exclusivement réservée au suivi vidéo. Les autres types de contenu des rapports de contenu utilisant la même variable vous permettent d’analyser la distribution des visiteurs par rapport aux différents types de contenu. Par exemple, vous pouvez baliser les types de contenu en utilisant des valeurs telles que « article » ou « page de produits » à l’aide de cette variable. Du point de vue des mesures vidéo, le type de contenu permet d’identifier les visiteurs de vidéos et de calculer les taux de conversion vidéo.
    • Type de variable : eVar
    • Délai d’expiration par défaut : page vue
  • a.media.timePlayed
    Compte le temps de lecture vidéo passé, en secondes, depuis le dernier processus de collecte de données (requêtes d’images).
    • Type de variable : Evénement
    • Type : compteur
  • a.media.view
    Indique qu’un visiteur a visionné une partie d’une vidéo. Cependant, cette mesure ne fournit aucune information quant au pourcentage de la vidéo que le visiteur a regardé (ni la partie visionnée).
    • Type de variable : Evénement
    • Type : compteur
  • a.media.segmentView
    Indique qu’un visiteur a visionné une partie d’un segment de vidéo. Cependant, cette mesure ne fournit aucune information quant au pourcentage de la vidéo que le visiteur a regardée (ni la partie visionnée).
    • Type de variable : Evénement
    • Type : compteur
  • a.media.complete
    Indique qu’un utilisateur a visionné une vidéo dans son intégralité. Par défaut, la fin de l’événement est mesurée 1 seconde avant la fin de la vidéo. Pendant la mise en œuvre, vous pouvez spécifier combien de secondes à partir de la fin de la vidéo vous souhaitez considérer comme une lecture intégrale. Pour les vidéos en direct et d’autres diffusions sans fin définie, vous pouvez indiquer un point personnalisé auquel la mesure se termine, par exemple, une durée spécifique visionnée.
    • Type de variable : Evénement
    • Type : compteur

Configuration des paramètres multimédias

Configurez un objet ADBMediaSettings avec les paramètres que vous souhaitez pour suivre les vidéos :
ADBMediaSettings *mediaSettings = [ADBMobile mediaCreateSettingsWithName:MEDIA_NAME  
length:MEDIA_LENGTH playerName:PLAYER_NAME playerID:PLAYER_ID]; 
 
// milestone tracking. Use either standard milestones (percentage of total length) 
// or offset milestones (seconds elapsed from the beginning of the video) 
mediaSettings.milestones = @"25,50,75"; 
mediaSettings.segmentByMilestones = YES; 
 
mediaSettings.offsetMilestones = @"60,120"; 
mediaSettings.segmentByOffsetMilestones = YES; 
 
// seconds tracking - sends a hit every x seconds 
mediaSettings.trackSeconds = 30; // sends a hit every 30 seconds 
 
// open the video 
[ADBMobile mediaOpenWithSettings:mediaSettings callback:nil]; 
 
// You are now ready to play the video, for example, [movieViewController.moviePlayer play]; 
// Note the mediaPlay, mediaStop and mediaClose methods are called in the 
// event handlers described in the next section

Suivi des événements du lecteur

Pour mesurer la lecture de vidéos, appelez les méthodes mediaPlay , mediaStop , et mediaClose aux moments opportuns. Par exemple, lorsque le lecteur est en pause : mediaStop . mediaPlay est appelé lorsque la lecture démarre ou reprend.
L’exemple suivant montre comment configurer des notifications et appeler des méthodes multimédias pour mesurer les vidéos :
// configure notifications for when the video is finished, and when the 
media playback state changes 
 
- (void) configureNotifications:(MPMoviePlayerController *) movieController { 
 [[NSNotificationCenter defaultCenter] 
  addObserver: self 
  selector: @selector(mediaFinishedCallback:) 
  name: MPMoviePlayerPlaybackDidFinishNotification 
  object: movieController]; 
  
 [[NSNotificationCenter defaultCenter] 
  addObserver: self 
  selector: @selector(mediaPlaybackChangedCallback:) 
  name: MPMoviePlayerPlaybackStateDidChangeNotification 
  object: movieController]; 
} 
 
// define your notification callbacks. 
 
- (void) mediaFinishedCallback: (NSNotification*) notification { [ADBMobile mediaClose:MEDIA_NAME];} 
 
- (void) mediaPlaybackChangedCallback: (NSNotification*) notification { 
 MPMoviePlayerController *mediaController = notification.object; 
 if (mediaController.playbackState == MPMoviePlaybackStatePlaying) { 
  [ADBMobile mediaPlay:MEDIA_NAME offset: isnan(mediaController.currentPlaybackTime) ? 0.0 : mediaController.currentPlaybackTime]; 
 } 
 else if (mediaController.playbackState == MPMoviePlaybackStateSeekingBackward) { 
  [ADBMobile mediaStop:MEDIA_NAME offset:mediaController.currentPlaybackTime]; 
 } 
 else if (mediaController.playbackState == MPMoviePlaybackStateSeekingForward) { 
  [ADBMobile mediaStop:MEDIA_NAME offset:mediaController.currentPlaybackTime]; 
 } 
 else if (mediaController.playbackState == MPMoviePlaybackStatePaused) { 
  [ADBMobile mediaStop:MEDIA_NAME offset:mediaController.currentPlaybackTime]; 
 } 
 else if (mediaController.playbackState == MPMoviePlaybackStateInterrupted) { 
  [ADBMobile mediaStop:MEDIA_NAME offset:mediaController.currentPlaybackTime]; 
 } 
 else if (mediaController.playbackState == MPMoviePlaybackStateStopped) { 
  [ADBMobile mediaStop:MEDIA_NAME offset:mediaController.currentPlaybackTime]; 
 } 
}

Classes

Classe : ADBMediaSettings

bool segmentByMilestones; 
bool segmentByOffsetMilestones; 
double length; 
NSString *channel; 
NSString *name; 
NSString *playerName; 
NSString *playerID; 
NSString *milestones; 
NSString *offsetMilestones; 
NSUInteger trackSeconds; 
NSUInteger completeCloseOffsetThreshold; 
// settings used for ad tracking. For  
bool isMediaAd; 
double parentPodPosition; 
NSString *CPM; 
NSString *parentName; 
NSString *parentPod; 

Classe : ADBMediaState

bool ad; 
bool clicked; 
bool complete; 
bool eventFirstTime; 
double length; 
double offset; 
double percent; 
double segmentLength; 
double timePlayed; 
double timePlayedSinceTrack; 
double timestamp; 
NSDate *openTime  
NSString *name 
NSString *playerName 
NSString *mediaEvent 
NSString *segment 
NSUInteger milestone 
NSUInteger offsetMilestone 
NSUInteger segmentNum 
NSUInteger eventType

Références pour les méthodes et classes de mesure d’éléments multimédias

  • mediaCreateSettings​WithName:​length:​playerName:​playerID:
    Renvoie un objet ADBMediaSettings avec les paramètres spécifiés.
    • Voici la syntaxe de cette méthode :
      +(ADBMediaSettings *) mediaCreateSettingsWithName:(NSString *)name
                                                 length:(double)length
                                              playerName:(NSString *)playerName
                                               playerID:(NSString *)playerID;
      
      
    • Voici l’exemple de code pour cette méthode :
      ADBMediaSettings *myCatSettings =
            [ADBMobile mediaCreateSettingsWithName:@"catVideo"                                               length:85
                                        playerName:@"catVideoPlayer"
                                          playerID:@"catPlayerId"]; 
      
      
  • mediaAdCreateSettings​WithName:​length:​playerName:​parentName:​parentPod:​parentPodPosition:​CPM:
    Renvoie un objet ADBMediaSettings à utiliser pour le suivi d’une vidéo publicitaire.
    • Voici la syntaxe de cette méthode :
      + (ADBMediaSettings *) mediaAdCreateSettingsWithName:(NSString *)name
                                                    length:(double)length   
                                                playerName:(NSString *)playerName
                                                parentName:(NSString *)parentName
                                                 parentPod:(NSString *)parentPod
                                        parentPodPosition:(double)parentPodPosition
                                                      CPM:(NSString *)CPM; 
      
      
    • Voici l’exemple de code pour cette méthode :
        ADBMediaSettings *mySettings = 
             [ADBMobile mediaAdCreateSettingsWithName:@"ad"                                       length:30
                                           playerName:@"adPlayer"
                                           parentName:@"catVideo"
                                           parentPod:@"catCollection"
                                           parentPodPosition:2
                                                        CPM:nil];
      
      
  • mediaOpenWithSettings:​callback:
    Ouvre un objet ADBMediaSettings pour le suivi.
    • Voici la syntaxe de cette méthode :
      + (void) mediaOpenWithSettings:(ADBMediaSettings *)settings
                            callback:(void (^)(ADBMediaState *mediaState))callback; 
      
      
    • Voici l’exemple de code pour cette méthode :
      [ADBMobile mediaOpenWithSettings:mySettings callback:^(ADBMediaState *mediaState) {
           // do something with media state if you want}];
      
      
  • mediaClose:
    Ferme l’élément multimédia nommé name .
    • Voici la syntaxe de cette méthode :
       + (void) mediaClose:(NSString *)name; 
      
      
    • Voici l’exemple de code pour cette méthode :
      [ADBMobile mediaClose:@"kittiesPlaying"];
      
      
  • mediaPlay:​offset:
    Lit le nom nommé de l’élément multimédia au décalage donné (en secondes).
    • Voici la syntaxe de cette méthode :
       + (void) mediaPlay:(NSString *)name offset:(double)offset;
      
      
    • Voici l’exemple de code pour cette méthode :
      [ADBMobile mediaPlay:@"cats" offset:25];
      
      
  • mediaComplete:​offset:
    Marque manuellement l’élément multimédia comme terminé au décalage offset donné (en secondes).
    • Voici la syntaxe de cette méthode :
       + (void) mediaComplete:(NSString *)name offset:(double)offset;
      
      
    • Voici l’exemple de code pour cette méthode :
       [ADBMobile mediaComplete:@"meowzah" offset:90]; 
      
      
  • mediaStop:​offset:
    Avertit le module multimédia que la vidéo a été interrompue ou suspendue au décalage offset donné.
    • Voici la syntaxe de cette méthode :
      + (void) mediaStop:(NSString *)name offset:(double)offset; 
      
      
    • Voici l’exemple de code pour cette méthode :
      [ADBMobile mediaStop:@"toonses" offset:30]; 
      
      
  • mediaClick:​offset:
    Avertit le module multimédia qu’un utilisateur a cliqué sur l’élément multimédia.
    • Voici la syntaxe de cette méthode :
      + (void) mediaClick:(NSString *)name offset:(double)offset;
      
      
    • Voici l’exemple de code pour cette méthode :
      [ADBMobile mediaClick:@"soManyCats" offset:47];
      
      
  • mediaTrack:​withData:
    Envoie un appel d’action de suivi (aucune page vue) pour l’état multimédia en cours.
    • Voici la syntaxe de cette méthode :
      + (void) mediaTrack:(NSString *)name withData:(NSDictionary *)data;