何俊林

韬光养晦、伺机而动、弯道超车

是时候更新Android Studio 3.5了!不信,你看~

Google I/O 2018 大会,被开发者吐槽,不要老是搞那么多新特性,而应该多关注Android Studio的质量和稳定性。所有一直都有一些梗:垃圾软件,毁我青春。 于是从Google I/O 2018 大会后,Google启动了对Android Studio专项工程:代号磐石(Proj...

2019-05-18 16:42:56

阅读数 13

评论数 0

我身边那些资深程序员,他们是怎么突破年薪百万的?

随着这两年,社交圈的扩大,也让我逐渐认识到了越来越多的年薪百万的资深程序员,也刷新了我过去无知的认知。他们其实非常低调,鲜有对外吹嘘自己收入,一直兢兢业业的在技术上驰骋人生,当然,这样的人已经是程序员中前10%了,绝大部分程序员的瓶颈在年薪60w-70w左右,就是天花板了,优秀的人总是喜欢和更优秀...

2019-04-27 18:38:08

阅读数 5551

评论数 28

被裁的第50天,我终于拿到心仪公司Offer

今天分享的是之前分享文章中被裁的小C,可以看这篇文《寒冬之下,被cai的那些人到底去哪了?》,最近他已经找到心仪公司今日头条Offer,并且即将入职,在应我要求下,他写了篇总结文如下。下文中的"我",不是鱼哥,是特...

2019-02-21 15:16:44

阅读数 11831

评论数 29

直播首屏耗时400ms以下的优化实践

本文首发于公号:何俊林 导读:直播行业的竞争越来越激烈,进过18年这波洗牌后,已经度过了蛮荒暴力期,剩下的都是在不断追求体验。通过多种方案并行,把首开降到500ms以下,希望能对大家有借鉴。 背景:基于FFmpeg的ijkplayer,最新版本0.88版本。 拉流协议基于http-flv,http...

2018-11-22 15:18:46

阅读数 694

评论数 0

音视频开发著作《Android音视频开发》终于发售了,先来一波签名送书福利!

经历了两年多,我的著作终于和大家见面了,写书是一件很磨练人耐力的事情,从打算写一本书开始后,心里无时不刻有一块大石头压在头顶。一来要保证专业性,二来要保证质量,同时还要兼具备怎么表达,才能让别人明白所说的意思。所以看起来没有那么简单。近年来,直播,短视频行业相关业务发展迅猛。Android音视频开...

2018-10-23 11:46:27

阅读数 3759

评论数 8

如何编译并使用x264库

x264是性能最好的H.264/AVC编码器,基于GNU GPL协议。FFmpeg可以使用x264作为编码库,能够提高编码性能。 准备 环境linux 下载ffmpeg源码: http://www.ffmpeg.org/download.html 下载x264源码: git://git.vide...

2018-10-09 11:07:43

阅读数 767

评论数 0

关于Android Pie(Android 9.0),你想知道的都在这了

2018年8月7日-凌晨1点,谷歌发布了Android 9.0操作系统,它的名字是Android 9,被命名为Android Pie。让我们看看关于Android 9派你需要知道的一切。 大纲如下: - Android Pie 新特性有哪些? - 官方Release Note更新说明 ...

2018-08-08 00:34:48

阅读数 14873

评论数 1

JNI开发中,你需要知道的一些建议

本文原文是:http://developer.android.com/training/articles/perf-jni.html,翻译费了我不少功夫,但是我自己收获也很大。JNI全称Java Native Interface。它为Java与本C/C++之间提供了一种交互方式。JavaVM 及 ...

2018-07-09 15:20:03

阅读数 911

评论数 0

VLC框架总结(一)VLC源码及各modules功能介绍

一般情况下,播放一个音视频分为4个步骤 1、access访问 2、demux解复杂 3、decode解码 4、output输出 access:访问可以理解为接收、获取、得到数据资源,包括解析访问源(url), 使用http协议,rtsp协议,ftp协议,建立连接,获取数据。demux:解复用就是...

2017-09-07 23:54:57

阅读数 3067

评论数 1

FFmpeg总结(十三)用ffmpeg基于nginx实现直播功能,不用第三方SDK,自研推流拉流

请尊重分享成果,转载请注明出处,本文来自逆流的鱼yuiop,原文链接: http://blog.csdn.net/hejjunlin/article/details/71976574直播app实现流程 1.采集 2.滤镜处理 3.编码 4.推流 5.CDN分发 6.拉流 7.解码 8.播放 9....

2017-05-14 14:33:09

阅读数 5389

评论数 5

FFmpeg总结(十二)用ffmpeg与nginx实现直播多路流并发播放

下载 nginx 和 nginx-rtmp源码: http://nginx.org/download/nginx-1.5.10.tar.gz https://github.com/arut/nginx-rtmp-module/archive/master.zip编译安装: cd nginx-...

2017-05-07 16:21:10

阅读数 13892

评论数 6

FFmpeg总结(十一)用ffmpeg进行转格式,Android下播放网络音频流

思路: 1、mp3转成pcm(音频数据),ffmpeg做的事 2、OpenSL ES引擎创建AudioPlayer,实际调用了AudioTrack遇到的错误: Error #include nested too deeply 原因:c文件互相引用 解决方案: 1、将两个头文件共用的那一部...

2017-05-07 11:13:34

阅读数 4190

评论数 1

FFmpeg总结(十)用ffmpeg进行在视频中加水印图、加gif图

centos下编译ffmpeg,mac,windows,linux都编译过了,最复杂是windows,当然会了,也不复杂。

2017-05-02 21:12:45

阅读数 5090

评论数 2

FFmpeg总结(九)用ffmpeg进行切片生成m3u8索引文件

在直播和点播中,通常后台并不会直接给一个http://xxx.xxx.xxx.xxx/xxx.mp4这样的url给客户端,而是通过m3u8索引列表,给客户端。今天来通过ffmpeg进行切片生成m3u8索引文件。首先将视频文件转为视频编码h.264,音频编码aac格式的mp4文件 1、使用ffpr...

2017-04-30 11:22:05

阅读数 17603

评论数 5

FFmpeg总结(八)windows下用ffmpeg获取视频缩略图

环境:VS 2015运行程序,生成RGB图像数据:将RGB图像数据转换成yuv格式,通过ffmpeg命令,如下:验证画面完整性,需要用YUVplayer来打开yuv文件:如下:完整代码: #include "stdafx.h" extern "C" { #i...

2017-04-25 11:03:29

阅读数 2362

评论数 0

FFmpeg总结(七)AV系列结构体之AVIOContext

AVIOContext结构体位于libavformat/avio.h下:AVIOContext的描述:是字节流IO上下文, AVIOContext不能直接被函数指针调用,应当在应用程序实现自定义IO时,通常是通过avio_alloc_conext()函数进行设置函数指针。AVIOContext的成...

2017-04-18 10:11:40

阅读数 2640

评论数 0

FFmpeg总结(六)AV系列结构体之AVPacket

AVPacket位置:libavcodec/avcodec.h下:AVPacket: 通常通过demuxer导出的data packet作为解码器的input data 或是收到来自编码器的data packet,通过muxer进入输出的output data 看如下图,更易理解: 对于视频来说...

2017-04-13 10:47:22

阅读数 3408

评论数 0

FFmpeg总结(五)AV系列结构体之AVCodec、AVCodecParameters、AVCodecParser、AVCodecParserContext、AVCodecDescriptor

AVCodec: 编解码器结构体 位于libavcodec/avcodec.h中typedef struct AVCodec { const char *name; // codec的名字,保持全局唯一,标识名 const char *long_name; // codec的名字,...

2017-04-12 10:53:32

阅读数 5944

评论数 0

FFmpeg总结(四)AV系列结构体之AVBuffer、AVBufferRef、AVBufferPool

位置:libavutil/buffer.h AVBuffer采用引用计数的数据Buffer的API。有两个核心对象这个API——AVBuffer和AVBufferRef。AVBuffer代表数据缓冲区本身,它是私有的,不能直接被调用者调用。我们可以通过AVBufferRef,调用者须要检查两...

2017-04-06 19:26:44

阅读数 2462

评论数 0

FFmpeg总结(三)AV系列结构体之AVCodecContext

位置: libavcodec/avcodec.h 描述:主要扩展API的结构体New fields can be added to the end with minor version bumps.

2017-04-06 10:26:41

阅读数 3359

评论数 0

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