Unity(VR)视频播放器开发纪录(非教程)-- 流程:

unity:

1.      界面。

2.      ManagerMedia(单列实现对视频播放器平台的sdk),只需用提供接口不需要理会平台。

3.      要点,你要看到的视频是需要渲染到unity的纹理上,理所当然必须在unity生成一个纹理id传过去。

Texture2D texture = new Texture2D(Width, height, TextureFormat.BGRA32,false);

intid = (int)texture.GetNativeTexturePtr().ToInt32();

android:

1.      做个媒介驱动ijkplayer,,所以你要掌握就是看ijkplayer的Demo能力,把里面的有用代码抽离。这就要懂比较懂java(暂时只说android,Ios还在研究),就算会java的也未必搞的懂,因为他们都着重在UI,很少去理会底层渲染,我也是用了好长段时间研究.

2.      Surface ,surfaceView,Glsurfaceview,SurfaceTexture ,你可以把它们当成一个容器类,在android ijkplayer里面视频的渲染就是把数据流先放到这个容器里面。

public void setSurfaceTexture(int tepid){
   
this.surfaceTexture= new SurfaceTexture(tepid);
    this
.surfaceTexture.setOnFrameAvailableListener(this);
   
Surface surface = new Surface(this.surfaceTexture);
    if
(this.mediaPlayer != null) {
       
this.mediaPlayer.setSurface(surface);
   
}

}

Ijkplayer :

1.      真正视频解码使用的工具,我就把它当成了工具。

2.      Ijkpalyer基于ffmpeg开源开源播放器,底层是c语言

a)        https://github.com/bbcallen/ijkplayer

FBO离屏渲染:

1.      opengl

2.      这里我使用是c++写的opengl。所以又要懂得使用android NDK打成.so库提供调用,也就是jni。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值