android
文章平均质量分 68
怪兽2014
这个作者很懒,什么都没留下…
展开
-
优雅的处理LiveData数据倒灌并解决内存泄露的问题
网上给的防止数据倒灌的很多都有内存泄露风险,原因在于Observer对象变了,在removeObservers的时候就无法把Observer移除掉,在多次调用observe之后就会出现内存泄露问题。原创 2024-03-20 14:10:08 · 325 阅读 · 0 评论 -
Android给视频添加背景音乐的解决方案
源码地址:https://www.bzblog.online/wordpress/index.php/2020/07/24/addbgmusic/在处理视频背景音乐的时候一般有两种方案:在视频原声的基础上添加背景音乐用背景音乐替换掉视频原声方案一,在视频原声的基础上添加背景音乐,同时支持调整视频原声与背景音乐声音的大小:思路用FFmpeg调用命令行的方式来做就好了,但是需要区分视频是否有音频,这个需要分开处理,这种对输入的背景音乐格式没有严格的要求,取决于FFmpeg编译的时候选择支持的音频格原创 2020-07-24 17:05:00 · 1617 阅读 · 2 评论 -
开源一个Android 音视频库,包含了视频录制,编解码,以及编辑,和常见的OpenGL,FFmpeg操作
BZMedia 是一个Android 音视频库,包含视频录制,视频编解码,视频编辑,常见的OpenGL操作项目介绍:这套音视频库包含了常见的音视频处理技术,服务于用户量高达到8亿的APP,里面使用的技术在市场上深度验证过,现在逐步整理出来然后开源,共大家学习交流源码地址:https://www.bzblog.online/wordpress/index.php/2020/07/11/bzmedia/版本更新记录:V1.0.3 支持的主要功能是视频录制:支持的采集源有YUVI420,YV12,原创 2020-07-11 21:43:56 · 1563 阅读 · 0 评论 -
Android裁剪/切割/分离YUV同时支持Camera1 Camera2
在Android中使用Camera避免不了操作YUV,但是我们经常会遇到在不同手机上Camera出来的尺寸不是我们想要的,这个时候就需要裁剪了,最优办法当然是从源头YUV进行处理,一是YUV相对来说数据量较小,二是在源头上处理了,可以为后续流程节省CPU算力开销。如果你们在整个工程中用的是Texture,我也有解决方案,稍后放出来。源码地址与Demo:https://www.bzblog.online/wordpress/index.php/2020/07/08/yuvcrop/首先我们要知道And.原创 2020-07-08 17:52:12 · 989 阅读 · 0 评论 -
Android FFmpeg命令行工具支持进度回调
本工程是基于FFmpeg4.2.3,在工程里面也有一个3.3.2的版本,有需要的可以自己去Git库里面checkout,工程17年就做好了,一直没有开源,原谅我懒,哈哈哈源码地址:https://www.bzblog.online/wordpress/index.php/2020/06/29/bzcmdffmpeg/工程支持进度回调,移动端常用的的功能都支持,如果需要支持更多的功能需要重新编译FFmpeg,请参考我之前的编译工程:https://www.bzblog.online/wordpress.原创 2020-06-29 10:07:23 · 671 阅读 · 0 评论 -
Android让VideoView填充满屏幕/父布局并保证不变形
在Android中简单的播放一下视频选用VideoView是一个不错的选择,各个厂商在出厂的时候一般都会测试视频播放,这个兼容性一般都能得到保证,而且使用VideoView播放会自动的纠正视频角度,但是有一个问题VideoView在使用过程中总是有一些空白区域留出来,很多时候我们想让他填充满屏幕,或者说父布局,于是就有了今天的议题(当然也可以通过OpenGL来自己画视频,想显示成什么样子就显示成什么样子,只不过这个相对来说麻烦一点)。首先VideoView在使用的时候有一个坑,就是在初始化的时候一定要.原创 2020-06-05 17:57:30 · 3112 阅读 · 0 评论 -
Android音视频开发-01 FFmpeg 在Android下的编译/FFmpeg building for Android
x264下载地址https//www.videolan.org/developers/x264.html需要注意的是x264的开源协议是GPL的,在使用的过程中请遵守开源协议,或者不使用x264进行编码。做音视频开发怎么都绕不过FFmpeg,FFmpeg是一个非常优秀的音视频C语言库,我们见到的有关音视频软件都是基于FFmpeg开发的,因此做Android音视频开发的第一步就是需要编译FFmpeg。FFMpeg下载地址http//ffmpeg.org/download.html。.........原创 2020-05-26 14:26:35 · 428 阅读 · 0 评论 -
Android YUV转换,支持Camera1,Camera2
之前基于RenderScript写了一个YUV转RGBA的工程,地址:https://www.bzblog.online/wordpress/index.php/2020/01/19/yuvrenderscript/ 喜欢的可以去看看,比Android原生的ScriptIntrinsicYuvToRGB要强大很多,但是近期在使用的过程中发现RenderScript比Google的libyuv速度要慢很多,于是我又基于libyuv写了一个YUV转换的工程,同时支持Camera1,Camera2输出的YUV转换原创 2020-05-25 14:57:44 · 629 阅读 · 0 评论 -
libyuv在Android下的编译
libyuv是Google开源的一款处理YUV的底层库,下载地址:https://chromium.googlesource.com/libyuv/libyuv 可惜这个地址被墙了,我下载下来了,放到我服务器上了,地址:https://www.bzblog.online/public/libyuv.zip 好了接下来就是编译了,首先我们新建一个文件夹叫libyuvbuild,让后把libyuv目录拖进去,并重命名为jni(这么做事为了方便ndk-build),如图所示:然后就是修改Android.mk原创 2020-05-13 18:17:35 · 1183 阅读 · 0 评论 -
史上最强的YUV转换RenderScript,支持转换成RGBA,BGRA,并且同时支持旋转,翻转,YUV数据格式支持NV21, YV12, YUV420_888, 分别对应Android Camer
史上最强的YUV转换RenderScript,支持转换成RGBA,BGRA,并且同时支持旋转,翻转,YUV数据格式支持NV21, YV12, YUV420_888, 分别对应Android Camera1API 以及Camera2 API 的YUV处理 这段时间在做一些Android Camera数据处理的相关工作,涉及到YUV转RGBA的事情,由于对性能要求极高我先后采用了多种方案,最开...原创 2020-01-19 18:19:27 · 2338 阅读 · 3 评论 -
Dlib 在Android的编译
Dlib 在Android的编译1.首先下载最新的Dlib源码,地址:http://dlib.net,代码依赖一个模型,下载地址:http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz22.新建一个Native C++的工程,如图所示:3.把第一步下载的文件全部copy到cpp下面,如图所示:4.如下修改CMakeL...原创 2019-12-31 11:53:53 · 1060 阅读 · 0 评论 -
Failed resolution of: Lcom/growingio/android/sdk/agent/VdsAgent;解决方案
Failed resolution of: Lcom/growingio/android/sdk/agent/VdsAgent;原创 2017-06-12 11:31:17 · 3202 阅读 · 5 评论 -
Unable to start activity com.unionpay.uppay.PayActivity
Unable to start activity com.unionpay.uppay.PayActivity这个异常是由于银联更新了支付API,导入新的就好了,具体集成请看附件原创 2015-10-27 23:21:44 · 2136 阅读 · 0 评论 -
android隐藏View动画的注意事项
android动画有一个特性就是View在隐藏的时候执行动画,View会显示出来,不管这个View是invisible还是gone掉了.我们公司现在有这样一个需求,现在有一个圆盘,要在圆盘外面有一个一个按下的动画(就是出现一个白色的180度圆弧,但是为了节省内存,只准使用一段圆弧图片,其他的就自己去做动画旋转来使用,很操蛋的....),通过按键位置来判断动画旋转的角度这个是中学问题了,这里就不说了...原创 2015-03-30 22:27:21 · 1138 阅读 · 0 评论