<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[courageously的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/courageously</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; courageously]]></copyright><item><title><![CDATA[H.264 AVCC header]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/113107215</link><guid>https://blog.youkuaiyun.com/courageously/article/details/113107215</guid><author>courageously</author><pubDate>Mon, 25 Jan 2021 11:57:14 +0800</pubDate><description><![CDATA[AVCC header sequence header or extradata

按位读取流程：

8 version（版本是1，也是就0x01 ）

8 avc profile（值来自 sps[0][1] ）

8 avc compatibility（值来自 sps[0][2] ）

8 avc level（值来自 sps[0][3] ）

6 reserved（保留位，且所有位置1 ）

2 NALULengthSizeMinusOne ( 每个表示NALU数据长度所占的Byte -1...]]></description><category></category></item><item><title><![CDATA[mp4文件格式解析]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/113106426</link><guid>https://blog.youkuaiyun.com/courageously/article/details/113106426</guid><author>courageously</author><pubDate>Mon, 25 Jan 2021 11:32:02 +0800</pubDate><description><![CDATA[目前MP4的概念被炒得很火，也很乱。最开始MP4指的是音频（MP3的升级版），即MPEG-2 AAC标准。随后MP4概念被转移到视频上，对应的是MPEG-4标准。而现在我们流行的叫法，多半是指能播放MPEG-4标准编码格式视频的播放器。但是这篇文章介绍的内容跟上面这些都无关，我们要讨论的是MP4文件封装格式，对应的标准为ISO/IEC 14496-12，即信息技术视听对象编码的第12部分：ISO基本媒体文件格式（Information technology Coding of audio-visual ..]]></description><category></category></item><item><title><![CDATA[NALU详解之 EBSP、RBSP与SODB]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/113105912</link><guid>https://blog.youkuaiyun.com/courageously/article/details/113105912</guid><author>courageously</author><pubDate>Mon, 25 Jan 2021 11:13:08 +0800</pubDate><description><![CDATA[h264裸流中，提取出一个个的NALU，并且解析出NALU的第一个字节：NALU Header。下面我们就从NALU Header的下一个字节开始，分析NALU剩余的数据部分，也即NALU的主体部分。

NALU的主体涉及到三个重要的名词，分别为EBSP、RBSP和SODB。其中EBSP完全等价于NALU主体，而且它们三个的结构关系为：

EBSP包含RBSP，RBSP包含SODB。

其中SODB就是最原始的编码数据。



1. EBSP和RBSP

上篇我们说，NALU的组成部分为：

NALU =.]]></description><category></category></item><item><title><![CDATA[Select函数实现达到定时器的效果]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/107138839</link><guid>https://blog.youkuaiyun.com/courageously/article/details/107138839</guid><author>courageously</author><pubDate>Sun, 05 Jul 2020 14:46:46 +0800</pubDate><description><![CDATA[/*秒级定时器*/
void seconds_sleep(unsigned   long seconds)
{
 if(seconds == 0) return;
  struct timeval tv;
  tv.tv_sec=seconds;
  tv.tv_usec=0;
  int err;
  do{
   err=select(0,NULL,NULL,NULL,&amp;tv);
  }while(err&lt;0 &amp;&amp; errno==...]]></description><category></category></item><item><title><![CDATA[希尔排序]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/106987774</link><guid>https://blog.youkuaiyun.com/courageously/article/details/106987774</guid><author>courageously</author><pubDate>Sat, 27 Jun 2020 20:45:58 +0800</pubDate><description><![CDATA[不稳定的排序，但是效率较高，当数组中的数基本有序时，效率很高

原理是给定一个Gap间隔，按照间隔取元素，进行排序，跳着排序，1轮，间隔指针为此时为0，再依次把间隔指针加1，再排序，依次类推，按照间隔的一半再来一遍，最后，按照间隔0 ,进行普通的插入排序




...]]></description><category></category></item><item><title><![CDATA[归并排序]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/106987442</link><guid>https://blog.youkuaiyun.com/courageously/article/details/106987442</guid><author>courageously</author><pubDate>Sat, 27 Jun 2020 20:20:29 +0800</pubDate><description><![CDATA[归并排序的算法，理论不讲，上代码

#include&lt;stdio.h&gt;
void merge(int arr[],int L,int M,int R)
{
  int LEFT_SIZE = M-L;
  int RIGHT_SIZE = R-M+1;
  int left[LEFT_SIZE];
  int right[RIGHT_SIZE];
  int i;
  int j;
  int k;
  //1、fill in the left sub array...]]></description><category></category></item><item><title><![CDATA[alsa lame 库实现 音频pcm采集实时转换MP3，linux运行环境]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/106983266</link><guid>https://blog.youkuaiyun.com/courageously/article/details/106983266</guid><author>courageously</author><pubDate>Sat, 27 Jun 2020 15:43:29 +0800</pubDate><description><![CDATA[lame下载版本：lame-3.99.5.tar.gz

linux下执行
./configure--prefix=/你的lame目录下/output
make-j8
makeinstall


源代码github链接

https://github.com/sophie820318/alsa_lame_pcm_2_mp3


]]></description><category></category></item><item><title><![CDATA[第一次写C++程序,完成使用Alsa采集linux音频]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/106881262</link><guid>https://blog.youkuaiyun.com/courageously/article/details/106881262</guid><author>courageously</author><pubDate>Sun, 21 Jun 2020 08:37:19 +0800</pubDate><description><![CDATA[利用alsa 完成linux下音频采集，第一次用C++写程序，很菜，很水，记录下当时的水平，后面肯定会有提高，算是一个纪念吧
1、运行时前先装库,sudo apt-get install alsa 2遍回车，装库，alsa_ocaml_dev
2、编译执行脚本，gcc -o main main.c -lasound;
3、执行  ./main
以下是代码`#define LSA_PCM_NEW_HW_PARAMS_API
#include &lt;stdlib.h&gt;
#include &lt;stdi]]></description><category></category></item><item><title><![CDATA[cmake入门]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/106881241</link><guid>https://blog.youkuaiyun.com/courageously/article/details/106881241</guid><author>courageously</author><pubDate>Sun, 21 Jun 2020 08:21:59 +0800</pubDate><description><![CDATA[start here
github上的开源项目
https://github.com/ttroy50/cmake-examples
如果里面的分支很详细，新手参考

]]></description><category></category></item><item><title><![CDATA[VSCode 配置C++，mingw64]]></title><link>https://blog.youkuaiyun.com/courageously/article/details/106871562</link><guid>https://blog.youkuaiyun.com/courageously/article/details/106871562</guid><author>courageously</author><pubDate>Sat, 20 Jun 2020 14:29:30 +0800</pubDate><description><![CDATA[1、首先安装VSCode ，官网下载，安装即可
2、mingw64介绍，mingw是为了像在linux上写代码,并在windows上运行，类UNIX的编译环境，让windows的编译器把诸如fork的调用翻译成等价的形式。经过编译器编译后，原linux下的代码可以在windows下运行。
3、mingw64安装，下载地址
将安装包解压，放到C:\Program Files\下，如下图

4、配置环境变量，win10 添加环境变量，如下图

5、OK完成，开始第一个C++程序吧

...]]></description><category></category></item></channel></rss>