摘要: 写代码我得再认真一点,当我停下思考,我实在不想留有太多疑惑。 阅读全文
posted @ 2020-10-15 23:40 jianzhui 阅读(55) 评论(0) 推荐(2) 编辑
摘要: 一、FFmpeg的基本组成 目前,ffmpeg有7大库,分别为AVFormat, AVCodec, AVFilteer, AVDecoder, AVUtil,Swresample, Swscale,AVDevice七大库组成。 1、AVFormat模块 它实现了对文件的封装(muxing)解封装(d 阅读全文
posted @ 2021-06-27 21:35 jianzhui 阅读(660) 评论(0) 推荐(0) 编辑
摘要: 在这 在音视频开发中,我们需要用到队列来存解码得到的avpacket,在这个过程中我们还需要用到锁来提高安全性,我们需要用到以下两个库: #include <queue> #include <mutex> 在这里我们需要用到模板,关于模板,我也不太清楚,但是这里的作用就是在创建对象时,我们可以只声明 阅读全文
posted @ 2021-06-18 23:03 jianzhui 阅读(133) 评论(0) 推荐(2) 编辑
摘要: 上一篇我们介绍了如何打开文件读取帧,现在,我们需要将成功读取的帧解码出来,所以,这里我们就需要要到以下几个结构体: AVCodecContext:这个结构是一个解码器上下文,跟上一篇的formatContext一样。 AVCodec:这个结构是解码器。 下面我就进行一个简单的解码过程讲解: 1、首先 阅读全文
posted @ 2021-06-18 22:52 jianzhui 阅读(632) 评论(0) 推荐(1) 编辑
摘要: 线程 一、为了让音视频更好的解码,这里我们需要采用多线程,用一个线程解码视频,一个线程解码音频,我们需要: 1.调用线程库 #include <thread> 2.std:thread t1(); 创建相应线程。 3、为了让每个线程更好的区分资源属于哪一个线程,我们可以用类来实现线程,在对应得类中用 阅读全文
posted @ 2021-06-17 08:51 jianzhui 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 哈夫曼树是一棵怎样的树呢,假如我们给出一堆数据"1,2,3,4,5"(数据对应的数字还代表这个数字出现的次数)来构建一颗二叉树,怎样一颗二叉树才能使我们的查找效率率最高呢,那就是哈夫曼树了,在前面的“1,2,3,4,5”中,我们先选出两个最小的,那就是“1,2”,然后1和2构建一个结点。该结点为3, 阅读全文
posted @ 2020-10-28 19:26 jianzhui 阅读(1091) 评论(0) 推荐(2) 编辑
摘要: 从二叉树到查找二叉树再到平衡二叉树,人们总是为了追求完美而不断奋斗,今天解决的问题是,当我们读入几组长度一样的数据,我们如何判断它们构建出来的树是否一样。 为了解决这个问题,我们可以先用一组数据创建一颗树,然后再将后面的几组数据分别与创建好的这颗树做比较。 #include <stdio.h>#in 阅读全文
posted @ 2020-10-20 22:49 jianzhui 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 我们为了解决二叉树的查找,我们构建出了二叉搜索树(左子树小于其父结点,右子树大于其父结点)。但是这样显然是不够的,这样的查找太过于笨重,我们就想出了二叉平衡树: 就是一个结点的左右子树高度差不能等于2,当等于2时,我们就对它进行平衡,这样减少了极端情况,可以明显的缩小查找的时间,二叉平衡在插入的时候 阅读全文
posted @ 2020-10-19 21:46 jianzhui 阅读(101) 评论(0) 推荐(1) 编辑
摘要: 假设我们写了一个foo.h的头文件,如下: #ifndef foo_h#define foo_hnamespace m1 { void foo();}#endif 例外,我们肯定还会写它的相关库文件来实现函数的功能,我们就写一个foo.c吧,如下: #include <iostream>#inclu 阅读全文
posted @ 2020-10-18 23:04 jianzhui 阅读(105) 评论(0) 推荐(1) 编辑
摘要: 二叉树,虽然方便遍历和初始化存储,但是我们如果要插入呢,要查找里面的数据呢,怎么办,这就需要我们良好的设计这个树了,我们在插入的时候怎麽插,我们可以设计出这样一种树,它的左子树必须小于它的父结点,它的右子树必须大于它的父结点,就这样,我们就可以构造出一颗可以方便我们查找的树了,也可以方便我们插入,在 阅读全文
posted @ 2020-10-18 21:39 jianzhui 阅读(123) 评论(0) 推荐(1) 编辑
摘要: 遍历二叉树,最常用的递归实现遍历二叉树,但我们还可以用非递归和层次遍历树的方法,这里就要用到栈和队列的一些知识,现在就让我们把这两个结合起来一起用。 这个是非递归中序遍历二叉树,非递归我们可以用栈的思想,中序遍历的时候,我们可以先一直把左子树全装栈里面,然后当装完左子树的结点后,我们就出栈并输出,然 阅读全文
posted @ 2020-10-17 23:01 jianzhui 阅读(145) 评论(0) 推荐(0) 编辑