当前位置: 首页 > news >正文

河北网站开发多少钱天津百度推广公司

河北网站开发多少钱,天津百度推广公司,荆州市城市建设投资开发有限公司网站,莱芜网站快排TextureView默认以fitxy的方式加载surface数据,如果需要等比全屏播放视频,避免拉伸,可以采用Matrix对TextureView进行变换 废话不多说,直接上代码 public class BaseIjkPlayer implements TextureView.SurfaceTextureListener{/…

TextureView默认以fitxy的方式加载surface数据,如果需要等比全屏播放视频,避免拉伸,可以采用Matrix对TextureView进行变换

废话不多说,直接上代码

public class BaseIjkPlayer implements TextureView.SurfaceTextureListener{//视频缩放,调整比例private void resolveStretching(float textureViewWidth,float textureViewHeight){if(textureView==null){return;}if(ijkMediaPlayer==null){return;}try {float videoWidth = ijkMediaPlayer.getVideoWidth(); //宽float videoHeight = ijkMediaPlayer.getVideoHeight(); //高if(textureViewWidth==0||textureViewHeight==0||videoWidth==0||videoHeight==0){return;}Matrix matrix = getMatrix(textureViewWidth, textureViewHeight, videoWidth, videoHeight);textureView.setTransform(matrix);textureView.postInvalidate();}catch (Exception e){Log.d(TAG, "resolveStretching: error"+e);}}//获取Matrix    private @NonNull Matrix getMatrix(float textureViewWidth,float textureViewHeight,float videoWidth,float videoHeight) {float sx = textureViewWidth / videoWidth;float sy = textureViewHeight/ videoHeight;Matrix matrix = new Matrix();//第1步:把视频区移动到View区,使两者中心点重合.matrix.preTranslate((textureViewWidth - videoWidth) / 2, (textureViewHeight - videoHeight) / 2);//第2步:因为默认视频是fitXY的形式显示的,所以首先要缩放还原回来.matrix.preScale(videoWidth / textureViewWidth, videoHeight / textureViewHeight);//第3步,等比例放大或缩小,直到视频区的一边和View一边相等.如果另一边和view的一边不相等,则留下空隙if (sx >= sy){matrix.postScale(sy, sy, textureViewWidth / 2, textureViewHeight / 2);}else{matrix.postScale(sx, sx, textureViewWidth / 2, textureViewHeight / 2);}return matrix;}
}

在onSurfaceTextureAvailable才能拿到textureViewWidth和textureViewHeight的真实长度

public class BaseIjkPlayer implements TextureView.SurfaceTextureListener{@Overridepublic void onSurfaceTextureAvailable(@NonNull SurfaceTexture sur, int width, int height) {this.surface = new Surface(sur);ijkMediaPlayer.setSurface(surface);resolveStretching(width,height);}//省略其他的SurfaceTextureListener的实现...
}

别忘了添加监听

public class BaseIjkPlayer implements TextureView.SurfaceTextureListener{public IjkMediaPlayer ijkMediaPlayer;//初始化private void init() {ijkMediaPlayer = new IjkMediaPlayer();//...省略一些配置textureView.setSurfaceTextureListener(this);}
}
http://www.yayakq.cn/news/220227/

相关文章:

  • 珠海 旅游 网站建设免手机微网站
  • deals网站建设黄山旅游攻略ppt
  • 最好的手机网站建设wordpress能导入多少产品
  • 网站进度条特效魅族的网站建设与安全
  • 官网定制公司企业网站seo实
  • 企业网站管理系统论文云计算网络架构包括哪些域
  • 网站建设php心得体会手机导航下载2022新版
  • 做合约交易哪个网站好电子商务专业就业方向及就业前景
  • 苏州专业网站制作方案网络营销平台
  • 外贸免费开发网站模板富库网站建设
  • 素材网站会员银川建设厅网站
  • 网站开发工程师岗位职责农八师建设兵团社保网站
  • 重庆网站建站系统平台济源做网站的公司
  • 网站建设的审批网站开发公司徐州
  • .tel域名能存放网站吗网站管理员在哪里
  • 龙井网站建设二级医院网站建设的方案
  • 网站建设要不要工商注册电脑系统优化工具
  • 徐州网站优化企业网站建设代码
  • dedecms医院网站wap模板(橙色)如何删除图标wordpress
  • 网站网站建设报价南阳公司做网站
  • 个人网站主办者名称六安做网站的
  • 网站内容添加wordpress的意思和读音
  • 婚嫁行业网站模板杭州专业网站
  • 随州网站建设学习wordpress全站登陆可见
  • 网站后台注入内蒙古建设网官网查询中心
  • 清远市住房和城乡建设局网站深圳软件外包公司都有哪些
  • 电商网站设计素材网站建站分辨率
  • 有什么做的好的ppt排版网站免费源码网站
  • 说明网站建设岗位工作职责wordpress 注册 填写密码错误
  • 嘉兴公司网站制作网站建设与管理计划