Kingtous' Blog

Keep Hungry, Keep Foolish.

FFmpeg音频降噪(cpp)

FFmpeg

FFmpeg音频降噪功能的使用 网上关于FFmpeg的使用实在太少,这里自己摸索了一下 此处对pcm_s16le,单声道,256kbit/s的音频进行高低通降噪 除下高低通,还有lv2,afftdn等,可以参考官网 为了通用性,此处直接读取相关数据到unsigned char*数组中,并直接构造AVCodecContext。 创建音频滤镜图 在FFmpeg里,降噪也...

安卓跨进程通信-Binder_AIDL

aidl

此处简单讲一个例子: 通过跨进程通信,获取一个自增的数字,3s一次轮询,显示在另一个进程的屏幕上。 安卓是基于Linux,那为什么Android要采用Binder作为IPC机制呢 By GitYuan 定义AIDL统一接口 此处定义一个queryNumber的函数,函数调用后返回一个int值 // IMyAidlInterface.aidl package com.example....

kotlin的几种委托机制

kotlin

委托机制中的三个角色 约束:通常是接口、抽象类,也是被代理的业务 被委托对象:具体业务的逻辑执行者 委托对象:负责对真实角色的应用,将约束类定义的业务委托给具体的委托对象 类委托(标准的静态代理模式) 假设有这么一段代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 interface Base { fun show() ...

面向对象设计模式分类与6大设计原则

单一职责...

设计模式的分类 参考:菜鸟教程:设计模式 创建型 单例模式 工厂方法模式 需要时new一个 抽象工厂模式 建造者模式 对外隐藏类的构造方法,通过Builder类提供的方法进行构造 ...

Github Action的使用

Qt、CMake Project

此处记录使用Github Action编译Qt C++、CMake项目。 基本用法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 name: 任务名称 on : [触发event1、触发event2...] # event下还有很多配置参数如`paths-ignore`可以忽略相关文件如README jobs: #job名称 build: name: 任务...

从给Android APP集成FFMPEG谈JNI的使用

Android JNI Usage

编译FFMPEG为.so动态链接库 见上期 给Android项目添加CMake支持 在build.gradle的 defaultconfig下添加 1 2 3 4 externalNativeBuild { abiFilters "arm64-v8a" } } ...

安卓下编译及修剪FFMPEG插件

按照特定需求修剪

Android下编译及修剪FFMPEG插件 FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它包括了目前领先的音/视频编码库libavcodec。 FFmpeg是在 Linux 下开发出来的,但它可以在包括 Windows 在内的大多数操作系统中编译。这个项目是由 Fabrice Bellard 发起的,现在由 Michael Niedermay...

安卓Binder机制

跨进程通信

文章写的挺好: Binder机制

解决Flutter下iOS deployment target的问题

minimum deploy target error.

Xcode 12.1,iOS 14.1 1. build时出现target error的问题 plugin xxx target is 11.0, but minimum target is 9.0… 不知道是Flutter没考虑到,还是说插件本身可能强制使用了某些target 解决办法:在Podfile尾部加入: 1 2 3 4 5 6 7 8 9 10 11 &...

制作一个简单的Magisk模块

magisk面具

Magisk 20.3+模块模板地址:Pinkdoge/magisk-module-template 制作一个简单的Magisk模块 目录结构 一个完整的模板例子架构如下: 其中: META-INF中包含刷机脚本 其中默认含有通用代码,可以按照自己的需求定制(不过大部分都在这边增加ui_print在刷入时显示作者信息) ...