- 博客(20)
- 资源 (14)
- 收藏
- 关注
原创 MediaCodec进行H.264、AAC编码后封装成FLV格式
一、初始化FLV封装包FlvPacker private void init(){ mFlvPacker = new FlvPacker(); mFlvPacker.initVideoParams(WIDTH, HEIGHT, FRAME_RATE); mFlvPacker.initAudioParams(44100, AudioFormat.ENCODING_PCM_16BIT,false); mFlvPacker.setPacketLi
2021-08-31 20:15:00 743 1
原创 MediaCodec进行H.264编码(Camera采集YUV数据)
在这里插入代码片```# 系列文章目录<font color=#999AAA >提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用<hr style=" border:solid; width:100px; height:1px;" color=#000000 size=1"><font color=#999AAA >提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
2021-08-31 20:02:26 1367
原创 MediaCodec进行AAC编码(AudioRecord采集录音)
一、使用AudioRecord采集录音,创建一个采集录音管理类AudioRecorderManager.javapublic class AudioRecorderManager { private static final String TAG = "AudioRecorderManager"; // 音频获取 private final static int SOURCE = MediaRecorder.AudioSource.MIC; // 设置音频采样率,44
2021-08-31 19:38:45 1510 7
原创 FFmpeg Android 实现本地推流直播
1\在AndroidManifest.xml文件中添加权限<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.RECORD_AUDIO" />&
2021-08-27 09:34:04 476
原创 x264以及fdk-aac 编译
编译 x264x264 是采用 GPL 授权的开源视频编码库,主要用于 H.264/MPEG-4 AVC 的视频编码,仅作为编码器使用。下载地址http://download.videolan.org/pub/videolan/x264/snapshots/ https://www.videolan.org/developers/x264.htmlgit clone https://github.com/mirror/x264.git在 x264 解压目录下创建编译脚本build_x264.
2021-08-26 15:37:43 6737
原创 FFmpeg 4.2 开发 报错总结
报错:错误 1:G:\wang\work\FFmpegAndroid\app\src\main\cpp\include\libavutil\pixfmt.h:29:10: fatal error: ‘libavutil/avconfig.h’ file not found解决办法:由于avconfig.h文件里面是空的,所以我们可以把引入的该头文件去掉错误2:In file included from G:\wangqi\work\FFmpegAndroid\app\src\main\cpp\nati
2021-08-25 15:38:47 1506
原创 FFmpeg 开发(01):FFmpeg 4.2 编译和集成
FFmpeg 有六个常用的功能模块:libavformat:多媒体文件或协议的封装和解封装库;libavcodec:音视频编解码库;libavfilter:音视频、字幕滤镜库;libswscale:图像格式转换库;libswresample:音频重采样库;libavutil:工具库。编译环境:ffmpeg-4.2.2android-ndk-r20b-linux-x86_64NDK下载1、NDK下载需要翻墙才能下载2、解压 NDKunzip android-ndk-r20b-l
2021-08-25 15:21:23 883 2
原创 Android Studio 问题总结
1、AndroidStudio 编译时出现如下问题 SSL peer shut down incorrectly 或者某些jar包下载不下来,一般是因为墙的原因导致的。这时候我们就需要配置镜像来解决这个问题解决方案:buildscript { repositories { maven { url 'https://jitpack.io' } maven { url 'https://maven.aliyun.com/repository/public' }
2021-08-23 11:51:15 108
原创 Android 9.0 PhoneWindowManager中监听手势(左边滑动、右边滑动、顶部滑动、底部滑动、点击)
功能实现:在该地方监听手势滑动,可以实现顶部、底部、左边、右边滑动弹出窗口出来,例如我们手机左右滑动退出程序就可以在这里实现。代码路径:android/frameworks/base/servicescore/java/com/android/server/policy/PhoneWindowManager.java修改地方:在PhoneWindowManager.java中init方法中用到手势,这里可以监听手势(左边滑动、右边滑动、顶部滑动、底部滑动、点击)@Override pub
2021-08-18 14:17:07 1370
原创 Android 9.0 修改导航栏和状态栏进入退出动画
实现功能:去掉导航栏和状态栏进入和退出动画代码路径:android/frameworks/base/servicescore/java/com/android/server/policy/PhoneWindowManager.java修改地方:在PhoneWindowManager.java中selectAnimationLw方法中可以设置导航栏和状态栏进入和退出的动画, @Override public int selectAnimationLw(WindowState win, in
2021-08-18 13:51:57 1230 3
原创 Android 9.0 应用显示宽高比maxAspectRatio使用部分应用半屏问题
现象:代码路径:android/frameworks/base/core/java/android/content/pm/PackageParser.javaandroid/frameworks/base/services/core/java/com/android/server/am/ActivityRecord.java日志分析流程:通过dumpsys acticity看看输出的overrideconfiguration中bound的值,从日志分析看,从bounds数组中可以知道该应用距离左
2021-08-18 11:38:25 1304 1
原创 Android 9.0 蓝牙协议总结
一、蓝牙免提协议 HFPHFP(Hands-Free Profile),通俗点翻译就是免提协议,说白了就是蓝牙电话协议,可以让蓝牙设备通过协议定义好的 AT command 控制电话,如接听、挂断、拒接、语音拨号等。每个功能都有特定的 AT command 和 response.。1、HFP 协议在整个蓝牙中的架构图如下:我们通常叫做 AG,HF,举一个最简单的例子,我们平时用的手机中的 HFP 的角色就是 AG,我们平时用的蓝牙耳机中的 HFP 角色就是 HF。二、蓝牙音乐控制协议(AVRCP)
2021-08-17 10:18:24 3270
原创 Android 9.0 蓝牙电话BluetoothHeadsetClient
BluetoothHeadsetClient主要实现HFP协议,主要实现拨打、接听、挂断电话(AG侧、HF侧)、切换声道功能。AG(Audio Gate)音频网关—音频设备输入输出网关 。HF(Hands Free)免提—该设备作为音频网关的远程音频输入/输出机制,并可提供若干遥控功能。在车载蓝牙中,手机侧是AG,车载蓝牙侧是HF,在android源代码中,将AG侧称为HFP/AG,将HF侧称为HFPClient/HF。BluetoothHeadsetClient初始化/** * 连接服务
2021-08-17 09:24:53 4919 6
原创 Android 9.0 蓝牙各种广播监听
蓝牙开关状态变化BluetoothAdapter.ACTION_STATE_CHANGEDif (action.equals(BluetoothAdapter.ACTION_STATE_CHANGED)) { int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, BluetoothAdapter.ERROR); switch (state) { case BluetoothAdap
2021-08-17 09:14:38 3959
原创 Android 9.0 蓝牙通讯录 BluetoothPbapClient
蓝牙通讯录主要包含联系人和通话记录一、BluetoothPbapClient功能介绍1、主要实现电话簿下载2、电话号码簿访问协议(Phonebook Access Profile)二、BluetoothPbapClient的使用public void getProfileProxy() { boolean isPbapService = mAdapter.getProfileProxy(mContext, new ProxyServiceListener(), BluetoothProfil
2021-08-12 17:43:32 4244 8
原创 Android 8.1 PhoneWindowManager中如何实现应用区域动态全屏
实现思路:一般安卓应用分导航栏和状态栏,如果要想应用区域全屏,那么只需要把导航栏的宽度和状态栏的宽度修改为0.那怎么修改为0?其实在Android中,每启动一个窗口就重新绘制一次,重新绘制一次就可以重新设置一下导航栏和状态栏宽度。代码路径:frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java1、在PhoneWindowManager.java中,每启动一个窗口的时候就会执行beginL
2021-08-12 14:10:17 765
原创 Android 9.0蓝牙音乐上一首、下一首、暂停和播放
代码路径:packages/apps/Bluetooth/src/com/android/bluetooth/avrcpcontroller/AvrcpControllerStateMachine.java1、在AvrcpControllerStateMachine.java中MESSAGE_PROCESS_PLAY_STATUS_CHANGED和MESSAGE_PROCESS_PLAY_POS_CHANGED就是获取到播放状态 case MESSAGE_PROCESS_PLAY_POS_CHAN
2021-08-10 17:07:59 2679
原创 Android 9.0 10蓝牙音乐获取歌手、歌曲等信息
Android 9.0中蓝牙音乐其实实现很简单,蓝牙远程服务处理在Bluetooth中。修改代码路径:android/packages/apps/Bluetooth./jni/com_android_bluetooth_avrcp_controller.cppandroid/packages/apps/Bluetooth/src/com/android/bluetooth/avrcpcontroller/AvrcpControllerService.java1、在com_android_bluet
2021-08-10 14:05:24 2691 2
原创 Android SElinux权限问题解决
1.从android5.x开始,引入严格的selinux权限管理机制,经常会遇到各种avc denied的Log。 # adb shell cat /proc/kmsg | grep avc # adb shell dmesg | grep avc # adb logcat | grep avc解决原则是:缺什么补什么,一步一步补到没有avc denied为止。 2.Log解决: audit(0.0:67): avc: denied { write }for path="/dev/
2021-08-09 13:46:02 336
原创 H264/H265/YUV码流分析工具记录
H264/H265/YUV码流分析工具记录1.CodecVisa(跨平台:H264/H265...)http://www.codecian.com/downloads.html 2.H264BSAnalyzer(H264/H265)https://github.com/latelee/H264BSAnalyzer 3.GitlHEVCAnalyzer(H264)https://github.com/lheric/GitlHEVCAnalyzer 4.Elecard HEVC/AVC An
2021-08-09 13:41:36 2296
livepush.rar
2021-08-31
NDK ffmpeg fdk-aac x264开发包以及脚本
2021-08-27
ShareSDK分享封装好工具
2016-06-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人