Recomendaciones para reproductores
Descargas completas/progresivas
Para una descarga completa, solicite el archivo entero de una sola vez. Para una descarga progresiva, solicite el archivo en partes (rango de byte). De esta manera se puede distinguir una descarga completa de una descarga progresiva.
Use la información del encabezado, ubicada al comienzo del podcast, para evitar una descarga completa cuando no sea necesaria.
Eliminar la suscripción a descarga automática
Emplee un comportamiento "eliminar la suscripción a la descarga automática" (por ej., detener las descargas automáticas después de 5 episodios sin oyentes).
Evitar las descargas automáticas de listado antiguo
No descargue automáticamente todos los episodios (por ej., episodios de listado antiguo) de forma predeterminada. Esto crea una sobrecarga en los servidores de los publishers y consume el ancho de banda de los usuarios.
Estructura del agente usuario
Implemente las recomendaciones para la estructura del agente de usuario que se encuentran en las Pautas técnicas de medición de podcast de IAB Tech Lab v.2.2, en la sección 7.2, "Estructura del agente".
Autoplay
La bandera indica si la sesión se ha iniciado desde la reproducción automática de un reproductor. Los valores posibles son autoplay=0 (no iniciado mediante reproducción automática) y autoplay=1 (iniciado mediante reproducción automática). No se recomienda la reproducción automática de contenido de audio: en algunos casos, los streams con reproducción automática no son audibles ya que el volumen puede estar silenciado mientras el stream sigue estando activo. Triton Digital recomienda que cualquier iniciación de reproducción de contenido de audio sea determinada por un gesto manifiesto del usuario, como por ejemplo un toque o un clic.
Precargar/prebuscar
No se recomienda en lo absoluto la prebúsqueda de contenido de audio. En la mayoría de las situaciones, el oyente no escuchará la transmisión de audio y, por lo tanto, no debe contarse como una sesión válida. La mejor manera de evitar problemas de medición con la prebúsqueda es simplemente no usarlo. Las recomendaciones que se describen a continuación deberían servir para eliminar el problema.
Preferido: el atributo de precarga del elemento <audio> debe establecerse en ninguno. Nunca debe configurarse en automático o dejarse en blanco, ya que esas opciones transfieren la decisión al propio navegador. Vea el ejemplo de código a continuación.
Alternativamente, el atributo de precarga del elemento <audio> incluye la opción de metadatos, que recupera/precarga solo los metadatos de audio. Esto podría no causar ningún problema. Sin embargo, si elige usar preload="metadata" en lugar de preload="none", debe probar a fondo el reproductor en múltiples plataformas y navegadores para asegurarse de que realmente es necesario y se comporta como se espera.
Ejemplos de código de precarga/prebúsqueda
Haga clic para desplegar los ejemplos de códigos
Ejemplo de código 1: detener la reproducción de audio
El ejemplo de código de abajo detiene el audio e implementa una solución alternativa para el problema con la pausa en el navegador Safari.
stop: function () {
var context = this;
if ( fsm.is( STATE.STOPPED ) ) return;
this.audioNode = getAudioNode.call( this );
fsm.stop();
this.audioNode.pause();
if( OsPlatform.name !== 'Safari' || this.audioNode.src.indexOf('m3u8') > -1 || this.useHlsLibrary) {
setTimeout(function(){
context.audioNode.src = '';
context.url = null;
context.resetAudioNode();
}, 300);
}else{
setTimeout(function(){
context.url = null;
context.resetAudioNode();
}, 300);
}
if( OsPlatform.os.family === 'iOS' && OsPlatform.name === 'Chrome Mobile') {
window.stop();
}
if ( this.useHlsLibrary ) {
this.hls.detachMedia();
this.hls.stopLoad();
this.hls.destroy();
}
},
Ejemplo 2: recargar la página
El código de ejemplo a continuación muestra el uso de preload="none" y la recarga de la página que contiene el reproductor.
<audio controls preload="none" height="32" width="300" onpause="location.reload();" src="<PLAYER PAGE URL>" type="audio/mpeg" />
Notas de códigos:
Reemplace "<URL DE LA PÁGINA DEL REPRODUCTOR>" por la URL real de la página de su reproductor.
Los atributos de altura y anchura que se muestran son solo ejemplos; Utilice la altura y anchura reales de su reproductor.
Ejemplo 3: usar un archivo de audio válido conocido
El código de ejemplo a continuación muestra el uso de preload="none" y la carga de un archivo MP3 corto (un archivo de audio válido conocido) para detener la descarga del archivo en segundo plano.
<audio controls preload="none" height="32" width="300" onplay="startAudio();" onpause="stopAudio();"
src="http://download.andomedia.com/Creative/208/0/2080711_1.mp3" type="audio/mpeg" />
<script>
// -- Set audio source before playing in case the pause/stop button has cleared it
function startAudio()
{
var audio = document.getElementsByTagName("audio")[0];
if (audio.src!="http://<YOUR-AUDIO-STREAM>")
{
audio.src="<YOUR-AUDIO-STREAM>";
if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){ audio.load(); }
audio.play();
}
}
// -- Clear the audio source - this should stop the download. Pausing alone will not.
function stopAudio()
{
var audio = document.getElementsByTagName("audio")[0];
audio.src="http://download.andomedia.com/Creative/208/0/2080711_1.mp3";
if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){ audio.load(); }
}
</script>
Notas de códigos:
Sustitúyase "http://<YOUR-AUDIO-STREAM>" por el URL real de su stream de audio.
audio.src="http://download.andomedia.com/Creative/208/0/2080711_1.mp3" es un archivo de audio silencioso de tres segundos en vivo alojado por Triton Digital que puede usar mientras realiza pruebas. Si elige usar este método luego de hacer pruebas, reemplace este URL por un enlace de su propio archivo de audio silencioso. El archivo de Triton Digital podría cambiar de nombre o eliminarse en cualquier momento sin previo aviso.
Recomendaciones para alojamiento, directorio y servidor
Encabezados ID3
Los archivos MP3 del podcast deben usar etiquetas ID3v2 para que los encabezados se ubiquen al inicio del podcast. Esto permite que los reproductores usen los datos de ID3 antes de que comience el streaming y sin descargar el archivo de podcast completo.
El tamaño de etiqueta ID3 recomendado es inferior a 300 kb con un tamaño de arte de 800x800 píxeles.
No almacenar caché de los episodios
No almacene caché de los episodios de podcasts en sus servidores. Siempre descargue el último episodio de la URL contenedora para cada usuario de la aplicación que quiera escucharlo.
Usar el GUID
Use el GUID, en oposición a la URL, título, fecha de publicación, etc. del episodio, para identificar nuevos episodios en el contenido RSS que se deberían descargar automáticamente en el dispositivo de un usuario. El GUID está diseñado para persistir frente a los cambios de entorno de alojamiento, títulos, etc.