志的博客

博文相关代码 https://github.com/MrZhaozhirong / BlogApp

NDK学习笔记:FFmpeg音视频同步3(V追A等)

NDK学习笔记:FFmpeg音视频同步3(V追A等)   本篇内容说多不多,但如果要说得明明白白的,可能就有点难度了。所以我决定把我的调试过程日志都呈现出来,方便大家理解。继上一篇文末,我们学习到了什么是DTS/PTS,还有音视同步的三种策略。那再FFmpeg框架中,又怎么体现这些变量?我们以...

2019-01-23 18:52:01

阅读数 8

评论数 0

NDK学习笔记:FFmpeg音视频同步2.5(内存池的优化)

NDK学习笔记:FFmpeg音视频同步2.5(内存池的优化)   继续上一篇 AV_PACKET_BUFFER内存池应用。FFmpeg音视频同步1~2的代码,demo运行的效果应该是怪怪的。 怎么怪?前几秒视频丢失 \ 混乱花屏 \ 视频慢、音频快。这一章我们一一分析这些问题的根本原因,以及解...

2019-01-20 10:16:06

阅读数 42

评论数 0

NDK学习笔记:FFmpeg音视频同步2(内存池应用)

NDK学习笔记:FFmpeg音视频同步2(内存池应用)   本章继续上一篇的内容,实现nativePlay方法,创建简易的AVPacket缓冲区,实现高效的存储。废话不说,直接上代码。 JNIEXPORT void JNICALL Java_org_zzrblog_ffmp_SyncPla...

2019-01-17 23:13:22

阅读数 369

评论数 0

NDK学习笔记:FFmpeg音视频同步1(视频解码+音频解码)

NDK学习笔记:FFmpeg音视频同步1(视频解码+音频解码)   0、开篇先来点废话 本篇文章开始,我和大家一起来讨论这个经久不衰的音视频开发的难点 —— 音视频同步。囊括内容比较多,大到代码组织,小至C语法糖,尽力做到每一个像我一样的菜鸡都能掌握解决方法。 正式开始之前,我又想起了之前...

2019-01-14 22:37:06

阅读数 43

评论数 0

FFMPEG错误速查。

FFMPEG错误速查。自用。持续更新。 一些常见的FFERRTAG的值转换 AVERROR_BSF_NOT_FOUND = -1179861752 AVERROR_BUG = -558323010 AVERROR_DECODER_NOT_FOUND = -1128613112 AVERROR_...

2019-01-09 15:37:32

阅读数 50

评论数 1

NDK学习笔记:线程JNIEnv,JavaVM,JNI_OnLoad(GetEnv返回NULL?FindClass返回NULL?)

NDK学习笔记:线程JNIEnv,JavaVM,JNI_OnLoad   此文章是关于NDK线程的第二篇理论知识笔记。主要有两个点,如下: pthread_create(Too many arguements, expected 1) ? 线程中如何获取JNIEnv?GetEnv返回NUL...

2018-12-27 17:31:44

阅读数 48

评论数 0

NDK学习笔记:POSIX-thread 用法总结(pthread_join、pthread_cancel、pthread_mutex_、pthread_cond_ )

NDK学习笔记:POSIX-thread 用法总结 三个简单的例子,记录NDK中的POSIX-thread线程的常用用法。好记性不如烂笔头。   第一个例子,创建,退出,自杀,它杀。 #include <stdlib.h> #include &...

2018-12-25 17:45:07

阅读数 21

评论数 0

NDK学习笔记:JNI调用Java层方法创建Native的AudioTrack播放PCM(方法签名,CallXXXMethod)

NDK学习笔记:JNI调用Java层方法创建Native的AudioTrack播放PCM  题目有点复杂,不过确实就是那么回事。这章想记录的内容比较多,先列出来: native static 与 native的参数列表 区别 JNI 调用 Java的方法(相关API、方法签名的获取) na...

2018-12-19 16:04:27

阅读数 38

评论数 0

NDK学习笔记:FFmpeg解压MP34提取音频PCM(swrContext、swr_alloc_set_opts)

NDK学习笔记:FFmpeg解压MP34提取音频PCM   承接 FFmpeg解压MP4提取视频YUV ,这次我们需要提取的是音频原始数据PCM。代码流程大同小异,主要区别就是AVFrame->PCM数据的转换。废话不说了,直接贴代码。 public class Zz...

2018-12-17 17:44:42

阅读数 16

评论数 0

NDK学习笔记:FFmpeg + SurfaceView = 播放 解码后的AVFrame(ANativeWindow_fromSurface)

NDK学习笔记:FFmpeg + SurfaceView = 播放AVFrame   承接上一篇FFmpeg解压MP4得YUV,在我们解压媒体文件(MP4,AVI,RMVB等)之后获取得到yuv420p格式的AVFrame之后,该怎么优雅的显示到Android的屏幕上呢?此时我们应该想到And...

2018-12-13 22:57:13

阅读数 21

评论数 0

NDK学习笔记:AndroidStudio NDK 日志输出 & 断点调试

NDK学习笔记:AndroidStudio NDK 日志输出 & 断点调试   一、 Why I need log&debug ? 在我们正常的开发过程中,业务调整必须依靠日志的输出;出现非业务逻辑的异常状况,我们就必须靠断点调试来排查问题。s...

2018-12-10 11:52:52

阅读数 32

评论数 0

NDK学习笔记:FFmpeg解压MP4提取视频YUV

NDK学习笔记:FFmpeg解压MP4提取视频YUV   继上一篇NDK的开发笔记,既然我们已经从源码手动编译ffmpeg-so出来了,这篇文章就当是检验编译的so是否可用,对FFmpeg进行一番学习,写一个最简单的例子。并结合工作中的一些架构内容,推出一些简单架构的话题。欢迎大家互相学习。事...

2018-12-07 18:12:11

阅读数 41

评论数 0

NDK学习笔记:手动编译Android使用的FFmpeg库(Linux)

此文主要是翻查整理当年自己手动编译FFmpeg的记录,之前是在网易云笔记上,现在搬到CSDN上。   一、环境配置 开发机windows10 64位,安装xshell+xftp方便与编译机器文件传输和操作通信。官网下载链接,注册的时候是教育自用而非商用。 编译机Ubuntu 14.04.5...

2018-11-21 23:46:25

阅读数 64

评论数 2

(转载)(墙裂推荐)神经网络的基本工作原理

作者:SoftwareTeacher  来源:CSDN  原文:https://blog.csdn.net/SoftwareTeacher/article/details/83991254  版权声明:本文为博主原创文章,转载请附上博文链接! --------------------- 尊重别人...

2018-11-16 16:38:05

阅读数 76

评论数 0

NDK学习笔记:一起来变萝莉音!FMOD学习总结(下)

NDK学习笔记:一起来变萝莉音!FMOD学习总结(下)   一、创建自己的变音demo 上一节我已经能够在AndroidStudio上跑起了fmod的基础教程。还有疑问的同学可以重新阅读跟着来跑一次。这章节计划参照官方的play_sound.cpp + effect.cpp,实现类似变音器的...

2018-11-05 11:59:38

阅读数 163

评论数 0

NDK学习笔记:一起来变萝莉音!FMOD学习总结(上)

NDK学习笔记:一起来变萝莉音!FMOD学习总结(上) 一、不是fmod(),不是/fmod,是FMOD! 关于 FMOD,总感觉全网关于它的文章不多,也不够细,Android平台上的总结更是如数家珍。可能是FMOD自身没有中文说明介绍的原因吧,另外一个原因可能就是闭源商用付费吧。我自己是在2...

2018-10-14 22:12:44

阅读数 77

评论数 0

复活。怎样删除github远程仓库上某些目录or文件

最近都在忙工作还有搬家,所以博客就就暂停了更新。 开心的是,在文章没有更新的期间,博客和Github都收到了不少朋友的一些实用性的问题,我们都一一展开了探讨并寻求了解决方案,互相进步。 说下具体的,在7~8月份,我工作上主要是忙于整理重写公司的硬编解码、软编解码的模块结合,公司APP架构的一些...

2018-09-02 18:41:39

阅读数 59

评论数 0

(转载)文科生都能看懂的【机器学习中的】线性代数

作者:Niklas Donges机器之心编译参与:Tianci LIU、思源线性代数的概念对于理解机器学习背后的原理非常重要,尤其是在深度学习领域中。它可以帮助我们更好地理解算法内部到底是怎么运行的,借此,我们就能够更好的做出决策。所以,如果你真的希望了解机器学习具体算法,就不可避免需要精通这些线...

2018-06-12 22:01:07

阅读数 194

评论数 0

OpenGL.ES在Android上的简单实践:23-水印录制(FBO离屏渲染,解决透明冲突,画中画)

OpenGL.ES在Android上的简单实践:23-水印录制(FBO离屏录制,解决透明冲突)   1、水印签名罢工了? 不知道大家有没注意到,之前我们使用MediaCodec录制的视频,水印签名那部分区域还是黑黑的啊(笑哭.jpg)。道理还是之前说过的,原生的Surface默认格式是RGB...

2018-06-12 11:05:45

阅读数 734

评论数 5

OpenGL.ES在Android上的简单实践:22-水印录制(MediaCodec输出h264+MediaMuxer合成mp4 下)

OpenGL.ES在Android上的简单实践:22-水印录制(MediaCodec输出h264+MediaMuxer合成mp4 下)   1、Inner CameraRecordEncoder 我们先来温故一下CameraRecordEncoder的设计逻辑,其代码组成分为 编码录制工作线...

2018-06-04 16:55:59

阅读数 253

评论数 2

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