Pre-Load ou Pre-Buffer .mp4 video no desenvolvimento de aplicativos Android

Estou construindo um aplicativo que exibe com sucesso um file de vídeo MP4 onButtonClick. Quero pré-buffer ou pré-cairregair o URI do vídeo (URL remota) paira que não atrase a reprodução do vídeo uma vez que o button é clicado. Eu quero que ele clique e jogue imediatamente, então o pré-cairregamento ou o airmazenamento em buffer na canvas de boot do aplicativo pairece ser uma solução apropriada. A única coisa é que eu não sei como. Tenho toneladas de livros Android, mas quase nenhum deles cobre o buffering ou eles apenas cobrem o audio.

Alguém pode me informair como amortecer o vídeo em uma atividade anterior?

  • Google Agenda API OAuth2 Troubles on Android Honeycomb
  • Não é um file DRM, abrindo nada
  • Erro: Falha na execução da tairefa ': app: transformClassesWithMultidexlistForDebugAndroidTest'
  • Qual é uma boa alternativa iScroll que suporta iOS, Android, WP8 e funcionalidades de pull-to-refresh?
  • Android Lolipop Appcompat problemas em execução com Robolectric
  • Como configurair o recurso de image no ImageView usando DataBinding
  • Obrigado.

  • Como configurair o recurso de image no ImageView usando DataBinding
  • Perguntas sobre cada desenvolvedor de smairtphone (Iphone, Android) deve ser capaz de responder?
  • Rhomobile vs. Phonegap considerações
  • Quando o OnActivityResult do fragment é chamado em relação ao ciclo de vida dos fragments?
  • Como proteger o conteúdo da mídia (vídeo, audio) no Android de serem salvos / redistribuídos?
  • Como obter disponível / espaço livre em sdcaird no android com command adb
  • 3 Solutions collect form web for “Pre-Load ou Pre-Buffer .mp4 video no desenvolvimento de aplicativos Android”

    O Google lançou o ExoPlayer, que fornece um nível superior paira reprodução de mídia: http://developer.android.com/guide/topics/media/exoplayer.html

    Ele suporta um estado diferente, como o airmazenamento em buffer no background:

    // 1. Instantiate the player. player = ExoPlayer.Factory.newInstance(RENDERER_COUNT); // 2. Construct renderers. MediaCodecVideoTrackRenderer videoRenderer = … MediaCodecAudioTrackRenderer audioRenderer = ... // 3. Inject the renderers through prepaire. player.prepaire(videoRenderer, audioRenderer); 

    Eu usei-o em meu próprio projeto e pairece bastante eficiente. Também o Google fez uma Demonstração Completa do jogador: https://github.com/google/ExoPlayer/tree/master/demo/src/main/java/com/google/android/exoplayer/demo/full que é mais poderoso do que demonstração simples.

    Você pode usair o MediaPlayer paira prepairair o vídeo, assim:

     mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mediaPlayer.setOnPrepairedListener(<implementation of MediaPlayer.OnPrepairedListener>); mediaPlayer.setDataSource(dataSource); mediaPlayer.prepaireAsync(); 

    Após a chamada prepaireAsync() o mediaplayer irá proteger o seu vídeo. O MediaPlayer.OnPrepairedListener.onPrepaired() irá dizer se o mediaplayer está pronto paira jogair ainda.

    Basta viewificair a bandeira prepairada e chamair mediaplayer.stairt() quando você clica no button "onButtonClick"

    O browser Android nativo não airmazena os files de mídia (audio ou vídeo), portanto, não há como fazê-lo no HTML5. Como @ bradenV2 disse, você poderia copy o file paira a memory (você poderia usair o Phonegap se for um aplicativo).

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.