Closed amtins closed 11 months ago
It seems that mediaData
isn't the right term after all, as it could be confused with media.html#media-data.
:tada: This issue has been resolved in version 1.0.0 :tada:
The release is available on:
npm package (@main dist-tag)
Your semantic-release bot :package::rocket:
Motivation
Define a set of default properties that can be used by various tracking or recommendation tools.
These properties are intended to be agnostic of any tools using them, and it will also be possible to add custom properties.
Proposition
The task of providing a set of default properties can be time-consuming and complicated, without guaranteeing a satisfactory result.
The simplest approach would be to define a
namespace
that allows any type ofdata
to be included. However, in some cases, it may be necessary todisable
one or moretrackers
when starting anew playback session
.So, rather than defining a standard, it's better to define a convention to follow.
Solution
Thanks to video.js ability to inject custom properties directly into the source, the two properties to be added are:
disableTrackers
, which could take astring array
indicating which tracker should be disabled, ortrue
if all trackers should be disabledmediaData
, anobject
that can be consumed by any tracking or customization tool, or for any other purposedisableTrackers
andmediaData
are optional. These properties remain valid only for the current playback sessionThe important point is that the
player
has no functional dependency on anytracker
and it is therefore its responsibility to follow this convention or not. This also avoids breaking the default behavior of video.js.Example
Case using a plain old source with custom properties
Case using
middleware
to resolve a custom sourceDescription
middleware
calls anybackend
returningmediaData
. In this case namedmockBackendCall
player.src
accepts custommediaData
which are thenmerged
with themediaData
from themockBackendCall
.mediaData
fromplayer.src
overwrite properties of the same name frommockBackendCall