2015-06-11 19 views
5

Medya veri kaynağım var ve medyayı android MediaPlayer kullanarak oynuyor.Android - aynı videoda görüntüleme Çoklu görünümler

MediaPlayer arasındaki video çıkışını aynı Activity numaralı resimdeki çoklu görünümlere nasıl görüntüleyebilirim, bunun için alternatif yollar var mı?

Veri kaynağından çok kez okumadan medyanın video bölümünün iki farklı görünümde görüntülenmesini istiyorum.

Güncel Kodu:

TextureView mTextureView1; 
TextureView mTextureView2; 

mTextureView1.setSurfaceTextureListener(new TextureView.SurfaceTextureListener() { 
     @Override 
     public void onSurfaceTextureAvailable(SurfaceTexture surface, int width, int height) { 
      mMediaPlayer = new MediaPlayer(AppActivity.this); 
      try { 
       mMediaPlayer.setDataSource(getApplicationContext(), Uri.parse(path)); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
      mMediaPlayer.setSurface(new Surface(surface)); 
      mMediaPlayer.setLooping(true); 
      mMediaPlayer.prepareAsync(); 

      mMediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
       @Override 
       public void onPrepared(MediaPlayer mp) { 
        mp.start(); 
       } 
      }); 
     } 
+0

bunu hiç yaptın mı? –

cevap

2

Şu anda daha sonra SurfaceTexture kareleri alan bir TextureView içine oynayan ve konum Görünüm UI katman üzerine onları kılar.

Bir yaklaşım çerçeveler almak için kendi SurfaceTexture öğenizi oluşturmak ve sonra istediğiniz kareleri oluşturmak için OpenGL ES'yi kullanmaktır. Örneğin, Grafika'daki "kameradan doku" etkinliğine bakın. Girişi kameradan konumlandırabilir, döndürebilir ve ölçeklendirebilir; MediaPlayer'dan giriş almak için bunu kolayca değiştirebilir ve dokuyu bir SurfaceView üzerinde iki kez oluşturabilirsiniz.

Farklı Görünümler üzerinde oluşturmak isterseniz, birkaç Doku Görünümü oluşturabilir ve bunları oluşturabilirsiniz. Her bir Görünüm için farklı bir EGL yüzeyi ile tek bir EGL bağlamı kullanın.

+0

İşte kameradan dokuya doğrudan bir bağlantı: https://github.com/google/grafika/blob/master/src/com/android/grafika/TextureFromCameraActivity.java – Aggressor