Buscando un ejemplo funcional de addTimedTextSource para agregar subtítulos a un video desde un archivo .srt en Android 4.1

He estado tratando de usar un archivo .srt para una fuente de texto cronometrada (solo disponible en Android 4.1+http://developer.android.com/about/versions/android-4.1.html#Multimedia). El primer problema tiene que ver con obtener un descriptor de archivo para el archivo .srt (en la carpeta de activos, ¿de qué otra manera lo incluiría en su aplicación?). El archivo se comprime automáticamente, por lo que ni siquiera podrá verlo sin cambiar la configuración de compilación o hacer una compilación personalizada. La solución más sencilla fue cambiar el nombre del archivo .srt a .jpg para que no se comprima y el método openFD aún funcione. Ahora estoy agregando el TimedTextSource con:

_myMP.addTimedTextSource(getAssets().openFd("captions.jpg").getFileDescriptor(),   MediaPlayer.MEDIA_MIMETYPE_TEXT_SUBRIP);

Ahora, el archivo se carga correctamente y, al utilizar myMP.getTrackInfo () para obtener una lista de pistas, puede ver que después de agregar la fuente de texto temporizado, la sexta pista tiene el tipo "3", que es el tipo de pista de texto temporizado. He utilizado selectTrack para elegir esta pista como se dice en la documentación de Google, pero después de hacerlo, no aparece ninguna leyenda y en mi TimedTextListener:

 _myMP.setOnTimedTextListener(new OnTimedTextListener(){
        @Override
        public void onTimedText(MediaPlayer mp, TimedText text) {
                if (text!=null)
                   Log.d("TimedText", text.getText());  
            }       
        });

Se dispara solo una vez (tengo como 20 eventos de texto programados en el archivo) pero el parámetro de texto siempre es nulo. Hice búsquedas y no puedo encontrar un solo ejemplo de código de trabajo de timeText y no aparece en ningún proyecto de muestra, literalmente no hay otra documentación que no sea la api docs de google pero, por lo que puedo decir, NINGUNA ha publicado una ejemplo de trabajo todavía. Estoy probando esto en un google Nexus actualizado a Android 4.2

Respuestas a la pregunta(3)

Su respuesta a la pregunta