Hola, estoy actualizando una web que está basada en una plantilla flash AS2 con carga de contenidos por xml.
Tengo un problema muy extraño con un reproductor de video. En la web al pinchar en un botón abre un vídeo que llama por xml. En total tengo siete botones para llamar a siete videos. Todo funciona bien si ves unos segundos de los videos, pero si ves dos o tres videos enteros luego el resto de videos dejan de funcionar.
El video carga pero el botón play queda desactivado.
No sé cuál puede ser el problema, parece como si el reproductor tuviera alguna restricción de volumen de mb`s ¿?... ¿A alguien le ha pasado algo parecido?
El grueso de código del reproductor está en unos de los archivos (galeria.fla) y luego también hay algo de código en el index.fla, no me manejo muy bien con código pero en lo que he revisado no encuentro nada.

Me he puesto en contacto con el diseñador pero no da señales de vida.

el reproductor es sencillo: play / stop / contador de tiempo

En el código van también definidas funciones para detener el sonido general de la web.
El código del reproductor es este:


Código ActionScript :

play_btn.onRelease = function() {

stage_video.play();
_root.videoPlaying = true;
//
this.enabled = false;

pause_btn.enabled = true;
pause_btn.gotoAndStop(1);

if (_root.sound) {
_root.suono.stop();
_root.console.btn_sound.gotoAndPlay("close");
}

this.swapDepths(pause_btn);
};

pause_btn.onRelease = function() {

_root.videoPlaying = false;

stage_video.pause();

this.enabled = false;
//
play_btn.enabled = true;

if (_root.sound) {
_root.suono.start();
_root.console.btn_sound.gotoAndPlay("open");
}
this.swapDepths(play_btn);
};

//---------------------------------------------------------------------------------------------------------------------
// Función para cargar el vídeo
//---------------------------------------------------------------------------------------------------------------------
function videoLoader(vid) {

//trace("vid="+vid);

var listenerObject:Object = new Object();
listenerObject.playheadUpdate = function(eventObject:Object):Void {

Position = Math.round(stage_video.playheadPercentage);

if (Position>=100) {

stage_video.stop();

play_btn.enabled = true;

pause_btn.enabled = false;
pause_btn.swapDepths(play_btn);

_root.videoPlaying = false;
if (_root.sound) {
_root.suono.start();
_root.console.btn_sound.gotoAndPlay("open");
}
}
};
stage_video.addEventListener("playheadUpdate",listenerObject);
//video url
stage_video.contentPath = vid;
//

//---------------------------------------------------------------------------------------------------------------------
// sonido vídeo settings
//---------------------------------------------------------------------------------------------------------------------
var listenerObject:Object = new Object();
listenerObject.volumeUpdate = function(eventObject:Object):Void {
if (Math.round(eventObject.volume)<10) {

soundCheck = false;
}
if (Math.round(eventObject.volume)>10) {

}
};
video.stage_video.addEventListener("volumeUpdate",listenerObject);
//
function toCheckSound() {
if (soundCheck == false) {
btn_sound.gotoAndPlay("open");
video.stage_video.volume = 100;
soundCheck = true;
} else {
btn_sound.gotoAndPlay("close");
soundCheck = false;
video.stage_video.volume = 0;
}
}
//---------------------------------------------------------------------------------------------------------------------
// time control
//---------------------------------------------------------------------------------------------------------------------
var listenerObject:Object = new Object();
listenerObject.ready = function(eventObject:Object):Void {
timpTotalS = convertTime(stage_video.totalTime);
timpTotal = stage_video.totalTime;
};
stage_video.addEventListener("ready",listenerObject);
var listenerObject:Object = new Object();
listenerObject.playheadUpdate = function(eventObject:Object):Void {
time_mc.time.text = convertTime(eventObject.playheadTime)+" / "+timpTotalS;
};
stage_video.addEventListener("playheadUpdate",listenerObject);
//
function convertTime(sec:Number):String {
var min:Number = 0;
var ora:Number = 0;
if (sec>=60) {
min = Math.floor(sec/60);
sec = Math.floor(sec%60);
if (min>=60) {
ora = Math.floor(min/60);
min = Math.floor(min%60);
}
}
min = (min<10 ? "0"+Math.floor(min) : Math.floor(min));
sec = (sec<10 ? "0"+Math.floor(sec) : Math.floor(sec));
ora = (ora<10 ? "0"+Math.floor(ora) : Math.floor(ora));
var timp:String = (timpTotal/60/60/60>1 ? ora+":" : "")+min+":"+sec;
return timp;
}

}

//---------------------------------------------------------------------------------------------------------------------
// VideoLoader funcion llamar!
//---------------------------------------------------------------------------------------------------------------------
//videoLoader();



Supongo que el problema está en la función que carga los vídeos al reproductor pero.....?

gracias por vuestra ayuda