自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(174)
  • 资源 (24)
  • 收藏
  • 关注

转载 OpenMAX/IL: OMX IL 学习笔记【3】- 头文件、数据结构与接口

参考自:https://blog.csdn.net/blue_xx/article/details/467781331. OpenMAX IL 层头文件OpenMAX IL 层的接口定义是以若干个头文件的形式给出的,在头文件中定义了一些结构体和需要开发者实现的接口函数,包括:OMX_Types.h:OpenMax IL的数据类型定义OMX_Core.h:OpenMax IL核心的APIOMX_Component.h:OpenMax IL 组件相关的 APIOMX_Audio.h:音频相关的常量

2021-06-15 19:41:47 1985 2

转载 OpenMAX/IL: OMX IL 学习笔记【1】- 结构框架

一、OpenMax简介OpenMAX(Open Media Acceleration的缩写,开放多媒体加速层)是一个多媒体应用程序的标准。由NVIDIA公司和Khronos™在2006年推出。它是无授权费的、跨平台的C语言程序接口序列,这些接口对音频、视频、静态图片的常用操作进行封装。它包括三层,自上而下分别是应用层(AL)、集成层(IL)和开发层(DL)。OpenMAX AL:Application Layer,应用和多媒体中间层的标准接口,使得应用在多媒体接口上具有了可移植性。OpenMAX

2021-06-15 16:19:27 3415 1

转载 【Linux】free命令中cached和buffers的区别

cached是cpu与内存间的,buffer是内存与磁盘间的,都是为了解决速度不对等的问题。

2021-06-11 17:33:36 1483

原创 C语言:修改系统时间,导致sem_timedwait 一直阻塞的问题解决和分析

修改系统时间,导致sem_timedwait 一直阻塞的问题解决和分析

2021-05-31 18:43:45 1912

原创 Tina编译报错:<command-line>: error: expected identifier or ‘(‘ before numeric constant

枚举冲突

2021-03-27 12:58:02 2221

转载 使用C语言查看一个文件夹中所有文件及目录

1.前言1.1声明文章中的文字可能存在语法错语以及标点错误,请谅解;如果在文章中发现代码错误或其它问题请告知,感谢!2.实现方法为了使用C语言实现查看一个文件夹中的文件数量功能,可以使用dirent库,该库文件包含的许多UNIX系统服务的函数原型,例如opendir函数、readdir函数,可以实现查看目录中文件数量等功能。2.1dirent中常用数据类型以及函数功能简介下面对dirent中常用的数据类型以及函数进行简单的解释:常用结构体:DIR结构体:struct __dirstrea

2021-02-05 14:20:36 4964

原创 动态范围控制(DRC)简介

动态范围控制(DRC)简介

2021-01-19 10:28:40 23056 6

原创 Melis调试方法:GDB基本用法

Melis调试方法:GDB基本用法

2021-01-08 19:50:13 23568 3

原创 gstreamer-test

#include <gst/gst.h>#include <glib.h>#include <glib/gprintf.h>#include <glib-object.h>#include <gmodule.h>#include <stdio.h>#include <string.h>#include <unistd.h>#include <sys/types.h>#include

2020-12-24 11:50:01 558

原创 repo使用指南

repo使用指南

2020-12-23 16:34:48 4606

原创 【Linux】 xxd命令功能

Linux下的xxd命令,能将一个给定文件或标准输入转换为十六进制形式,也能将十六进制转换回二进制形式。

2020-10-30 18:26:38 10260

原创 音频基础知识详解

音频基础知识详解

2020-10-20 10:55:11 10713

原创 C语言:mmap函数实现

1、认真分析mmap:是什么 为什么 怎么用:https://www.cnblogs.com/huxiao-tee/p/4660352.html2、Mmap系列一: Mmap的实现原理和应用(及与read/fread的比较):https://blog.csdn.net/don_chiang709/article/details/893322953、mmap 函数:原理与使用(含代码):https://www.jianshu.com/p/187eada7b9004、linux中mmap系统调用原理

2020-10-16 17:32:19 488

原创 Melis编译报错: error: expected ‘=‘, ‘,‘, ‘;‘, ‘asm‘ or ‘__attribute__‘ before *‘ token

编译报错处理

2020-09-25 10:29:49 3444

原创 Melis内核:RT-thread IO设备和驱动学习

RT-thread IO设备和驱动学习

2020-09-01 18:55:33 1808

原创 Melis学习笔记(四):Melis cedar模块的链接脚本

Melis cedar模块的链接脚本解析

2020-08-31 16:28:57 291

转载 利用__attribute__((section()))构建初始化函数表与Linux内核init的实现

本文详细讲解了利用 __attribute__((section())) 构建初始化函数表,以及Linux内核各级初始化的原理。1. 问题导入传统的应用编写时,每添加一个模块,都需要在main中添加新模块的初始化。使用__attribute__((section()))构建初始化函数表后,由模块告知main:“我要初始化“,添加新模块再也不需要在main代码中显式调用模块初始化接口。以此实现main与模块之间的隔离,main不再关心有什么模块,模块的删减也不需要修改main。那么,如何实现这个

2020-08-11 16:49:34 2842

原创 Melis交叉编译的库在链接时提示:xxx uses VFP register arguments xxx does not

交叉编译报错

2020-07-22 20:20:48 10344 2

原创 Melis链接库报错:undefined reference to ‘_close‘, ‘_fstat‘, ‘_isatty‘, ‘_lseek‘, ‘_read‘等

编译报错处理

2020-07-21 17:51:39 1820

转载 Gstreamer学习笔记(8):Gobject类对象

文章目录1、Gobject类定义2、向Gobject系统注册类3、类的构造函数4、父子类的继承关系5、类的析构函数6、类的其他设置1、Gobject类定义Gstreamer框架是基于插件的,同时插件是可以动态的注册、创建,gstreamer基于Gobject开发,下面来了解一下gstreamer是如何通过Gobject完成自定义类的注册。在每个类的c文件中,都会有以下这样的一个宏定义:/* class initialization */#define DEBUG_INIT \ GST_DEB

2020-07-03 18:54:47 1098

原创 Tina编译报错:/usr/bin/ld: skipping incompatible解决方案

今天在做项目的时候,用make命令后出现了/usr/bin/ld: skipping incompatible…问题。分析:编译器给出的错误信息已经很清楚了:兼容性问题,即产生了不兼容性且找不到libgstaudio-1.0.so共享库,可是libgstaudio-1.0.so在指定的路径下明明是存在的呢。错误原因排查:经过排查发现,我链接的共享库是在arm环境下编译产生的,而主程序却是在...

2020-04-16 13:42:25 22957

转载 C语言:volatile关键字的作用

一、前言1、编译器优化介绍由于内存访问速度远不及CPU处理速度,为提高机器整体性能,在硬件上引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流水线,提高执行速度。以上是硬件级别的优化。再看软件一级的优化:一种是在编写代码时由程序员优化,另一种是由编译器进行优化。编译器优化常用的方法有:将内...

2020-03-28 18:04:14 1334

转载 C语言:static关键字的作用

static用法:在C中,static主要定义全局静态变量、定义局部静态变量、定义静态函数。1、定义全局静态变量在全局变量前面加上关键字static,该全局变量变成了全局静态变量。全局静态变量有以下特点。a. 在全局区分配内存。b. 如果没有初始化,其默认值为0。c. 该变量在本文件内从定义开始到文件结束可见。2、定义局部静态变量在局部变量前面加上关键字static,其特点如下...

2020-03-28 16:37:23 221

转载 【Linux】ln命令 - 创建和删除软、硬链接

Linux ln命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。

2020-03-28 16:12:02 4963

转载 Git学习:git clean的用法

git clean 命令用来从你的工作目录中删除所有没有tracked过的文件。git clean 经常和 git reset --hard 一起结合使用。记住reset只影响被track过的文件,所以需要clean来删除没有track过的文件。结合使用这两个命令能让你的工作目录完全回到一个指定的<commit>的状态。用法:git clean -n是一次clean的演习, 告...

2020-03-28 15:46:14 3637

转载 【Linux】详解shell中source、sh、bash、./执行脚本的区别

source命令用法

2020-03-28 15:35:40 25270 2

原创 音视频基础

音视频基础

2020-03-28 14:29:36 1762 1

原创 WAV系列之二:ADPCM编解码原理及代码实现

ADPCM编解码原理及代码实现

2020-03-09 17:41:47 10953

原创 WAV系列之一:G711编解码原理及代码实现

G711也称为PCM(脉冲编码调制),是国际电信联盟制定出来的一套语音压缩标准,主要用于电话。

2020-03-06 19:10:31 5580

原创 网页收录大全

http://www.verysource.com/ 各种源码大全

2020-03-04 14:36:23 224

转载 Git学习:Git 撤销commit文件 和 回退push的文件

第一种情况 : 撤销commit文件我们先查看一下log日志:两种查看方法:git log 显示从近到远的日志记录,按向下键来查看更多,按 Q 键退出查看日志git log --pretty=oneline 简洁显示日志记录当然还有更多查看 log 的方法,就不展示了,自行百度吧.前五次提交是已经 push 到远程仓库的,第六次是 commit 的,然后我突然不想 commit ...

2020-02-25 16:45:22 6858 1

转载 C语言:inline,static inline

inline函数被调用时,需要出栈入栈。当函数频繁被调用时,则不断地有函数出栈入栈,会造成栈空间或栈内存的大量消耗。所以引入了inline。inline: 在函数声明或定义中函数返回类型前加上关键字inline,即可以把函数指定为内联函数。内联函数: 建议编译器对一些特殊函数进行内联扩展(有时称作在线扩展)。也就是说建议编译器将指定的函数体插入并取代每一处调用该函数的地方(上下文),从而节省...

2020-02-19 11:59:44 11908

转载 C语言:命令行选项解析函数---getopt()和getopt_long()

上午在看源码项目 webbench 时,刚开始就被一个似乎挺陌生函数 getopt_long() 给卡住了,说实话这函数没怎么见过,自然不知道这哥们是干什么的。于是乎百度了一番,原来是处理命令行选项参数的,的确,正规点的大型程序一般第一步就是处理命令行参数的,接着才是主干程序。在百度和 man 的帮助下,找到了具体使用方法和解释,二话不说赶紧学习一下,并总结出文档记录一下。平时在写程序时常常需要...

2019-12-19 16:20:51 982

转载 C语言:断言assert函数完全攻略

对于断言,相信大家都不陌生,大多数编程语言也都有断言这一特性。简单地讲,断言就是对某种假设条件进行检查。 在 C 语言中,断言被定义为宏的形式(assert(expression)),而不是函数,其原型定义在 <assert.h> 文件中。其中,assert 将通过检查表达式 expression 的值来决定是否需要终止执行程序。也就是说,如果表达式 expression 的值为假(即...

2019-12-19 14:11:51 15643 6

转载 C语言:二级指针(指向指针的指针)详解

摘自:《C语言入门》 http://c.biancheng.net/c/指针可以指向一份普通类型的数据,例如 int、double、char 等,也可以指向一份指针类型的数据,例如 int *、double *、char * 等。如果一个指针指向的是另外一个指针,我们就称它为二级指针,或者指向指针的指针。假设有一个 int 类型的变量 a,p1是指向 a 的指针变量,p2 又是指向 p1 的...

2019-12-17 16:35:15 559

转载 C语言:堆和栈的区别是什么?

首先,讨论的堆和栈指的是内存中的“堆区”和“栈区”,OC语言是C语言的超集,所以先了解C语言的内存模型的内存管理会有很大的帮助。C语言的内存模型分为5个区:栈区、堆区、静态区、常量区、代码区。每个区存储的内容如下:1、栈区: 存放函数的参数值、局部变量等,由编译器自动分配和释放,通常在函数执行完后就释放了,其操作方式类似于数据结构中的栈。栈内存分配运算内置于CPU的指令集,效率很高,但是分配的内...

2019-12-17 16:22:58 677

转载 vim字符串替换

vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询。替换:s/vivian/sky/ 替换当前行第一个 vivian 为 sky:s/vivian/sky/g 替换当前行所有 vivian 为 sky:n,$s/vivian/sky/ 替换第 n 行开始...

2019-12-17 16:17:14 234

原创 vim+ctags+cscope+Taglist+NERDTree打造成SourceInsight

Vim神器,将Vim改造为强大的IDE

2019-12-17 15:51:47 2774 3

原创 Git学习:git-rev-parse命令初识

git rev-parse --git-dir //显示版本库.git命令所在的位置执行命令 git rev-parse --git-dirgit rev-parse --show-toplevel //显示工作区根目录执行命令 git rev-parse --show-toplevelgit rev-parse --show-prefix //显示相...

2019-12-16 19:11:00 4060

转载 编译和链接的过程

参考:https://www.cnblogs.com/linhaostudy/p/8808967.html程序要运行起来,必须要经过四个步骤:预处理、编译、汇编和链接。接下来通过几个简单的例子来详细讲解一下这些过程。对于上边用到的几个选项需要说明一下。使用 gcc 命令不跟任何的选项的话,会默认执行预处理、编译、汇编、链接这整个过程,如果程序没有错,就会得到一个可执行文件,默认为a.out...

2019-12-16 16:56:17 421

RISCV GDB调试指南,介绍GDB指令

2022-11-08

vim配置文件,将vim打造成SourceInsight

vim配置文件,将vim打造成SourceInsight

2022-04-20

多媒体中H263协议说明中文版

多媒体中H263协议说明中文版

2022-03-04

多媒体中H263协议说明

多媒体中H263协议说明

2022-03-04

AVS资料汇总.7z(编解码相关)

AVS资料汇总.7z

2020-12-24

avs+资料汇总.7z

avs+资料汇总.7z

2020-12-24

mpeg中英文资料汇总.7z

mpeg中英文资料汇总.7z

2020-12-24

新一代视频压缩编码标准-H.264_AVC(第二版).pdf

新一代视频压缩编码标准-H.264_AVC(第二版).pdf

2020-12-24

新一代视频压缩编码标准H.264.pdf

新一代视频压缩编码标准H.264.pdf

2020-12-24

H.264码流结构解析.pdf

H.264码流结构解析.pdf

2020-12-24

MP4格式解析.doc

MP4格式解析.doc

2020-12-24

GStreamer应用程序开发手册.pdf

GStreamer应用程序开发手册.pdf

2020-12-24

GStreamer讲解.pptx

GStreamer讲解

2020-12-24

gstreamer-test

gstreamer-test

2020-12-24

GStreamer+插件开发指南.pdf

GStreamer+插件开发指南.pdf

2020-12-24

G711_G721_G723.7z

在电话技术中,有两个主要的算法标准,分别定义在 mu-law 算法(美国使用)和 a-law 算法(欧洲及世界其他国家使用)中。两者都是基于对数关系的,但对于计算机的处理来说,后者更为简单。

2020-03-06

.vimrc配置文件

介绍Vim配置文件.vimrc,配置Vim显示行号、支持utf8中文不乱码、突出显示Vim当前行,设置高亮显示括号匹配和tab缩进,解决Vim粘贴时多出缩进和空格问题。

2019-12-17

视频编解码学习之五:差错控制及传输 - Mr.Rico - 博客园.pdf

介绍了差错控制目的、差错控制技术、纠错、重传、前向纠错码等知识

2019-09-03

视频编解码学习之四:视频处理及编码标准 - Mr.Rico - 博客园.pdf

介绍了视频处理、预处理、去隔行的方法、MPEG去隔行处理、空间缩放、超分辨率等知识

2019-09-03

视频编解码学习之三:变换,量化与熵编码 - Mr.Rico - 博客园.pdf

介绍了变换编码、变换类型、KL变换、离散傅立叶变换、离散余弦变换、快速DCT变换、H.264的4x4整数变换等知识

2019-09-03

视频编解码学习之二:编解码框架 - Mr.Rico - 博客园.pdf

介绍了码流结构、帧类型、条带、宏块、预测编码、运动估计、变化编码、量化等知识

2019-09-03

视频编解码学习之一:理论基础 - Mr.Rico - 博客园.pdf

①为什么要进行视频压缩? ②为什么可以压缩? ③数据压缩分类 ④编解码器 ⑤压缩系统的组成 ⑥编解码器实现 等等

2019-09-03

mp4文件格式详解.7z

mp4文件格式详解,介绍了各个box的含义,以及如何解析出所需要的媒体信息

2019-07-24

ISO base media file format.pdf

Information technology — Coding of audio-visual objects — Part 12: ISO base media file format

2019-07-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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