Cómo proporcionar datos de audio y datos de vídeo a MediaMux

Estoy tratando de obtener datos de vídeo en bruto por la vista previa, obtener datos de audio en bruto por AudioRecord. Entonces los enviaré a MediaCodec (fijaré dos instancias de Codec). Después de eso voy a enviar los datos de vídeo y datos de audio a MediaMux para obtener un archivo mp4. Tengo dos preguntas:

1) He utilizado MediaMux para procesar los datos de vídeo antes. Para los datos de vídeo, el proceso de MediaMux por cuadro, pero el registro de vídeo es continuo. ¿Cómo podría el MediaMux manejar el vídeo y el audio en sincronización.

2) Encontré sólo de variable para inputbuffer en la función writeSampleData . Un chico agradable en StackOverflow también proporcionó una demo de MediaMux . Pero esta demo sólo tiene una variable para los datos de origen. ¿Cómo podría esta variable soportar tanto datos de vídeo como datos de audio?

¡Gracias!

He tenido un cierto éxito que pasa el audio sincronizado y el vídeo a MediaMuxer . Calculé el número de muestras de audio que deben reproducirse para cada trama de vídeo: basado en la frecuencia de muestreo de audio y la velocidad de fotogramas de vídeo. Entonces tuve un bucle que escribió un cuadro de video y un bloque de audio en cada iteración. Utilice el tiempo de presentación para asegurarse de que se sincronizarán en la reproducción. Utilice el índice de pista de addTrack en las llamadas a writeSampleData para permitir la escritura de vídeo y audio a dos pistas independientes.

En conjunto para responder a @ robin-royal, con el fin de codificar vídeo y audio y debe llamar al doble del método Addtrack de MediaMuxer, un índice de pista (int) a cada uno. Por lo que cuando se llama WriteSampleData en el MediaMuxer, el primer parámetro especifica el índice de pista, por ejemplo, si audioTrackIndex = 2 y videoTrackIndex = 1, si llama WriteSampleData con el primer parámetro igual a 1, estaría escribiendo vídeo. (Lo siento, no tengo privilegios para contestarle en el comentario) gracias

  • Android video streaming para windows azure
  • Android TextureView vs rendimiento de VideoView
  • Cómo actualizar Youtube Player View onItemClickListener () en un ListView
  • Cámara Android: la vista previa se amplía al grabar vídeo
  • Reproducción de un video local de aplicación (.mp4) en una vista web
  • Cómo reproducir URL de vídeo dentro de la vista web de Android
  • Reproducir un archivo m3u8 local en android mostrando setDataSourceFD failed .: status = 0x80000000
  • Android: no se puede reproducir vídeo mp4
  • Android: graba vídeo en la misma orientación independientemente de la orientación del dispositivo
  • Android webview html5 vídeo autoplay no funciona en android 4.0.3
  • ¿Por qué mi videoview no está reproduciendo?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.