2016-06-19 13 views
1

Ich verwende die Android MediaCodec-Klasse, um Video auf einer Oberfläche wiederzugeben, die eine SurfaceTexture verwendet. Jetzt auf einigen der Geräte dauert der Aufruf zu updateTexImage eine sehr lange Zeit ~ 20ms im Durchschnitt? Irgendeine Idee, warum das passieren könnte? Wenn ich den Android MediaPlayer für die Wiedergabe auf derselben Oberfläche verwende, dauert der Anruf sehr kurz (durchschnittlich 0-1ms). Könnte es mit der Datengröße zusammenhängen, die ich an den Codec übergebe?Android SurfaceTexture updateTexImage dauert lange?

Antwort

0

Also löste ich das Problem. Ich weiß nicht warum, aber als ich vor dem Aufruf von updateTexImage ein paar ms (~ 12ms) Ruhezustand hinzugefügt habe, dauert der Anruf viel weniger Zeit.

Meine Vermutung für das Problem ist, dass ich die vSync fehlt und es wartet auf die nächste vSync, um die Textur zu aktualisieren.