2019年6月9日

Android 7.0 之后相机/文件读写等权限获取方式改变,导致开启相机闪退

摘要: 在 Android 7.0 之前 Google 提供的动态申请权限的 API,可以调用相机拍照,访问SDcard等操作都只需要申请对应的权限,如下: 但是 7.0 更新之后,Google 收紧了对私有目录的访问权限 。Android 7.0 中尝试传递 file://URI 会触发 FileUriE 阅读全文

posted @ 2019-06-09 01:11 陈知许 阅读(1690) 评论(0) 推荐(0) 编辑

Android Manifest 中 uses-feature 和 uses-permission的作用 关系和区别

摘要: Manifest中的 到底什么关系? 其实,他们俩一个负责描述 app 会用到什么功能,一个负责向系统请求 app 所需要的权限,它们经常会搭配在一起使用。开发者应该根据自己的实际需求来使用对应的标签。 uses feature 的作用更像是一个过滤器,google play 商店会根据该标签来过滤 阅读全文

posted @ 2019-06-09 01:00 陈知许 阅读(1046) 评论(0) 推荐(0) 编辑

Android studio 3.1.3真机调试报错,no target device found

摘要: Android studio 3.1.2 的 Android monitor 改为 Android profiler,直接点这个就可以真机调试,在手机安装相应app 如果不行,报错,“no target device found”,点一下右下角这个初始化 adb,再运行即可 阅读全文

posted @ 2019-06-09 00:55 陈知许 阅读(1066) 评论(0) 推荐(0) 编辑

如何用Java实现条件编译

摘要: 在 C 或 C++ 中,可以通过预处理语句来实现条件编译。代码如下: 而Java中却没有预处理,宏定义这些东西,而有时在一些项目中,我们可能需要条件编译。那么,在 Java 中,该如何实现条件编译呢? 办法是有的: 定义一个 final 的变量,然后在 if 语句用中它隔开代码。 因为 编译器会对代 阅读全文

posted @ 2019-06-09 00:46 陈知许 阅读(1287) 评论(0) 推荐(0) 编辑

Missing android.support.FILE_PROVIDER_PATHS meta-data 报错原因分析

摘要: 此类错误多半因为拼写错误导致。有StackOverflow上便有网友将“FILE_PROVIDER_PATHS”误写成“FILE_PROVIDE_PATHS”的行为。 正确写法: 阅读全文

posted @ 2019-06-09 00:37 陈知许 阅读(5934) 评论(0) 推荐(0) 编辑

2019年5月13日

FFmpeg中AVFrame.linesize的含义

摘要: 在第一节 "FFmpeg开发教程一、FFmpeg 版 Hello world" 中遇到一个问题,在保存YUV的时候,粗暴的使用: 方式去拷贝YUV数据是有问题的,得到的图片是这样的: 必须通过以下循环才能得到正确的YUV: static void save_gray_frame(unsigned c 阅读全文

posted @ 2019-05-13 18:52 陈知许 阅读(2177) 评论(0) 推荐(0) 编辑

2019年5月9日

FFmpeg开发教程一、FFmpeg 版 Hello world

摘要: 本系列根据项目 "ffmpeg libav tutorial" 翻译而来 Chapter 0 万物之源 —— hello world 然而,本节的程序并不会在终端打印“Hello world”,而是会打印原视频文件的一些信息,比如封装格式、视频时长、分辨率、音频通道数。最后,我们将解码每一帧视频,并 阅读全文

posted @ 2019-05-09 23:17 陈知许 阅读(2426) 评论(0) 推荐(1) 编辑

2019年5月6日

从NV12中裁剪子画面注意事项

摘要: 而非: 因为NV12在竖直方向上进行了1/2下采样,水平方向上并未做下采样,所以只需CROP_Y减半: 2. 裁剪的坐标X和Y必须是偶数,否则UV和Y会有偏差。 阅读全文

posted @ 2019-05-06 21:43 陈知许 阅读(1098) 评论(1) 推荐(0) 编辑

2019年4月26日

使用FFmpeg解码并用swscale将YUV转为RGB

摘要: Makefile: 阅读全文

posted @ 2019-04-26 00:33 陈知许 阅读(1419) 评论(0) 推荐(1) 编辑

2019年4月24日

FFmpeg 开发环境搭建及第一个程序 Hello FFmpeg 编写

摘要: 1. FFmpeg 的安装 默认会将 FFmpeg 安装至 /usr/local 目录下(可通过 configure 使用 “ prefix=目录” 修改安装目录), 安装完成后分别会在 /usr/local 下的 bin、include、lib、share 四个目录下生成 FFmpeg 的二进制可 阅读全文

posted @ 2019-04-24 10:49 陈知许 阅读(560) 评论(0) 推荐(0) 编辑

导航