2016-07-05 8 views
0

Ich spiele ein Video mit MediaPlayer und modifiziere es mit SurfaceTexture und OpenGL ES 2.0.Android - SurfaceTexture.updateTexImage und MediaPlayer

Im doc, heißt es, dass

surfaceTexture.updateTexImage(); 

wird „auf den neuesten Rahmen aus dem Bildstrom das Texturbild aktualisieren“.

Also, wenn ich 2 mal updateTexImage aufrufen, ist das Texturbild nicht unbedingt der 2. Frame des Videos?

Wenn dies der Fall ist, dann denke ich, gibt es keine Möglichkeit, die Geschwindigkeit des Videos mit Media Player und OpenGL zu kontrollieren?

Antwort

1

Ja, wenn Sie 2 mal updateTexImage aufrufen, ist es möglicherweise nicht der 2. Frame des Videos. Es gibt keine Möglichkeit, das (fps) Video als Eingabe zu befestigen. Mit dem Timing von updateTexImage können Sie jedoch Frames langsamer machen (reduzierte fps).

+0

Vielen Dank für Ihre Antwort. Also ich denke, MediaPlayer ist keine Option, Videos Frame für Frame zu entschlüsseln. – Xys

+0

Schauen Sie sich Mediacodec an –