Theme: Enhance audio playback indicator smoothness for files less than 30 sec in length.

This commit is contained in:
reliberate
2016-06-28 12:08:36 -06:00
parent 04a8cc80a4
commit 4ea5b2a4ad

View File

@@ -234,6 +234,7 @@
//audio playback functions
var recording_audio;
var audio_clock;
function recording_play(recording_id) {
if (document.getElementById('recording_progress_bar_'+recording_id)) {
@@ -245,15 +246,18 @@
recording_audio.volume = 1;
recording_audio.play();
document.getElementById('recording_button_'+recording_id).innerHTML = "<?php echo str_replace("class='list_control_icon'", "class='list_control_icon' style='opacity: 1;'", $v_link_label_pause); ?>";
audio_clock = setInterval(function () { update_progress(recording_id); }, 20);
}
else {
recording_audio.pause();
document.getElementById('recording_button_'+recording_id).innerHTML = "<?php echo $v_link_label_play; ?>";
clearInterval(audio_clock);
}
}
function recording_stop(recording_id) {
recording_reset(recording_id);
clearInterval(audio_clock);
}
function recording_reset(recording_id) {
@@ -264,6 +268,7 @@
document.getElementById('recording_progress_bar_'+recording_id).style.display='none';
}
document.getElementById('recording_button_'+recording_id).innerHTML = "<?php echo $v_link_label_play; ?>";
clearInterval(audio_clock);
}
function update_progress(recording_id) {
@@ -274,6 +279,9 @@
value = (100 / recording_audio.duration) * recording_audio.currentTime;
}
recording_progress.style.marginLeft = value + "%";
if (parseInt(recording_audio.duration) > 30) { //seconds
clearInterval(audio_clock);
}
}
</script>