自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(94)
  • 资源 (5)
  • 问答 (1)
  • 收藏
  • 关注

原创 Activity4个启动模式梳理

standard这种是默认的启动模式,如果是此启动模式。每次启动Activity的时候,不管是否存在这个Activity,都会创建一个新的Activity放在栈顶。SingleTop为了解决standard模式下带来的问题(如果FisrtActivity已经在栈顶了,为什么还要再创建一个新的FisrtAcvitity?),使用SingleTop启动模式可以解决如果该Activity已...

2020-03-13 16:39:23 239

原创 Android Studio Processor 自定义注解器不执行以及 Messager 日志看不到的问题

AndroidStudio版本:3.5.2gradle版本:5.4.1tools:com.android.tools.build:gradle:3.5.3网上搜了下,都说是需要将要编译注解的library添加annotationProcessor即可。可是我看了我的项目结构,已经添加了这些依赖:app.buildandroid { compileSd...

2020-01-01 22:47:34 2625 2

原创 解决Android Studio cannot open this project, please retry with Android Studio 3.5 or new

This version of Android Studio cannot open this project, please retry with Android Studio 3.5 or newer出现这个问题是因为使用的Gradle版本太高,只需要将gradle降级就可以,或者使用本地还能编译的配置版本替换即可。distributionUrl=https\://servic...

2019-12-29 21:39:31 32959

原创 FFMpeg目录操作 实现ls命令

FFMpeg目录操作 实现ls命令1.操作目录重要函数avio_open_dir();avio_read_dir();avio_free_directory_entry();avio_close_dir();2.操作目录重要结构体AVIODirContext 操作目录的上下文AVIODirEntry 目录项。用于存放文件名,文件大小等信息3.代码/*实现类似LS的命令*...

2019-11-16 20:27:54 338

原创 FFMpeg文件目录操作

FFMpeg文件目录操作1.文件的删除与重命名删除 avpriv_io_delete()移动 avpriv_io_move()2.代码#include <libavformat/avformat.h>#include <libavutil/log.h>#include <stdio.h>int main(int arg,char* argv[...

2019-11-16 20:26:40 1648

原创 FFMpeg数据流处理 抽取音视频流

FFMpeg数据流处理1.基本概念(1)多媒体文件里面其实是流的容器(2)流有很多种比如,stream/track…但是各路流互不影响(3)每种流是由不同的编码器编码的(4)从流中解码出的数据称为包(5)在一个包中包含着一个或者多个帧2.重要结构体(1)AVFormatContext 上下文,连接多个api的桥梁(2)AVStream 通过AVStream可以获取各种包(3)...

2019-11-16 20:24:42 1039

原创 Ubuntu FFMpeg开发日志系统入门以及遇到的问题解决

FFMpeg日志系统1.添加头文件#include <libavutil/log.h>2.设置打印日志信息级别当需要打印的日志信息级别大于设置的级别的时候才会打印av_log_set_level(AV_LOG_DEBUG);av_log_set_level(AV_LOG_INFO);av_log_set_level(AV_LOG_WARN);av_log_set_le...

2019-11-14 23:12:17 761

原创 FFMpeg开发前的准备-C基础以及编译静态库和动态库

Vim 基本操作…拷贝:yy/yw粘贴:p删除:dd/dw光标移动(命令行模式): h(左移)/j(下移)/k(上移)/l(右移动)跳转到文件头:gg跳转到文件尾部:G跳转到行头:^跳转到行尾:$查找和替换:查找关键字(命令模式下):/关键字查找与替换: :%s/关键字/替换字/gc显示行号:set number指定范围替换:21,23s/Magic/Joy/gc多窗...

2019-11-13 23:26:26 288

原创 FFMpeg直播命令拉流与推流

FFMpeg直播命令拉流与推流.直播推流ffmpeg -re -i test.flv -c copy -f flv rtmp://server/live/streamName-re 减慢推流的帧率-c copy 表示将流直接拷贝直播拉流ffmpeg -i rtmp://server/live/streamName -c copy dump.flvffmpeg -i rtmp://5...

2019-11-10 17:58:54 5370

原创 FFMppeg视频图片互转

FFMppeg视频转图片ffmpeg -i video.mp4 -r 1 -f image2 image-%3d.jpeg-r 表示转换图片的帧率,1表示每秒一张图片-f 表示多媒体抓换成什么格式,image2是一种图形库image-%3d.jpeg %3d表示生成的文件名字是动态的,%3d匹配(你懂得)比如当前第一帧,名字为image-001.jpegFFMppeg图...

2019-11-10 17:40:54 376

原创 FFMpeg裁剪与合并命令

FFMpeg裁剪与合并命令裁剪命令ffmpeg -i video.mp4 -ss 00:02:00 -t 10 crop_video.mp4-ss 裁剪开始时间,从n时n分n秒考试裁剪-t 裁剪时长 单位s合并命令ffmpeg -f concat -i input.txt concat.mp4concat 表示对后面的文件进行拼接input.txt 表示要合并的文件列表格式为...

2019-11-10 17:25:46 635

原创 FFMpeg 滤镜处理(视频水印以及音频回声)

总体流程:输入文件—demuxer–编码数据包—decoder–解码数据帧–encoder–编码数据包–muxer输出文件demuxer 表示拆分,比如音频和视频的分离decoder 表示对音频进行解码为PCM ,对音频数据解码为YUVencoder 表示对音频PCM重新编码为想要的格式,比如MP3;对YUV数据重新编码,比如MP4等muxer 表示重新将编码后的音频和视频合并PS:上...

2019-11-10 16:58:32 1213

原创 FFMpeg提取原始数据

1.提取YUV数据ffmpeg -i test.mp4 -an -c:v rawvideo -pix_fmt yuv420p out.yuv-an 表示不要音频播放进行测试,由于现在的视频是原始数据,所以需要指定大小和格式ffplay -s 100x100 -pix_fmt yuv420p out.yuv2.提取PCM数据ffmpeg -i test.mp4 -vn -ar 4...

2019-11-08 22:39:44 528

原创 FFMpeg分解与复用

分解与复用输入文件—demuxer—编码数据包----muxer—输出文件1.复制转换ffmpeg -i test.mp4 -vcodec copy -acodec copy test.flv-i 输入文件-vcodec copy 视频编码处理方式-acodec copy 音频编码处理方式2.只拷贝视频ffmpeg -i test.mp4 -vcodec copy -an test...

2019-11-07 23:42:21 403

原创 Ubuntu 16.04 FFPLay播放有画面没有声音

首次编译完FFMpeg后,可能播放没有声音。错误信息如下:SDL_OpenAudio (2 channels, 44100 Hz): No such audio deviceSDL_OpenAudio (1 channels, 44100 Hz): No such audio deviceNo more combinations to try, audio open failed经过网...

2019-11-07 20:35:17 1148

原创 Ubuntu16.04 编译FFMpeg以及FFPlay

1.下载FFmpeg源码git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg2.安装SDL不安装SDL编译之后不会生成ffplay(1)http://www.libsdl.org/download-2.0.php 下载SDL源码(2)解压(3)执行 ./configure make && make in...

2019-11-05 23:21:33 813

原创 关于Android Launcher启动后,第一次点击主页键,Launcher直接重启的问题

前几天碰到的问题,mark一下原因:因为Android系统会自己启动Launcher,而Launcher作为一个应用在开机的时候接收到开机广播所以在开机广播中调用startActivity启动了。但是这并不属于系统启动的,所以系统并不知道你启动Launcher了。当你点击主页键后,系统才开始启动自己的Launcher。所以就会产生Launcher重启的现象。解决办法:不要自己启动La...

2019-08-16 19:55:58 678

原创 Android 弱引用接口引起的回调不执行的问题

为了解决内存泄漏的问题,会使用到弱引,这样可以让程序被杀死的时候尽快释放被引用的实例。今天碰到一个问题,就是在使用弱引用的时候传入一个回调监听,但是执行的时候发现又没有执行回调,打印log发现,回调一直为null所以一直没有执行。一步一步排查,发现引用的监听是一个局部变量,在方法局部使用之后就被回收了,所以一直无法执行回调。解决的办法:将申明的局部变量变为全局变量就可以解决被回收的问题。...

2019-07-22 02:38:29 986

原创 RxJava操作符

学习新的东西还是要写下博客,不然太容易忘记了。。。RxJava的操作符操作符分为以下几类创建操作符 interval 创建一个按固定时间间隔发送整数序列的Observable range 创建发送指定范围的整型序列的Observable repeat 创建一个N次重复发射特定数据的Observable 示例代码如下:package com.magi...

2019-05-06 21:03:42 179

原创 RxJava中线程调度用法,指定在主/子线程中执行

终于到了这个时刻,Android中的定律,主线程不做耗时操作,子线程不更新ui。这次也是根据给初学者的RxJava2.0教程(二)进入下面的学习。直接上代码 private TextView mTextView; public RxJavaThread(TextView textView) { mTextView = textView; } ...

2019-05-03 15:38:44 4151 1

原创 RxJava中onComplete onError以及dispose的用法

onComplete 和 onError 是可观察者发送的事件,两个事件之后,观察者不再继续接收消息。dispose是观察者主动调用的方法,调用之后,观察者不再继续接收消息。从上游和下游的关系来讲,onComplete和onError是上游来通知下游不再接收消息的,dispose是下游主动告诉上游自己不再接收消息的。...

2019-05-02 17:38:16 4183

原创 RxJava2.x.y学习之路(一)

本来买了本Android进阶之路,里面有写到RxJava的内容,准备跟着学习来着,结果里面的内容有点老了,rxjava都2.x.y了。所以只能到网上找找资料了。 推荐一个简书地址,感觉还不错,给初学者的RxJava2.0教程 大致说一下第一次看到RxJava的想法,大概就是就是订阅和被订阅,和EventBus有点像。最终是实现异步回调。还是先来个He...

2019-05-02 17:09:49 214

原创 原子性、可见性和有序性

目录原子性可见性有序性原子性对基本数据类型变量的读取和复制操作就是原子性操作。且原子性操作是不能被中断的,为什么这么说呢?可以看下下面的例子。x = 3;y =x;x++;类似于这种,首先x=3就是一个简单的赋值语句,直接将3赋值给x。(只有一个步骤,无法被终端)y=x就不一样了,首先需要读取x的值,然后才能将x的值赋值给y。(有两个步骤)x++也是,先读...

2019-04-22 22:59:31 408

原创 关于在Android线程池中遇到的问题记载

最近在公司收尾项目中碰到一个人脸识别的问题,在某种特定的情况下,人脸会出现不能识别的情况。经过重重排查,发现我们写的Launcher在进入后台的时候,主Launche会经历一次正常的生命周期。在onDestroy的时候,没有释放整个逻辑验证。找到原因后,我直接将线程池在onDestroy的时候shutdown并在while(flag)的地方将flag置为false。本来以为这样就可以停止整...

2019-03-31 20:43:54 216

原创 Android Graphics 内存溢出导致C层崩溃GL异常

今天给客户解决一个问题:客户在调用人脸SDK1:N接口后需要调用1:1去重,然后再去重的时候使用Toast弹出比对分数。在连续比对3分钟后,APP崩溃了。客户以为是算法的问题,然后反馈到这边。我看了一下运行的时候的内存,发现内存一直在增长。整个内存呈现增长的趋势。开始的时候以为是人脸指针没有关闭,导致的内存溢出。观察了一下,发下Native的内存并没有太大波动,于是看了Java层的内存,似...

2019-03-26 00:10:35 5498

原创 Android崩溃的时候是否会走onDestroy?

如果是主线程蹦了,那么不会走onDestroy.如果是子线程崩了,那么会走onDestroy.

2018-11-21 23:06:08 3724

原创 Process 'command 'D:\AndroidNDK\android-ndk-r16b/ndk-build.cmd'' finished with non-zero exit value 2

 Process 'command 'D:\AndroidNDK\android-ndk-r16b/ndk-build.cmd'' finished with non-zero exit value 2  Process 'command 'D:\AndroidNDK\android-ndk-r16b/ndk-build.cmd'' finished with non-zero exit valu...

2018-06-21 11:19:08 3563 5

原创 GreenDao查询

查询:List&lt;YTFaceBean&gt; ytFaceBeans = MainApplication.getDaoSession().getYTFaceBeanDao().queryBuilder().where(YTFaceBeanDao.Properties.UserPin.eq(userPin)).build().list();List&lt;User&gt; list = use...

2018-05-24 21:40:46 3055

原创 ANR OOM问题汇总

记录一下碰到的ANR问题 1.在循环中频繁调用runOnUIThread()2.循环创建Bitmap的时候,应该注意不要每次都new 一个Bitmap应该再循环外createBitmap,然后重新赋值3.循环中new byte[]数组。也应该只初始化一次,相机回掉的时候就很容易出这种问题。 因为byte[]数组需要重新开辟空间,虽然java有自动回收机制,但是可...

2018-05-11 22:34:42 357

原创 android 设置EditText只可以输入字母或者数字

 android:inputType="number" android:digits="1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"inputType并没有起到什么作用,唯一的作用就是限制软键盘弹出来是数字键盘...

2018-05-09 21:58:25 672

原创 简单的Java对象数组进行排序

比如要对一个对象进行排序,根据他的分数来进行排序,首先要是实现Comparable接口,实现compareTo方法。public class Person implements Comparable&lt;Person&gt;{ int score; String name; public Person(int score, String name) { super(); t...

2018-04-17 09:06:52 6020

原创 Android判断当前Android版本号

int version = android.os.Build.VERSION.SDK_INT;  if (version &gt; 15) {  }else{  }  

2018-03-28 21:49:33 10483

原创 Bitmap镜像

private Bitmap convertBitmap(Bitmap srcBitmap){ int width = srcBitmap.getWidth(); int height = srcBitmap.getHeight(); Bitmap newBitmap = Bitmap.createBitmap(width,height, Bitmap.Config.AR...

2018-03-28 21:47:34 1780

原创 线程池的使用

1.CachedThreadPool /** * 缓存线程池。 * 若线程池长度超过处理需要,可灵活回收空闲线程。 * 若无可回收,则新建线程 * @author Administrator * */public class CachedThreadPool { public static void main(String[] args) { ExecutorService...

2018-02-27 12:50:44 226

原创 GreenDao和LitePal的一些使用心得

这里有个大神有更加详细总的来讲,两者都是比较好用的工具,虽然都无法满足我的一个需求:自动存储float[]数组。但是GreenDao在编译的过程中就会告诉你无法解析float[]数组类型,但是LitePal在使用过程中直接抛出异常(无法找到与之匹配的类型)。GreenDao报错LitePal使用过程中报错(不是我使用方法不当,我试过不加float[]类型的就不会报错)其次,我发现,LitePal在...

2018-02-13 14:02:50 2021 1

原创 Android 异步任务 AsyncTask的使用

public class DownloadTask extends AsyncTask&lt;Void,Integer,Boolean&gt; { private static final String TAG = "Magic"; private Context mContext; private ProgressDialog progressDialog ; ...

2018-02-12 21:05:08 303

原创 Android SQLite 自增重置 自增清零

执行以下语句即可db.execSQL("update sqlite_sequence set seq=0 where name='表名'")将要清空的表替换为表名即可

2018-02-12 21:04:10 1540 4

原创 SqlLite存储float[]数组型数组

今天碰到一个问题,公司提供的人脸算法提取的特征点是float[]数组,在存储的时候想了一些办法,有存储为byte[]或者字符串等等,但是最后都是失败告终,因为虽然能够存储但是怎么还原呢?可能是我太菜吧,,哈哈哈查找了很多方法后,找到了一个折中的办法,就是使用Gson啦!先使用Gson将float[]数组转换为String字符串,最后在转成float[].具体实现代码如下:Gson gson = n...

2018-02-12 20:38:29 6449 9

原创 Android调用摄像头取像

思路:利用Camera和SurfaceHolder步骤 **1.创建布局文件,初始化控件** 利用SurfaceView进行相机预览 <SurfaceView android:layout_width="match_parent" android:layout_height="match_parent" android:i

2017-11-27 21:02:07 1014 1

原创 Android-Animation动画学习

Android动画主要分为 补间动画 和 逐帧动画 动画的实现方式 1.代码实现 2.xml文件实现所有演示都基于一张图片补间动画 补间动画 之 Alpha:透明度渐变动画(1)编写Alpha渐变动画文件duration:持续时长,以ms为单位 fromAlpha:开始时的渐变度 toAlpha:结束时的渐变度 若需无限循环,需要设置...

2017-11-26 21:29:49 261

SSM搭建思维导图,包含jar包以及各种配置文件信息

里面已经包含了需要搭建框架的jar包,还有各种配置信息已经配置好,按照操作来应该是可以搭建好ssm的,各位请自行下载测试

2017-08-24

SpringMVC使用思维图,自带SpringMVC jar包

SpringMVC资源合集,包括配置文件,配置方法, jar包等等都包括在里面,适合新手快速上手。不足之处请指出。

2017-07-26

Mybatis使用思维图

推荐新手小白使用的mybatis思维图,适合快速上手。使用Xmind绘制,打开请使用Xmind(免费版)。不足之处,请指出!

2017-07-25

Mysql数据库驱动mysql-connector-java-5.1.41-bin.jar

Mysql驱动

2017-07-09

基于SOCKET的C/S结构聊天室

基于java的socket网络聊天室,可以实现用户在线列表显示、用户下线提示、群聊和私聊功能。本人课程设计做的,可能会有少许bug。

2017-04-14

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除