我有一个使用gstreamer显示视频的Android应用程序。它类似于这里提到的教程:
http://docs.gstreamer.com/display/GstSDK/Android+tutorial+3%3A+Video
特别是,它使用扩展SurfaceView的GStreamerSurfaceView。
我现在想要使用另一个使用GLSurfaceView的库对视频执行一些处理:
class DemoGLSurfaceView extends GLSurfaceView {
public DemoGLSurfaceView(Context context) {
super(context);
setEGLContextClientVersion(2);
mRenderer = new DemoRenderer(context);
setRenderer(mRenderer);
}
DemoRenderer mRenderer;
}
class DemoRenderer implements GLSurfaceView.Renderer {
Context act;
public DemoRenderer(Context context) {
act = context;
}
@Override
public void onDrawFrame(GL10 arg0) {
nativeRender();
}
@Override
public void onSurfaceChanged(GL10 arg0, int arg1, int arg2) {
}
@Override
public void onSurfaceCreated(GL10 arg0, EGLConfig arg1) {
}
}
private static native void nativeRender();
我怎样才能"插入" GLSurfaceView nativeRender进程到GstreamerSurfaceView?
答案 0 :(得分:0)
解决方案包括开发一个Gstreamer app视频接收器,它可以将每个帧放入内存并将其复制到GLDurfaceView的OnDraw。