Puede controlar la posición y el tamaño de la vista de vídeo mediante el objeto MediaPlayerView.
TVSDK del explorador intenta de forma predeterminada mantener la relación de aspecto de la vista de vídeo siempre que el tamaño o la posición del vídeo se modifican debido a un cambio realizado por la aplicación, un conmutador de perfil, un conmutador de contenido, etc.
Puede anular el comportamiento de relación de aspecto predeterminado especificando un política de escalado. Especifique la política de escalado mediante la variable MediaPlayerView
del objeto scalePolicy
propiedad. La política de escala predeterminada de MediaPlayerView
se configura con una instancia de MaintainAspectRatioScalePolicy
clase. Para restablecer la política de escalado, sustituya la instancia predeterminada de MaintainAspectRatioScalePolicy
el MediaPlayerView.scalePolicy
con su propia política.
No puede establecer el scalePolicy
propiedad a un valor nulo.
En escenarios de reserva que no son de Flash, para que la directiva de escala funcione correctamente, el elemento div de vídeo se proporciona en la variable View
el constructor debe devolver valores distintos de cero para offsetWidth
y offsetHeight
. Para dar un ejemplo de función incorrecta, a veces cuando la anchura y la altura de los elementos div de vídeo no se establecen explícitamente en css, la variable View
el constructor devuelve cero para offsetWidth
o offsetHeight
.
CustomScalePolicy tiene compatibilidad limitada con algunos exploradores, especialmente IE, Edge y Safari 9. En estos exploradores, la relación de aspecto nativa del vídeo no se puede cambiar. Sin embargo, la posición y las dimensiones del vídeo se aplicarán según la política de escala.
Implementación de MediaPlayerViewScalePolicy
para crear su propia política de escalado.
El MediaPlayerViewScalePolicy
tiene un método:
/**
* Adjust the specified rectangle to match the new video dimensions.
* @param viewPort {AdobePSDK.Rectangle}The video rectangle as absolute position.
* @param videoWidth {Number}The video width.
* @param videoHeight {Number} The video height.
* @return {AdobePSDK.Rectangle} an adjusted rectangle.
*/
function adjustCallbackFunc(viewPort, videoWidth, videoHeight);
Por ejemplo:
/**
Default Constructor
*/
MediaPlayerViewCustomScalePolicy = function() {
return this;
};
MediaPlayerViewCustomScalePolicy.prototype = {
constructor: MediaPlayerViewScalePolicy,
adjustCallbackFunc: function(viewPort, videoWidth, videoHeight) {
/* Your Custom Adjustment here. */
[...]
return adjustedRectangle;
}
};
Asigne la implementación a MediaPlayerView
propiedad.
var view = new AdobePSDK.MediaPlayerView(videoDiv);
view.scalePolicy= new MediaPlayerViewCustomScalePolicy();
Añada la vista al reproductor multimedia view
propiedad.
mediaplayer.view = view;
Por ejemplo: escale el vídeo para rellenar toda la vista de vídeo, sin mantener la proporción de aspecto:
/**
* Default constructor.
*/
MediaPlayerViewCustomScalePolicy = function() {
return this;
};
MediaPlayerViewCustomScalePolicy.prototype = {
constructor: MediaPlayerViewScalePolicy,
/**
* A very simple custom scale policy - the video will fill the entire
* allocated space. The aspect ratio will not be kept.
*/
adjustCallbackFunc: function(viewPort, videoWidth, videoHeight) {
return viewPort;
}
};
var view = new AdobePSDK.MediaPlayerView(videoDiv);
view.scalePolicy = new MediaPlayerViewCustomScalePolicy ();
mediaPlayer.view = view;