Estoy luchando con la búsqueda precisa usando seekTo() de seekTo() . Aunque puedo buscar sincronizar cuadros sin problemas, me gustaría buscar tiempo específico. Esta pregunta me llevó a algunas ideas de cómo hacerlo, pero no estoy seguro de si son válidos. Básicamente, tendría que buscar el marco de sincronización anterior más cercano y luego advance() […]
Tengo problemas con MediaPlayer reproduciendo mi flujo RTSP, así que decidí usar las API de nivel inferior – MediaExtractor y MediaCodec. El problema es que el método setDataSource () para MediaExtractor no acepta un flujo RTSP. Por lo tanto, mi pregunta es, ¿cómo puedo obtener los datos rtsp en los búferes de entrada de MediaCodec?
Realizé una sincronización simple de MoviePlayer.java en el código de ejemplo Grafika MediaCodec que se ejecuta en un Nexus 5. Puse una sentencia de registro en estas ubicaciones: En la línea 203 justo antes decoder.queueInputBuffer En la línea 244 después decoder.dequeueOutputBuffer Relacioné las sentencias de registro usando presentationTimeUs . Aquí hay un extracto de logcat: […]
Estoy intentando reproducir un flujo mp3 usando MediaExtractor / MediaCodec. MediaPlayer está fuera de la cuestión debido a la latencia y tamaño de búfer largo. El único código de ejemplo que he encontrado es: http://dpsm.wordpress.com/category/android/ Los ejemplos de código son sólo parciales (?) Y utilizan un archivo en lugar de un flujo. He estado tratando […]
Estoy escribiendo un APP que puede codificar video por entrada de cámara y procesar video por pasos de decodificación-edición-codificación. Para la cámara, utilizo la clase Camera en vez de Intent para configurar los detalles de la cámara. A continuación, alimentar los marcos de la cámara al codificador (MediaCodec en API 16) y el muxer (uso […]
Necesito decodificar un vídeo en una secuencia de mapas de bits, de modo que pueda modificarlos y luego comprimirlos de nuevo a un archivo de vídeo en android. Planeo manejar esto usando getFrameAtTime y guardándolo en una secuencia de la imagen. Entonces puedo modificar imágenes en la secuencia y codificarlo de nuevo a una película. […]
Estoy editando un MP4 en Android usando MediaExtractor para buscar pistas de audio y video y luego crear un nuevo archivo usando MediaMuxer. Funciona bien. Puedo jugar el nuevo MP4 en el teléfono (y otros jugadores) pero soy incapaz de transferir el archivo en la tela. Cuando detengo el MediaMuxer genera un mensaje de registro […]
Quiero decodificar archivos de audio a datos PCM sin procesar para transmitirlo a un dispositivo de reproducción en la red local. Utilizo las nuevas clases MediaExtractor y MediaCodec , introducidas con API nivel 16, para eso. El dispositivo requiere que los datos PCM estén en 44.100 kHz, tengan 2 canales y un tamaño de muestra […]
¿Hay alguna manera de obtener el código de perfil de MPEG-4 video fils usando la API estándar de Android? Los códigos de perfil de ejemplo son: baseline , main , high y así sucesivamente. No quiero incluir ffmpeg binario en la aplicación de Android sólo para obtener esta información. Encontré la referencia de la lista […]
Estoy intentando conseguir el ejemplo siguiente de MediaExtractor a trabajar: Http://bigflake.com/mediacodec/ – ExtractMpegFramesTest.java (requiere 4.1, API 16) El problema que tengo es que outputSurface.awaitNewImage (); Parece lanzar siempre RuntimeException ("frame timed out"), que se mFrameSyncObject.wait(TIMEOUT_MS) siempre que la mFrameSyncObject.wait(TIMEOUT_MS) agota. No importa lo que establezca TIMEOUT_MS , onFrameAvailable() siempre se llama justo después de que […]