小编HPP*_*HPP的帖子

如何在GLSurfaceView中使用MediaMuxer/MediaCodec InputSurface?

BigFlake示例之后,有一条评论指出:

// Acquire a new frame of input, and render it to the Surface.  If we had a
// GLSurfaceView we could switch EGL contexts and call drawImage() a second
// time to render it on screen.  The texture can be shared between contexts by
// passing the GLSurfaceView's EGLContext as eglCreateContext()'s share_context
// argument.
Run Code Online (Sandbox Code Playgroud)

EGL14.getCurrentContext()用来查询当前上下文并将其传递给EGL14.eglCreateContext()share_context参数,但是如何"切换EGL上下文"?

GLSurfaceView和MediaCodec.inputSurface有两个不同的表面和两个不同的上下文,所以我假设你只是eglMakeCurrent()单独调用每个集合,这是正确的吗?你需要eglDestroyContext()eglDestroySurface()

添加了更新

谢谢Fadden,我想我发现了这个错误,而不是drawFrame我调用了drawImage,但你不应该再次更新图像,对吧?

现在我glError 1285在设置EOS后调用dequeueBuffer时出现内存不足错误??? 也许我在录音停止后调用它.谢谢你的帮助.

在MyEGLWrapper.java中创建EGLSurface

saveToScreenRenderState();
mEGLContext = …
Run Code Online (Sandbox Code Playgroud)

java android opengl-es egl mediacodec

6
推荐指数
1
解决办法
2954
查看次数

android媒体编解码器无法实例化类型'video/mp4'的解码器

致力于实现mediamuxer类.它需要来自mediacodec类的输入(一个音频和一个视频).但尝试编码"video/mp4"时抛出错误

码:

String mime = MimeTypeMap.getSingleton()
                .getMimeTypeFromExtension("mp4");
        codec = MediaCodec.createEncoderByType(mime);
Run Code Online (Sandbox Code Playgroud)

错误:

Unable to instantiate a decoder for type 'video/mp4'
Run Code Online (Sandbox Code Playgroud)

注意错误是针对解码器的,并且调用是创建编码器.

我可能会在一分钟内解决这个问题,但是对于碰到这个问题的其他人来说,它会在这里.

video mp4 android mediacodec

2
推荐指数
1
解决办法
3913
查看次数

纹理sampler2d查找GLSL中的纹理坐标P是什么

我一直在浏览OpenGLSL ES 3.0 Spec,但我找不到有关内置函数如何texture(sampler, p)定义 P 的任何内容。我知道它是一个vec2.

它是一个介于 0.0 和 1.0 之间的标准化浮点,定义从左上角到按钮右侧的缩放器吗?

或者是像函数一样从 0 到维度大小减 1 查找纹素texelFetch()

或者它是否更复杂并且以某种方式在纹理属性中定义?这里它指出“纹理坐标可以标准化或在纹素空间中”。但我对此表示怀疑,因为我没有看到任何地方可以将纹理设置为标准化。

opengl-es glsl texture2d opengl-es-3.0

1
推荐指数
1
解决办法
1262
查看次数

不使用全屏iOS App Xcode 6.0 iphone5s

我有一个简单的开箱即用应用程序,当我在iphone5s上部署时,它不会使用整个屏幕.默认情况下,它会创建一个LaunchScreen.xib.我没有故意编辑这个文件.

黑色条纹顶部和底部

其他答案建议添加一个Default-568h@2x.png启动图像,但我没有使用启动图像,我不知道在哪里添加这些.我在Images.xcassets中看到了这个位置,方法是单击+图标并选择New Launch Image.

我是否需要向Images.xcassets添加新的启动图像?如果是这样,拥有LaunchScreen.xib的重点是什么?

谢谢!

iphone fullscreen ios xcode6

-2
推荐指数
1
解决办法
5703
查看次数

标签 统计

android ×2

mediacodec ×2

opengl-es ×2

egl ×1

fullscreen ×1

glsl ×1

ios ×1

iphone ×1

java ×1

mp4 ×1

opengl-es-3.0 ×1

texture2d ×1

video ×1

xcode6 ×1