程序优化
飞翔2017
毕业于北京邮电大学硕士研究生,有超过13年流媒体技术研究和团队管理经验,先后就职于爱奇艺,大智慧股份直播事业部,曾经是波罗蜜创业合伙人之一。对视频直播行业的技术和商业模式都有深入研究,能快速搭建视频直播平台,多款用户数超亿的视频app创造者。能负责公司团队技术积累,流媒体技术研究,对VR, AR等最新流行技术也有深入研究。利用多种开源代码快速搭建视频直播系统。
展开
-
开博首篇
开博首篇 经过这么多年在IT界发展,个人编程技能和音视频的相关知识也日益深厚,发现很多东西也是可以记录下来,方便自己和大家查看,分享项目经验和人生经历,毕竟有些事情或者经验教训,如果不及时记录下来,这些很有价值的东西会随着时间的增长慢慢的从记忆中消失! 本博客主要关注: 1. 各种视频压缩标准(MPEG2, MPEG4, H261/2/3/4,X264原创 2012-06-27 19:44:16 · 3291 阅读 · 3 评论 -
准备踏入IT编程的学子们,你们第一门编程语言选谁? Are You Ready? Go!
Are You Ready? Go!——第一门编程语言选谁?金旭亮 说明: 这篇文章是专门针对大学低年级学生(和其他软件开发初学者)写的,如果你己经是研究生或本科高年级学生,请将这篇文章转发给你的师弟或师妹,希望这篇文章能够帮助他们少走弯路,顺利地迈入软件开发的大门;如果您是一位有经验的软件开发者,或者是关注计算机教育的同行,也敬请提出宝贵意见。原创 2012-09-14 11:03:08 · 4467 阅读 · 2 评论 -
12年8月编程语言排行榜:C语言领衔称霸 Objective-C语言强势爬升
TIOBE 于 8 月 11 日公布了 8 月份编程语言排行榜,C 语言继 5 月份超过 Java 之后,已经占据榜单冠军之位 4 个月,而且份额还在继续再增加,展现出长期称霸的冠军像 。Java、C++的份额持续下滑,Objective-C 稳步上升,代表 iOS 开发方兴未艾。PHP 上个月下滑到第七位,这个月又回到第六位,与第七位的 VB 显得比较胶着。其他语言变化不大。 Obje原创 2012-09-21 09:20:11 · 3189 阅读 · 1 评论 -
再谈异构计算CPU+GPU(APU)
再谈异构计算CPU+GPU异构计算的英文名称是Heterogeneous computing,主要是指使用不同类型指令集和体系架构的计算单元组成系统的计算方式。常见的计算单元类别包括CPU、GPU等协处理器、DSP、ASIC、FPGA等。我们常说的并行计算正是异构计算中的重要组成部分异构计算近年来得到更多关注,主要是因为通过提升CPU时钟频率和内核数量而提高计算能力的传统方式遇到了散热和能原创 2012-10-19 08:58:43 · 3308 阅读 · 1 评论 -
HEVC/H.265 的未来必须是使用并行处理(OpenCL?) OpenGL和OpenCV区别
OpenGL和OpenCV 一、OpenGLOpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口的规格,它用于三维图像(二维的亦可)。OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。1、概述OpenGL -高性能图形算法行业标准OpenGL™是行业领域中最为广泛接纳的2D/3D图形API,其自原创 2012-10-18 17:19:35 · 6059 阅读 · 0 评论 -
Intrinsics头文件与SIMD指令集、Visual Studio版本对应表!
Intrinsics头文件与SIMD指令集、Visual Studio版本对应表! File描述VSVisualStudiointrin.hAll Architectures8.02005mmintrin.hMMX intrinsics原创 2012-12-14 15:42:39 · 3263 阅读 · 2 评论 -
用OpenCL实现HEVC中ME模块的测试数据分析
使用opencl来实现编码算法中运动搜索模块!下面测试数据时在GTX570上的测试结果:LCU为32x32, 100帧720P, CPU上纯C算法使用搜索时间是67s, GPU上是0.915sLCU为16x16, CPU 是76.8s, GPU上是1.6sLCU为8x8, CPU 是82.5s, GPU上是4.2s 同样的程序, CPU改为SSE实现, G原创 2013-06-05 19:07:43 · 4705 阅读 · 3 评论 -
HEVC 实时编码720P不是梦!
最近很少光顾我的博客, 因为一直很忙! 目前我的HEVC在i5机子上720P编码速度单核达到2~3帧每秒! 多核的话离线实时编码已经不是问题! 现在问题是在线实时编码还差那么一点! 在容忍一定低延迟下应该问题不大! 下一个目标, 多核在线实时编码!原创 2013-08-06 10:50:59 · 4962 阅读 · 5 评论 -
HEVC/H.265编码开发现状更新!离大规模替换AVC/H.264的时间已经很近了!
最近很少光顾我的博客, 因为一直很忙! 再次更新编码开发状况! 目前我的HEVC在i5机子上720P编码速度单核达到5~6帧每秒! 现在问题是在线实时编码中,码率控制还是有些问题,AVC/H.264的码率控制基本能满足之前的应用,但是HEVC/H.265中新的GOP结构下码率控制还是不够理想! 接下来进一步提高编码性能,更新改进其码率控制!原创 2013-11-11 01:45:42 · 4527 阅读 · 3 评论 -
Windows下编译最新的x264
Windows下编译最新的x264 X264更新的比较快,每天都有更新,但算法模块,基本结构是没有多大变化的。x264都是用C语言写的包括C99,但C99语法是在VC中是没法用的(当然有精力可以全部改成C89),生成的.a库是也是没法调用的,如何转化成可用.lib库就比较重要了。原创 2013-12-12 14:35:39 · 3053 阅读 · 1 评论 -
X86汇编与VS2008混合编程--仅供入门学习参考
X86汇编与VS2008混合编程--仅供入门学习参考 汇编文件保存为扩展名*.asm,把汇编文件加入VS工程,点击文件右键,进入 编译选项 把属性中tool 选项 修改为Custom Build Tool然后填写如下选项内容:command line: yasm -I..\..\common\x86\ -f win32 -O2 -DPREFIX -o "$(IntDir)\$(原创 2012-08-13 16:42:54 · 3504 阅读 · 0 评论 -
Unix哲学相关资源汇总
Unix哲学起源于Ken Thompson早期关于如何设计一个服务接口简洁、小巧精干的操作系统的思考,随着Unix文化在学习如何尽可能发掘Thompson设计思想的过程中不断成长,同时一路上还从其它许多地方博采众长。 Unix哲学起源于Ken Thompson早期关于如何设计一个服务接口简洁、小巧精干的操作系统的思考,随着Unix文化在学习如何尽可能发掘Thompson设计思原创 2012-08-29 10:06:18 · 2651 阅读 · 0 评论 -
汇编程序开发环境搭配
引子由于这些日子一直都在研究底层的技术,从 Windows 驱动程序,到 Windows 内核等等技术的学习,让我对底层的技术越发有兴趣了,而刚好,在研究 WRK 时,对内存管理,寄存器,地址总线,数据总线,控制总线等的理解不够透彻,所以越发的想学习汇编程序设计来提升功力,而由于近来在公司里一直都有项目压着,所以在公司里也实在不好拿本汇编程序设计看,所以只好晚上回来学习了,原创 2012-08-14 09:49:58 · 1365 阅读 · 0 评论 -
函数命名规则及调用约定(__cdecl,__stdcall,__fastcall)
函数命名规则及调用约定(__cdecl,__stdcall,__fastcall)__cdecl是C/C++和MFC程序默认使用的调用约定,也可以在函数声明时加上__cdecl关键字来手工指定。采用__cdecl约定时,函数参数按照从右到左的顺序入栈,并且由调用函数者把参数弹出栈以清理堆栈。因此,实现可变参数的函数只能使用该调用约定。由于每一个使用__cdecl约定的函数都要包含清理堆栈的代码原创 2012-08-29 08:52:06 · 1632 阅读 · 0 评论 -
Linux 汇编语言开发指南 Intel 格式--AT&T 格式
一、简介 简介作为最基本的编程语言之一,汇编语言虽然应用的范围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能。就拿 Linux 内核来讲,虽然绝大部分代码是用 C 语言编写的,但仍然不可避免地在某些关键地方使用了汇编代码,其中主要是在 Linux 的启动部分。由于这部分代码与硬件的关系非常密切,即使是 C 语言也会有些力不从心,而汇编语言则能够很好扬长避短,最大限度地原创 2012-08-20 10:47:55 · 2978 阅读 · 0 评论 -
IA-64位微处理器及其编程
ADM64架构概述一、AMD64架构引入以下新的特征。1)、寄存寄存器的扩展。 。8个新的通用寄存器(GPR) 。所有的16个GPR都是64位字宽 。8个新的128位XMM寄存器 。对于所有的GPR都用统一的字节寄存器寻址 。访问扩展寄存器的64位指令前缀2)、长模式 。升到64位虚拟地址(最大支持) 。64位指令指原创 2012-08-23 13:29:48 · 2961 阅读 · 0 评论 -
基于SSE指令集的程序设计简介
SSE技术简介 Intel公司的单指令多数据流式扩展(SSE,Streaming SIMD Extensions)技术能够有效增强CPU浮点运算的能力。Visual Studio .NET 2003提供了对SSE指令集的编程支持,从而允许用户在C++代码中不用编写汇编代码就可直接使用SSE指令的功能。MSDN中有关SSE技术的主题[1]有可能会使不熟悉使用SSE汇编指令编程的初学者感到困原创 2012-08-23 10:25:32 · 1734 阅读 · 0 评论 -
通用计算时代来临 论CUDA与OpenCL的异同
NVIDIA CUDA技术的到来,使GPU通用运算的应用领域得到了全面扩充,利用GPU强大的并行运算能力,使更加适合GPU进行运算的程序执行效率大幅提升。虽然早就有人提出了让并行计算架构的GPU,去处理非常适合他们的大规模并行计算工作,但是在CUDA问世前,所谓的GPGPU概念并没有真正的为我们解决问题,而早期专为图形运算而设计的GPU并不能通过一种通用性强的手段完成在GPU上的编程任务,专业性强原创 2012-08-23 16:38:05 · 2975 阅读 · 1 评论 -
Intel英特尔历代经典 CPU 产品回顾
悉数历史 英特尔历代经典 CPU 产品回顾从英特尔于 1971 年推出首款 4004 微处理器到现在, 英特尔处理器已经走过 了 40 个年头。在告别 13 年传奇品牌奔腾之后,我们又迎来新一代酷睿 i 双核处 理器。现在,我们就来回顾一下英特尔处理器 40 年来的发展历程。 1971 年:4004 微处理器 4004 是英特尔推出的第一款微处理器。这一突破性的发明最先应用于 Busicom原创 2012-08-30 14:48:11 · 16041 阅读 · 0 评论 -
FFmpeg在Android上的移植优化步骤
从事多媒体软件开发的人几乎没有不知道FFmpeg的,很多视频播放器都是基于FFmpeg开发的。如今最火的智能手机操作系统Android上的很多第三方视频播放器也是基于FFmpeg实现全格式支持。由于Android通常跑在ARM处理器上,而且Android使用了自己的libc库(即bionic),因此要在Android上编译和使用FFmpeg需要做一些移植工作,好在FFmpeg本身用C写成,很好地支原创 2012-08-22 09:55:40 · 35382 阅读 · 19 评论 -
WebRTC编译详细介绍
WebRTC编译详细介绍--记录+转载原文地址:http://blog.csdn.net/temotemo/article/details/7056581WebRTC编译本人环境:操作系统:XP SP3VS 2013编译源码之前所需的工具获取源码工具:1、 首先需要安装获取源码的工具SVN(项目代码版本管理工具,Google也用这个)TortoiseSVN 1.6.12http://sourcef原创 2014-08-20 10:12:25 · 2990 阅读 · 1 评论