10 轻舞飞扬SR

尚未进行身份认证

我要认证

视频压缩,视频编码,图像处理,图像压缩

等级
TA的排名 4w+

[视频编码] 数字视频分量编码

[视频编码] 数字视频分量编码

2020-09-21 17:36:27

[C] C指针基础概览

C指针概述在C语言中,指针不仅可以表示变量的地址,而且还可以存储数组,数组元素,函数,文件设备的地址,C指针的主要特征具体如下:通过一个变量声明时在前面使用“*号”,表面这是个指针型变量。该变量存储了一个内存地址。单目运算符*(不是指代表乘法的运算符)是获取指向内容的操作符,用来获取内存地址里存储的内容。弹幕运算符 & 是获取地址的操作符,用来获取变量的地址。该文章里所有的测试均是在64位Windows环境下的Visual Studio 2019 中进行。指向标量的C指针标量是

2020-08-15 18:23:35

[AV1] AV1 Encoder代码流程图

我们在读Libaom-av1代码的时候,不仅会被其代码的庞大量惊艳到,同时也会折服于它代码的复杂程度。我这个专题博客专门来总结Libaom-av1的代码结构,希望以后的人能快速入门AV1的代码实现。首先,上Encoder流程图...

2020-08-04 10:36:14

[AV1] AV1中帧内编码预测器与原始数据相减的运算过程

static INLINE void aom_subtract_block_32xn_avx2(int rows, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride) { for (int32_t j = 0; j < rows; ++j) { subtract

2020-07-31 17:47:13

[AV1] AV1帧内编码 DC模式数据拷贝过程

AV1的DC预测模式,是将整个预测块的所有像素值全部赋值为128,即十六进制0x80,赋值根据块的大小不同共分为以下六个函数进行:aom_dc_128_predictor_32x32_avx2aom_dc_128_predictor_32x16_avx2aom_dc_128_predictor_32x64_avx2aom_dc_128_predictor_64x64_avx2aom_dc_128_predictor_64x32_avx2aom_dc_128_predictor_64x16_av

2020-07-29 16:39:58

[C] cJSON内存泄漏(cJSON memory leak)

关于cJSON库的内存泄露问题void writeStructToFile(IOPipe this, struct structtype somevalues) { cJSON *jout = cJSON_CreateObject(); cJSON_AddItemToObject(jout, "V1", cJSON_CreateNumber(somevalues.v1)); cJSON_AddItemToObject(jout, "V2", cJSON_CreateNumber(s

2020-07-29 11:06:36

[AV1] A Progress Report: The Alliance for Open Media and the AV1 Codec

On April 5, 2016, the Alliance for Open Media announced three new members; AMD, ARM, and NVIDIA, and that the AOMedia Video codec, also called AV1, would be developed as an open source project.As you may recall, the Alliance formed in September 2015, with

2020-07-28 16:10:18

[AV1] AV1 帧内预测

这篇博客主要对AV1的帧内预测编码部分的代码进行分析。AV1同其他标准一样,预测是为了生成当前块的预测器(Predictor),然后把当前块像素值与预测器的差值传递给编码器的下一个阶段。在AV1的参考软件libaom-av1中,帧内预测从函数 av1_predict_intra_block_facade() 开始。//AV1 帧内预测起始函数void av1_predict_intra_block_facade(const AV1_COMMON* cm, MACROBLOCKD* xd, int p

2020-07-20 23:56:36

[Git] git的暂存区管理

Git管理重命名文件当我们在git里完成了一些操作,然后添加了当前修改的一些文件到暂存区后准备下一步的开发,但是在下一步的开发中,我们修改了一些文件的文件名,比如后缀名改了之类的操作时,我们再次add到暂存区时,会出现我们删除了一个文件,且又新建了一个同名文件。那之后按照流程我们需要将test.cpp加入到暂存区,然后将暂存区已有的文件删除。那么这么一番操作下来,git 察觉到的情况是我们将文件重命名了。所以,我们如果想重命名文件,可以执行以下步骤:不过,这个过程好复杂,就是简简单单地重命名一个

2020-07-19 19:30:11

Visual Studio 2017 项目中引用lib静态库

如果在Visual Studio 2017中引用别人事先已经封装好了的lib静态库,那么需要经过一下几个步骤来向项目中导入lib库首先,事先把需要引入的lib文件的文件目录进行复制,(最好是放置到项目的include目录下)在引用lib文件的时候,务必同时修改一下两个选项库目录:在库目录中添加寻找lib文件的目录附加依赖项:在附加依赖项中添加在寻找lib文件目录下需要引用的lib库文件。(如果不在附加依赖项里填上,就需要在代码里用#pragma comment(lib, “xxx.lib”)来手动

2020-07-19 11:25:50

[Git] 代码管理之 Git(一)

Git 简介当我们开发一个产品的时候。所有的代码并不是一气呵成全部一次性完成的,肯定是经过多个步骤,大项目甚至会多人好几个月甚至几年共同开发而成的,而这个过程中,我们的代码要形成很多个版本,好比(图片摘自网上)这么多的版本,不好管理,同时也不好知道下一个版本相对于上一个版本到底修改了哪里。正是基于无论是文章还是软件的管理混乱这个初衷,软件版本管理工具横空出世。软件版本管理工具主要可分为两类...

2020-03-21 23:43:02

[Linux] 如何挂载U盘到Linux下

首先插上U盘fdisk -l 找到自己的U盘设备,并且记住文件系统类型,主要看空间大小来判断,比如是/dev/sdc在mnt目录下建立一个usb目录 mkdir -p /mnt/usb挂载U盘 mount -t vfat /dev/sdc /mnt/usb...

2020-03-08 16:02:11

[Linux] 更新源地址列表及更改方法 [Ubuntu 16.04 LTS]

在修改source.list前,最好先备份一份,以便日后恢复 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak修改更新源:sudo gedit /etc/apt/sources.list最后执行更新命令:sudo apt-get update阿里云源deb cdrom:[Ubuntu 16.04 LTS _Xenial Xer...

2020-03-08 15:59:29

[Linux] Linux 基础命令 (持续更新)

Linux介绍目录结构介绍文件权限说明命令使用方式和技巧常用命令:ls常用命令:重定向、more、管道常用命令:clear、cd、pwd课堂答疑:管道、目录10_常用命令:mkdir、rmdir、rm11_常用命令:ln12_常用命令:grep13_常用命令:find、cp、mv、file14_常用命令:tar、gzip15_常用命令:tar、bzip216_常用命令:...

2020-03-08 15:48:32

[Linux] VIM的使用

[Linux 编程] VIM的使用

2020-03-08 15:26:17

Visual Studio 2017 配置项目生成文件的路径以及项目依赖

Visual Studio 项目的配置,设置项目生成文件的路径打开工程项目的属性,如下图,选择 General -> Output Directory输入 $(SolutionDir)\bin\ 时,可以使得运行该项目以后生成的文件(pdb文件,ilk文件,exe文件等)会转存到解决方案下的bin目录里(如果目录不存在,将会被新建)下面几个参数的含义Target Name:生成的文...

2020-03-08 14:23:50

[视频编码] 视频质量评判标准

客观PSNR评价MOS主观评价

2020-02-16 01:47:40

[C++并发编程] 1. 并发编程入门

本系列记录学习C++并发编程过程中的一些归纳总结的笔记。并发编程对并发编程最简单地说明就是CPU同时处理两个或更多独立的任务。在这里,有两个概念需要搞清楚,即“多处理器”和“多核”。多处理器是指在一台电脑上存在有多个物理CPU,这样的配置即使是现在也基本上只会在服务器上使用;而多核,也可以说多核处理器,是指只有一个物理CPU,但是在这个CPU中做了多个核心,每个核心就相当于一个个的小CPU,...

2020-02-06 13:29:14

[视频编码] HEVC 简介

这是一个专栏,从视频编码最基础的知识到HEVC技术细节的点点滴滴,记录了我研究生对于视频编码的理解。这个系列包含了下面的内容。视频编码入门,也就是本节,对视频编码的必要性做一个简单的入门视频格式,这个章节对于入门视频编码及以后对编码算法的理解做个基础的铺垫,简要介绍下视频的格式以及各种格式的组成形式。视频压缩的基本概念,这一章对视频压缩做一个简介,视频压缩的方法与概念,以及自视频发展开始到...

2019-06-01 12:39:42

[Qt] QT学习笔记(一)

为什么学习QT编程市场上的任何一款产品几乎都带图形界面,市场上很火的安卓程序,IOS程序也无非就是GUI app编程,GUI编程都是产不多,学习Qt后再学习Android,IOS会变得更加简单。而且Qt具有跨平台特性,通过Qt编写的程序可以全平台运行。学习Qt可以锻炼编程能力,GUI编程比后台编程更能锻炼人,除了需要懂得核心数据处理外同时需要懂得前端和后端编程才能更好地写好程序。Qt的文档非...

2019-10-15 23:45:00

查看更多

勋章 我的勋章
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 原力探索
    原力探索
    参与《原力计划【第二季】——打卡挑战》的文章入选【每日精选】的博主将会获得此勋章。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 分享精英
    分享精英
    成功上传11个资源即可获取