<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[回忆的往昔]]></title><description><![CDATA[人如果没有梦想和咸鱼有什么分别]]></description><link>https://blog.youkuaiyun.com/a675311</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; a675311]]></copyright><item><title><![CDATA[ffmpeg框架阅读笔记二 : 寻找AVIOContext初始化过程，自定义初始化。]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/73468114</link><guid>https://blog.youkuaiyun.com/a675311/article/details/73468114</guid><author>a675311</author><pubDate>Mon, 19 Jun 2017 15:35:23 +0800</pubDate><description><![CDATA[在avformat_open_input中，有一个 init_input函数，它的作用是打开输入媒体，初始化所有与媒体读写有关的结构们，例如/AVIOContext，AVInputFormat等等。分析init_input函数，找出AVIOContext的初始化过程。以下对于init_input函数的分析代码摘自  http://blog.youkuaiyun.com/nkmnkm/article/detail]]></description><category></category></item><item><title><![CDATA[ffmpeg框架阅读笔记一:读取数据帧函数 int av_read_frame(AVFormatContext *s, AVPacket *pkt)]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/73468041</link><guid>https://blog.youkuaiyun.com/a675311/article/details/73468041</guid><author>a675311</author><pubDate>Mon, 19 Jun 2017 15:30:27 +0800</pubDate><description><![CDATA[做音频播放，数据源从完整音频文件变成了网络拉取音频流到缓冲区，实现片段流的播放。分析av_read_frame过程，自定义获取数据源的功能。重点查找如何读入数据源。首先分析函数av_read_frame。[cpp] view plain copy 
int av_read_frame(AVFormatContext *s, AVPacket *pkt) 
{ 
    //包含AVPacket结构体]]></description><category></category></item><item><title><![CDATA[accpet 返回的描述符理解]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/71158954</link><guid>https://blog.youkuaiyun.com/a675311/article/details/71158954</guid><author>a675311</author><pubDate>Thu, 04 May 2017 10:42:57 +0800</pubDate><description><![CDATA[socket accept()返回的socket描述符的端口和listen描述符端口是一样的吗？as you know,一个socket是由一个五元组来唯一标示的，即(协议，server_ip, server_port, client_ip, client_port)。只要该五元组中任何一个值不同，则其代表的socket就不同。这里忽略协议的区别，在同一协议的基础上，服务器端的listen sock]]></description><category></category></item><item><title><![CDATA[python 装饰器]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/53487533</link><guid>https://blog.youkuaiyun.com/a675311/article/details/53487533</guid><author>a675311</author><pubDate>Tue, 06 Dec 2016 15:30:28 +0800</pubDate><description><![CDATA[python装饰器通俗易懂的解释！1、python装饰器刚刚接触python的装饰器，简直懵逼了，直接不懂什么意思啊有木有，自己都忘了走了多少遍Debug，查了多少遍资料，猜有点点开始明白了。总结了一下解释得比较好的，通俗易懂的来说明一下：小P闲来无事，随便翻看自己以前写的一些函数，忽然对一个最最最基础的函数起了兴趣：1 def sum1(): 
2      sum = 1 + 2 
3]]></description><category></category></item><item><title><![CDATA[AnnexB与avcc的区别]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/53432304</link><guid>https://blog.youkuaiyun.com/a675311/article/details/53432304</guid><author>a675311</author><pubDate>Fri, 02 Dec 2016 10:36:44 +0800</pubDate><description><![CDATA[本文需要读者对H.264流有一定的了解才可以理解2种格式差异。首先要理解的是没有标准的H.264基本流格式。文档中的确包含了一个Annex，特别是描述了一种可能的格式Annex B格式，但是这个并不是一个必须要求的格式。标准文档中指定了视频怎样编码成独立的包，但是这些包是怎样存储和传输的却是开放的。
一. Annex B 
A.Network Abstraction Layer Units]]></description><category></category></item><item><title><![CDATA[h264 nalu结构]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/53322949</link><guid>https://blog.youkuaiyun.com/a675311/article/details/53322949</guid><author>a675311</author><pubDate>Thu, 24 Nov 2016 17:40:30 +0800</pubDate><description><![CDATA[NALU：Coded H.264 data is stored or transmitted as a series of packets known as NetworkAbstraction LayerUnits. （NALU单元）  RBSP ：A NALU contains a Raw Byte Sequence Payload, a sequence of bytes containing]]></description><category></category></item><item><title><![CDATA[App架构经验总结（转）]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/53283997</link><guid>https://blog.youkuaiyun.com/a675311/article/details/53283997</guid><author>a675311</author><pubDate>Tue, 22 Nov 2016 11:35:52 +0800</pubDate><description><![CDATA[App架构经验总结（转） 
原文链接： http://keeganlee.me/post/architecture/20160303架构因人而异，不同的架构师大多会有不同的看法；架构也因项目而异，不同的项目需求不同，相应的架构也会不同。然而，有些东西还是通用的，是所有架构师都需要考虑的，也是所有项目都会有的需求，比如API如何设计？架构如何分层？开发环境和生产环境如何分离？这几年，我负责研发过的Ap]]></description><category></category></item><item><title><![CDATA[汇编语言中寄存器的完整解释]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/53220590</link><guid>https://blog.youkuaiyun.com/a675311/article/details/53220590</guid><author>a675311</author><pubDate>Fri, 18 Nov 2016 18:28:33 +0800</pubDate><description><![CDATA[1、 16位寄存器组 
数据寄存器、变址寄存器统称为通用寄存器。  
在AX中,”x”表示的意思是mix，“混合”的意思。对AX指的是AH和AL两个混合的总称。  在EAX中，”E”表示的意思是Extended，“扩展”的意思。 4个16位寄存器又可分割成8个独立的8位寄存器(AX：AH-AL、BX：BH-BL、CX：CH-CL、DX：DH-DL)，每个寄存器都有自己的名称，可独立存取  8086的]]></description><category></category></item><item><title><![CDATA[利用 Python yield 创建协程将异步编程同步化]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/53161776</link><guid>https://blog.youkuaiyun.com/a675311/article/details/53161776</guid><author>a675311</author><pubDate>Mon, 14 Nov 2016 17:57:08 +0800</pubDate><description><![CDATA[利用 Python yield 创建协程将异步编程同步化 
Python   2015-09-07 08:40:34 发布 
您的评价:   0.0  
收藏     0收藏 
在 Lua 和 Python 等脚本语言中，经常提到一个概念： 协程。也经常会有同学对协程的概念及其作用比较疑惑，本文今天就来探讨下协程的前世今生。0、首先回答两个大家最关心的问题： 
0.1 什么是协程？ 
本质上协程就是]]></description><category></category></item><item><title><![CDATA[Python动态类型和引用]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/53065753</link><guid>https://blog.youkuaiyun.com/a675311/article/details/53065753</guid><author>a675311</author><pubDate>Mon, 07 Nov 2016 14:00:31 +0800</pubDate><description><![CDATA[Python学习笔记（五）Python动态类型和引用 
时间 2014-09-15 17:16:05  Adan 
原文  http://blog.youkuaiyun.com/suipingsp/article/details/39295295 
主题 Python 
动态类型以及由他提供的多态性是Python语言简洁性、灵活性的基础。Python中，类型是在运行过程中自动决定的，没有必要事先声明变量。记住，]]></description><category></category></item><item><title><![CDATA[HTTP长连接和短连接以及推送技术原理]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52997549</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52997549</guid><author>a675311</author><pubDate>Tue, 01 Nov 2016 16:57:08 +0800</pubDate><description><![CDATA[【Web基础】HTTP长连接和短连接以及推送技术原理 
标签： http协议网络 
2015-11-27 11:09 4086人阅读 评论(0) 收藏 举报 
 分类： 
Web notes（7） 
作者同类文章X 
版权声明：本文为博主原创文章，未经博主允许不得转载。 
目录(?)[+] 
HTTP长连接和短连接以及推送服务原理HTTP长连接和短连接1
HTTP协议与TCP/IP协议的关系
HTT]]></description><category></category></item><item><title><![CDATA[Android内核开发：图解Android系统的启动过程]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52923959</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52923959</guid><author>a675311</author><pubDate>Tue, 25 Oct 2016 16:33:50 +0800</pubDate><description><![CDATA[本文是《Android内核开发》系列的第六篇文章，前面的几篇文章介绍了Android内核开发相关的基础知识，包括：Android源码的下载、版本和分支介绍、编译和烧写等等，从本文起就要开始真正地进行Android内核的学习及实战了。学习任何软硬件系统，研究系统启动过程都是一种非常有效地起步手段，搞Android内核开发也不例外。网上有很多文章对Android启动相关代码进行分析和走读，大家可以先搜索]]></description><category></category></item><item><title><![CDATA[解码器进帧出帧顺序]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52459544</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52459544</guid><author>a675311</author><pubDate>Wed, 07 Sep 2016 14:48:44 +0800</pubDate><description><![CDATA[出处：http://www.cnblogs.com/yinxiangpei/articles/2828118.html，原作者不详仅仅使用前一个显示的基准帧来编码的帧被称为P帧，同时使用前一个显示帧和未来帧作为基准帧进行编码的帧称为B帧. 
在通常的场景中，编解码器编码一个I帧，然后向前跳过几个帧，用编码I帧作为基准帧对一个未来P帧进行编码，然后跳回到I帧之后的下一个帧。 
编码的I帧和P帧之间的帧]]></description><category></category></item><item><title><![CDATA[H264—帧，片，参数集，NALU等概念]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52371150</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52371150</guid><author>a675311</author><pubDate>Tue, 30 Aug 2016 17:10:22 +0800</pubDate><description><![CDATA[h264是一个编码压缩的格式，可以使用x264库进行编码，源码开放，可下载编译使用。H.264 Codech264概念上区分视频编码层(VCL)和网络抽象层(NAL).VCL包含Codec的信令处理功能;以及如转换，量化，运动补偿预测机制；以及循环过滤器。他遵从今天大多数视频codec的一般概念,基于宏快的编码器，使用基于运动补偿的图像间预测和残余信号的转换编码。(NAL)编码器封装VCL编码器输出]]></description><category></category></item><item><title><![CDATA[AAC音频格式分析]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52353912</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52353912</guid><author>a675311</author><pubDate>Mon, 29 Aug 2016 15:59:33 +0800</pubDate><description><![CDATA[AAC音频格式分析AAC音频格式有ADIF和ADTS：ADIF：Audio Data Interchange Format 音频数据交换格式。这种格式的特征是可以确定的找到这个音频数据的开始，不需进行在音频数据流中间开始的解码，即它的解码必须在明确定义的开始处进行。故这种格式常用在磁盘文件中。ADTS：Audio Data Transport Stream 音频数据传输流。这种格式的特征是它是一个有]]></description><category></category></item><item><title><![CDATA[Android视图绘制流程完全解析，带你一步步深入了解View(二)]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52353282</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52353282</guid><author>a675311</author><pubDate>Mon, 29 Aug 2016 15:08:15 +0800</pubDate><description><![CDATA[转载请注明出处：http://blog.youkuaiyun.com/guolin_blog/article/details/16330267在上一篇文章中，我带着大家一起剖析了一下LayoutInflater的工作原理，可以算是对View进行深入了解的第一步吧。那么本篇文章中，我们将继续对View进行深入探究，看一看它的绘制流程到底是什么样的。如果你还没有看过我的上一篇文章，可以先去阅读 Android La]]></description><category></category></item><item><title><![CDATA[Android LayoutInflater原理分析，带你一步步深入了解View(一)]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52353266</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52353266</guid><author>a675311</author><pubDate>Mon, 29 Aug 2016 15:06:41 +0800</pubDate><description><![CDATA[转载请注明出处：http://blog.youkuaiyun.com/guolin_blog/article/details/12921889有段时间没写博客了，感觉都有些生疏了呢。最近繁忙的工作终于告一段落，又有时间写文章了，接下来还会继续坚持每一周篇的节奏。有不少朋友跟我反应，都希望我可以写一篇关于View的文章，讲一讲View的工作原理以及自定义View的方法。没错，承诺过的文章我是一定要兑现的，而且在V]]></description><category></category></item><item><title><![CDATA[注册表里的秘密]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52302898</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52302898</guid><author>a675311</author><pubDate>Wed, 24 Aug 2016 18:09:31 +0800</pubDate><description><![CDATA[注册表里的秘密 
对于一般用户来说，系统注册表是深奥莫测的，隐藏着巨大的秘密。同时注册表本身却十分脆弱，稍不小心就会引起Windows操作系统的出错甚至瘫痪。但如果你有一定的注册表常识，则可以通过修改注册表让Windows更好地为你服务。注册表事实上就是一个集中管理系统硬件设施、软件配置等信息的数据库，其中存放着各种参数，直接控制着Windows的启动、硬件驱动程序的装载以及一些Windows应用程]]></description><category></category></item><item><title><![CDATA[windows 注册表解析]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52302367</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52302367</guid><author>a675311</author><pubDate>Wed, 24 Aug 2016 17:19:46 +0800</pubDate><description><![CDATA[电脑中注册表被称为Windows操作系统的核心，它的工作原理实质是一个庞大的数据库，存放了关于计算机硬件的配置信息、系统和应用软件的初始化信息、应用软件和文档文件的关联关系、硬件设备的说明以及各种状态信息和数据，包括Windows操作时不断引用的信息。例如：系统中的硬件资源、硬件信息、分配正在使用的端口、每个用户的配置文件、计算机上安装的应用程序以及每个应用程序可以创建的文件类型等。 
主要作用：]]></description><category></category></item><item><title><![CDATA[Java变量以及内存分配（非常重要）]]></title><link>https://blog.youkuaiyun.com/a675311/article/details/52293730</link><guid>https://blog.youkuaiyun.com/a675311/article/details/52293730</guid><author>a675311</author><pubDate>Tue, 23 Aug 2016 19:26:56 +0800</pubDate><description><![CDATA[不知道是第几次看thinking in java了。不是的翻翻总有新的收获。堆栈静态存储区域一个由C/C++编译的程序占用的内存分为以下几个部分1、栈区（stack）— 由编译器自动分配释放 ，存放函数的参数值，局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区（heap）— 由程序员分配释放， 若程序员不释放，程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事，分配方式倒是类似于链表]]></description><category></category></item></channel></rss>