或者使用现有过滤器的方法?这样你就可以从鱼眼镜头或双鱼眼镜头(如理光Theta)中获取视频,并直接将equirectangular实时输出到像RTMP这样的东西?
我使用开放框架将双鱼眼视频(从ricoh theta S相机接收)转换为equirectangular格式(适用于iOS应用程序).
我使用下面的着色器:
equirectangular.frag
// based on ThetaShaderPack_20150926 (http://stereoarts.jp/) written by Nora.
#ifdef GL_ES
// define default precision for float, vec, mat.
precision highp float;
#endif
#define PI 3.14159265358979
#define _THETA_S_Y_SCALE (640.0 / 720.0)
uniform sampler2D mainTex;
uniform float radius;
uniform vec4 uvOffset;
varying vec2 texCoordVarying;
void main (void) {
vec2 revUV = texCoordVarying.st;
if (texCoordVarying.x <= 0.5) {
revUV.x = revUV.x * 2.0;
} else {
revUV.x = (revUV.x - 0.5) * 2.0;
}
revUV *= …Run Code Online (Sandbox Code Playgroud)