2013-08-30 16 views
5

- Sto lavorando a un progetto che richiede la riproduzione di video al rallentatore.Riproduzione video al rallentatore in Android

- Sono ben consapevole del fatto che Android non fornisce queste funzionalità.

- Ho trovato pvPlayer motore e libVLC che possedeva queste capacità, ma non ho trovato alcun tutorial o documentazione adeguata di una loro inclusione nel progetto Android e il loro utilizzo.

- Così ho provato a fare questo usando Runnable e Handler, era riuscito a rallentare il video, ma che possedeva scatti durante la riproduzione.

public class MainActivity extends Activity { 

    VideoView vx; 
    Button mbutt; 
    Handler h ; 
    int curr = 0; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     h = new Handler(); 

     vx = (VideoView)findViewById(R.id.videoView); 
     mbutt = (Button)findViewById(R.id.button_Play); 

     vx.setVideoPath("/mnt/sdcard/you.mp4"); 

     mbutt.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 

       vx.start(); 
      } 
     }); 


     Runnable r = new Runnable() { 

      @Override 
      public void run() { 

       if (vx != null) { 

        if (vx.isPlaying()){ 

         vx.pause(); 
        } 
        else{       
         vx.start(); 
        } 
       } 

       h.postDelayed(this, 50); 
      } 
     }; 

     h.postDelayed(r, 200); 






    } 


} 

- ho provato varie combinazioni di tempo di pausa e il tempo a giocare per rimuovere i cretini, ma tutto invano, qualcuno mi può aiutare a rimuovere questi scatti in modo che gioca un bel video al rallentatore o suggerire un altro facile integrare la libreria nel mio progetto Android.

Grazie in anticipo ......

+0

hai trovato una soluzione? – safari

+0

No, non ho ancora trovato una soluzione .... –

+0

mhm, okay ho un problema simile, ora ho iniziato a lavorare con la libreria vitamio - ma è veramente debole documentato. ma potresti dargli una possibilità – safari

risposta

0

se siete alla ricerca come incorporato VLC in Android, è possibile REF per this. e puoi modificare la velocità chiamando setRate (0.5f) a libVLC per slow motion.

2

Sono in ritardo ma ho trovato una soluzione per API 23 e successive. Android 6.0 aggiunto PlaybackParams classe per controllare il comportamento di riproduzione. -

Uso setPlaybackParams metodo MediaPlayer come indicato di seguito -

videoview = (VideoView)findViewById(R.id.videoview); 
videoview.setVideoURI("Your Video URI"); 
videoview.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
       @Override 
       public void onPrepared(MediaPlayer mp) { 
        //works only from api 23 
        PlaybackParams myPlayBackParams = new PlaybackParams(); 
        myPlayBackParams.setSpeed(0.5f); //here set speed eg. 0.5 for slow 2 for fast mode 
        mp.setPlaybackParams(myPlayBackParams); 

        videoview.start();//start your video. 
       } 
     }); 
Problemi correlati