VOD-uppspelning med buffring vod-playback-with-buffering
Scenario scenario
I det här scenariot inträffar viss buffring när VOD-innehåll spelas upp.
Om inget annat anges är nätverksanropen i det här scenariot samma som anropen i VOD-uppspelningen utan annonser.
Utlösare
Heartbeat-metod
Nätverksanrop
Anteckningar
Användaren klickar på Play
trackSessionStartBörja med Analytics-innehåll, starta pulsslagsinnehåll
Detta kan vara en användare som klickar på Play eller en automatisk uppspelningshändelse.
Den första bildrutan i videon spelas.
trackPlaySpela upp pulsslagsinnehåll
Den här metoden utlöser timern. Hjärtslag skickas var 10:e sekund så länge uppspelningen fortsätter.
Innehållet spelas upp.
Hjärtslag för innehåll
Bufferten börjar.
trackEvent:BufferStartHeartbeat-buffert
Innehållet är buffrat.
Hjärtslag för innehåll
Bufferten är klar.
trackEvent:BufferCompleteHeartbeat-buffert, Heartbeat Play
Innehållet spelas upp.
Hjärtslag för innehåll
Innehållet spelas upp helt.
trackCompletePassa upp innehållet fullständigt
Slutet av spelhuvudet nåddes.
Sessionen är över.
trackSessionEndSessionEnd betyder slutet på en visningssession. Detta API måste anropas även om användaren inte ser videon tills den är klar.Parametrar parameters
Heartbeat-buffert
Parameter
Värde
Anteckningar
s:event:type"buffer"Exempelkod sample-code
I det här scenariot inträffar buffring när VOD-innehållet spelas upp.
Android
Ställ in följande kod för att visa det här scenariot i Android:
// Set up mediaObject
MediaObject mediaInfo = MediaHeartbeat.createMediaObject(
Configuration.MEDIA_NAME,
Configuration.MEDIA_ID,
Configuration.MEDIA_LENGTH,
MediaHeartbeat.StreamType.VOD
);
HashMap<String, String> videoMetadata = new HashMap<String, String>();
videoMetadata.put(CUSTOM_KEY_1, CUSTOM_VAL_1);
videoMetadata.put(CUSTOM_KEY_2, CUSTOM_VAL_2);
// 1. Call trackSessionStart() when the user clicks Play or if autoplay is used,
// i.e., there is an intent to start playback.
_mediaHeartbeat.trackSessionStart(mediaInfo, videoMetadata);
......
......
// 2. Call trackPlay() when the playback actually starts, i.e., when the first
// frame of the main content is rendered on the screen.
_mediaHeartbeat.trackPlay();
.......
.......
// 3. Track the MediaHeartbeat.Event.BufferStart event when the video player
// goes into the buffering state and begins to buffer content.
_mediaHeartbeat.trackEvent(MediaHeartbeat.Event.BufferStart, null, null);
.......
.......
// 4. Track the MediaHeartbeat.Event.BufferComplete event when the video player
// goes into the buffering state and begins to buffer content.
_mediaHeartbeat.trackEvent(MediaHeartbeat.Event.BufferComplete, null, null);
.......
.......
// 5. Call trackComplete() when the playback reaches the end, i.e., when the
// video completes and finishes playing.
_mediaHeartbeat.trackComplete();
........
........
// 6. Call trackSessionEnd() when the playback session is over. This method must
// be called even if the user does not watch the video to completion.
_mediaHeartbeat.trackSessionEnd();
........
iOS
Ställ in följande kod för att visa det här scenariot i iOS:
// Set up mediaObject
ADBMediaObject *mediaObject =
[ADBMediaHeartbeat createMediaObjectWithName:MEDIA_NAME
length:MEDIA_LENGTH
streamType:ADBMediaHeartbeatStreamTypeVOD];
NSMutableDictionary *videoContextData = [[NSMutableDictionary alloc] init];
[videoContextData setObject:CUSTOM_VAL_1 forKey:CUSTOM_KEY_1];
[videoContextData setObject:CUSTOM_VAL_2 forKey:CUSTOM_KEY_2];
// 1. Call trackSessionStart when the user clicks Play or if autoplay is used,
// i.e., there is an intent to start playback.
[_mediaHeartbeat trackSessionStart:mediaObject data:videoContextData];
.......
.......
// 2. Call trackPlay when the playback actually starts, i.e., when the first
// frame of the main content is rendered on the screen.
[_mediaHeartbeat trackPlay];
.......
.......
// 3. Track the trackEvent:ADBMediaHeartbeatEventBufferStart event when the
// video player goes in buffering state and begins to buffer content.
[_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventBufferStart
mediaObject:nil
data:nil];
.......
.......
// 4. Track the trackEvent:ADBMediaHeartbeatEventBufferComplete event when
// the video player goes in buffering state and begins to buffer content.
[_mediaHeartbeat trackEvent:ADBMediaHeartbeatEventBufferComplete
mediaObject:nil
data:nil];
.......
.......
// 5. Call trackComplete when the playback reaches the end, i.e., when the
// video completes and finishes playing.
[_mediaHeartbeat trackComplete];
.......
.......
// 6. Call trackSessionEnd when the playback session is over. This method must
// be called even if the user does not watch the video to completion.
[_mediaHeartbeat trackSessionEnd];
.......
.......
JavaScript
Om du vill visa det här scenariot anger du följande text:
// Set up mediaObject
var mediaInfo = MediaHeartbeat.createMediaObject(
Configuration.MEDIA_NAME,
Configuration.MEDIA_ID,
Configuration.MEDIA_LENGTH,
MediaHeartbeat.StreamType.VOD
);
var videoMetadata = {
CUSTOM_KEY_1 : CUSTOM_VAL_1,
CUSTOM_KEY_2 : CUSTOM_VAL_2,
CUSTOM_KEY_3 : CUSTOM_VAL_3
};
// 1. Call trackSessionStart() when Play is clicked or if autoplay is used,
// i.e., there's an intent to start playback.
this._mediaHeartbeat.trackSessionStart(mediaInfo, videoMetadata);
......
......
// 2. Call trackPlay() when the playback actually starts, i.e., when the
// first frame of the ad video is rendered on the screen.
this._mediaHeartbeat.trackPlay();
.......
.......
// 3. Track event MediaHeartbeat.Event.BufferStart when the video player
// goes into the buffering state and begins to buffer content.
this._mediaHeartbeat.trackEvent(MediaHeartbeat.Event.BufferStart);
.......
.......
// 4. Track the MediaHeartbeat.Event.BufferComplete event when the
// video player goes into the buffering state and begins to buffer content.
this._mediaHeartbeat.trackEvent(MediaHeartbeat.Event.BufferComplete);
.......
.......
// 5. Call trackComplete() when the playback reaches the end, i.e.,
// when playback completes and finishes playing.
this._mediaHeartbeat.trackComplete();
........
........
// 6. Call trackSessionEnd() when the playback session is over. This method must
// be called even if the user does not watch the video to completion.
this._mediaHeartbeat.trackSessionEnd();
........
........
recommendation-more-help
c8eee520-cef5-4f8c-a38a-d4952cfae4eb