iRec seekbuttons - CGastrell/phonegap GitHub Wiki
Observamos que los botones Go!
no reaccionan correctamente si el archivo en revision no empezo a reproducirse. Esto se debe a que el comando seekTo()
del archivo de audio solo funciona cuando el archivo esta reproduciendose o en pausa. Para corregir este funcionamiento vamos a modificar revisionApi.seek()
y de paso asegurarnos que la implementacion que hicimos del boton para retroceder 10 segundos no falle.
revisionApi.seek()
El metodo seek()
que implementamos en revisionApi
no contempla, hasta ahora, que hacer si el archivo de audio esta detenido, sea en pausa o porque nunca empezo a reproducirse:
seek: function(ms) {
$('button.tag').each(function(i,e){
if(ms > $(e).data('miliseconds')) {
$(e).css('background-color',revisionApi.colorTagPasado);
}else{
$(e).css('background-color',revisionApi.colorTagPendiente);
}
});
revisionApi.audio.seekTo(ms);
},
Solo necesitamos agregarle un if
al principio para que, si esta detenido, inicie la reproduccion e inmediatamente lo pause:
seek: function(ms) {
if(!revisionApi.isPlaying) {
revisionApi.play();
revisionApi.pausa();
revisionApi.currentTime.text(clockFormat(ms / 1000));
}
$('button.tag').each(function(i,e){
if(ms > $(e).data('miliseconds')) {
$(e).css('background-color',revisionApi.colorTagPasado);
}else{
$(e).css('background-color',revisionApi.colorTagPendiente);
}
});
revisionApi.audio.seekTo(ms);
},
Nuestra ultima modificacion sera implementar un metodo para limpiar los archivos de audio que quedan colgados por ahi.