自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 FFMPEG解码H264成YUV

FFMPEG解码H264成YUV1、源代码下载博哥已经将这部分代码在github上开源,请在github上下载。下载地址: https://github.com/wangfengbo2020/ffmped_decode_h264_to_yuv2、源码分析2.1 工程介绍build.sh: 编译脚本,无参数videodecoder.h: ffmpeg转码的APIvideodecoder.c: 对ffmpeg转码的API的实现decodeH264.c:demo2.2 工程运行(1)打

2020-12-29 20:26:36 3506 9

原创 FFMPEG编译支持x264及x265

FFMPEG编译支持H264及H2651、FFMPEG简介官网地址:http://www.ffmpeg.orgFFmpeg是视频处理领域的瑞士军刀,可以用来记录、转换数字音频、视频,并能将其转化为流的开源程序,采用LGPL或GPL许可证。包含的核心库如下:ibavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能;libavcodec:用于各种类型声音/图像编解码;libavutil:包含一些公共的工具函数;libswscale:

2020-12-29 16:47:49 5693 7

原创 x265下载及编译

X265下载及编译简介x265是一个用于编码符合高效率视频编码(HEVC/H.265)标准的影片的开源自由软件及函数库。与x264项目类似,x265使用GNU通用公共许可证(GPL)2授权或商业许可证授权提供。下载(1) 在终端运使用git获取x265库源码cd ~/avgit clone https://github.com/videolan/x265.git(2) 百度云盘获取链接: https://pan.baidu.com/s/1m6DOOI8dP5wiTDTU5KOaVQ 密码

2020-12-29 14:53:58 2596 1

原创 x264下载及编译

X264下载及编译简介H.264是ITU(International Telecommunication Union,国际通信联盟)和MPEG(Motion Picture Experts Group,运动图像专家组)联合制定的视频编码标准。而x264是一个开源的H.264/MPEG-4 AVC视频编码函数库,是最好的有损视频编解码器之一。下载在下载前,首先创建一个av的文件夹,用于后续所有和音视频相关的存放,博哥把这个文件夹放在了家目录下.在终端运使用git获取x264库源码cd ~/avg

2020-12-29 14:05:20 1704

原创 ChatGPT魔法5: 总结及怎么用ChatGPT帮你写程序

同编程不同,编程是给特定的input就会有特定的output,对于GPT我们的思路是先给input,然后得到一个output,这时我们需要看结果和我们的预期有多大差别,然后讲这个结果结合你的预期形成反馈传给输入,ChatGPT会根据这个反馈再进行微调改进,不断循环,直到获得到认可的答案,实际上,这个也是深度学习训练的思路。Chatgpt的四大应用,实际上一些烧脑型、‘奥赛的不适合GPT, 对于GPT是大预言模型,擅长的是语言处理,比如对文章等的总结,以及对客户的信件、评价的一个客观判断。

2024-02-27 11:53:06 919

原创 ChatGPT魔法4:四大应用

ChatGPT 应用,总结和推理

2024-02-26 13:33:18 393

原创 ChatGPT魔法3:渐进式

入门学习ChatGPT.

2024-02-26 12:29:30 586

原创 ChatGPT魔法2:两大准则

Eg5: 如何有记忆功能: 记忆窗口(ChatGPT3.5: 4000字节) 答案要基于所给定的文章,可以增加 if …Eg1: 如果写书,需要一步一步走,概要,然后分成八个章节,然后第一个章节,分段。Eg4: 论文总结、翻译等 ChatGPT4.0 的Plugin。Eg6: 微软365+ChatGPT doc -> PPT。: 清晰 Clear 具体 Specific。比如讲一半,使用请继续 (有字数限制)2)举个例子(比如名字,不要叫铁蛋)

2024-02-18 13:04:00 832

原创 ChatGPT魔法1: 背后的原理

3) Deep learning, 有神经网络, 最有代表性的是ChatGPT, GPT(Generative Pre-Trained Transformer)把一个词使用高维对词进行理解,可以并行做训练。ChatGPT使用互联网上的所有资源进行学习。llya Sutskever: 做图像识别,使用了GPT去并行计算及训练。1) 上世纪50~60年代,计算机刚刚产生。

2024-02-18 12:23:58 699

原创 Rust语言入门(4)—— Hello world& Cargo

Rust Hello world小试牛刀Rust Cargo 使用

2022-09-11 16:48:12 382 1

原创 Rust语言入门(3)—— 环境搭建

Ubuntu 2004 搭建 Rust 环境

2022-09-11 16:08:45 275

原创 Rust语言入门(2)——设计哲学

Rust 语言设计哲学

2022-09-11 15:52:36 533

原创 linux驱动设计——内核模块简介

1 概述我们知道Linux的内核非常庞大,包含的组件也很多,而实际的项目中我们只会使用其中的一部分,同时又会增加一部分相关的组件,那么我们如何来管理这些组件呢?有两种方法:1)全部编译到内核2)动态加载到内核分别谈一下特点,对于全部编译到内核,会导致两个问题,一个是内核会非常庞大,另一个是当我们对组件做任何修改的时候,都需要重新编译内核。而对于动态加载到内核,可以保证一个干净的内核,其他的组件在有需要的时候动态的加载到内核中去,这种加载和完全编译的效果相同。Linux通过提供 模块机制,来完成动态

2022-09-04 18:31:00 103

原创 Rust语言入门(1)—— 前言

Rust gogogo!

2022-08-22 21:55:27 902

原创 【读书笔记】嵌入式系统安全(2)—— 系统软件的安全考量(上)

嵌入式 系统安全。

2022-08-22 21:28:08 1163 2

原创 【读书笔记】嵌入式系统安全(1)—— 嵌入式系统安全绪论

嵌入式系统安全

2022-08-22 21:26:48 867

原创 Ubuntu 安装Python3.8

安装Python3.8一、安装环境Ubuntu2004Python2.7目标是将python版本从 2.7 更新到3.8二、安装步骤2.1 下载python3.8安装包wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0a4.tar.xz2.2 安装依次执行如下步骤:./configure prefix=/usr/local/python3makemake install安装完成后查看:2.3 环境切换

2022-02-23 14:00:57 23087 11

原创 GCC编译器应用简介

GCC编译器应用简介一、初识GCC二、GCC编译代码三、GCC命令四、GCC编译流程一、初识GCCUbuntu 下的 C 语言编译器是 GCC,GCC 编译器在我们 Ubuntu 的时候就已经默认安装好了,可以通过如下命令查看 GCC 编译器的版本号:gcc -v输入命令后,终端会如下图所示:从图中可以看出:版本号:9.3.0支持架构:x86_64-linux-gnu二、GCC编译代码这里我们写一个helloworld.c作为例子:#include <stdio.h&gt

2021-11-02 17:12:47 113

原创 SDL显示YUV

1 简介关于SDL显示YUV有很多文章,在做这块之前也参考了很多,这里推荐一篇雷神的。https://blog.csdn.net/leixiaohua1020/article/details/405255912 正文注意,这里只实现了NV12,需要特别注意。雷神的文章里支持很作中类型。直接上代码吧, 下边这个是vp.c/*******************************************************************************Copyright

2021-07-13 13:12:45 492

原创 SDL2环境搭建

SDL(SimpleDirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成。SDL提供了数种控制图像、声音、输出入的函数,让开发者只要用相同或是相似的代码就可以开发出跨多个平台(Linux、Windows、Mac OS X等)的应用软件。目前SDL多用于开发游戏、模拟器、媒体播放器等多媒体应用领域。官网地址:https://www.libsdl.org/1、环境简介PC环境: ubuntu2004SDL版本: 2.0.142、安装步骤2.1 源码下载下载

2021-07-12 20:11:34 772

原创 程序员自我修养读书笔记1——基础回顾

说明因为是学习笔记,所以只记录相关知识点1、本书主要内容编译静态链接机制操作系统如何装载程序、动态链接库、运行库标准库操作系统机制2、高速和低速设备南桥: cpu、内存、高速图形北桥:磁盘、键盘、鼠标3、SMP和多核CPU频率在短期内是天花板。 对称多处理器(SMP)4、系统软件分类平台型:操作系统内核、驱动、运行库、系统工具用于程序开发:编译器、汇编器、链接器等5、计算机分层计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决接口(Interfac

2021-06-29 14:15:49 133 1

原创 程序员自我修养读书笔记——说明

说明程序员这本书值得每位程序员来阅读。后续的系列文章只是作为读书笔记。

2021-06-29 12:47:42 113

原创 Python 官网

重点本文开篇即重点,那就是python官网https://docs.python.org/zh-cn/3/说点闲话,断断续续会写一点python代码,没有从基础学,遇到问题直接度娘,最近在做使用python调用C/C++库,使用ctypes,自己想实现几个目标demo,但一直很慢,找了很多资料,发现效果都不佳。直到招到了这一篇:https://docs.python.org/zh-cn/3/library/ctypes.html?highlight=ctypes#module-ctypes这才是经

2021-04-12 14:21:09 418

原创 FFmpeg 常用命令积累

1 截取MP4 一段视频命令行:ffmpeg -i ./wedding.mp4 -vcodec copy -acodec copy -ss 01:25:51 -to 01:32:10 out.mp4 -y参数解析-vcodec copy表示使用跟原视频一样的视频编解码器。-acodec copy表示使用跟原视频一样的音频编解码器。-i 表示源视频文件-y 表示如果输出文件已存在则覆盖。2 TO ADD...

2021-02-19 21:13:11 213

原创 H264 NALU详解

H264 NALU1、介绍在H.264/AVC视频编码标准中,整个系统框架被分为了两个层面:视频编码层面(VCL)和网络抽象层面(NAL)。前者负责有效表示视频数据的内容,而后者则负责格式化数据并提供头信息,以保证数据适合各种信道和存储介质上的传输。可以这样理解NALU,在编码后的数据,I/P/B,需要持续的传输出去,那马上能想到的至少有两个需求,一个是该数据的帧类型,比如是I还是P,另外一个问题,这些数据在网络中传输可能会粘包,若是存储成一个文件后,想从这个文件再从头提取可就难了,不知哪里开始哪里结

2021-02-01 16:53:33 1582

原创 系统设计架构师备考(2)——目录大纲

目录大纲1 知识点

2021-01-31 00:05:32 102 1

原创 系统架构设计师备考(1)——资料选择

架构师备考1、资料选择1.1 还是选择官方指定书籍,如下图:1.2 培训教材推荐我查询了下,官方没有电子版本,为了能在pc观看,我又买了一本希赛的。如下图:1.3 辅导资料五年真题通关辅导...

2021-01-30 23:46:42 207

原创 Linux驱动设计——C编程规范

1、说明在内核源码Documentation/CodingStyle下,介绍了Linux下编码规范,上一张图给大家:2、编码Style2.1宏定义#define PI (3.1415926)说明: 宏定义全部大写2.2 变量名int min_value, max_value ;说明:变量名小写,下划线隔开2.3 函数名void send_data(void);说明:变量名小写,下划线隔开2.4 代码缩进使用“TAB”2.5 "{“和”}"的使用2.5.1 结构体、if

2021-01-23 15:38:55 325 4

原创 Linux驱动设计——内核组成

1、内核源码目录结构下面请看4.4内核根目录的源码:简要说明:arch:包含和硬件体系结构相关的代码,每种平台占一个相应的目录,如i386、arm、arm64、powerpc、mips等。Linux内核目前已经支持30种左右的体系结构。在arch目录下,存放的是各个平台以及各个平台的芯片对Linux内核进程调度、内存管理、中断等的支持,以及每个具体的SoC和电路板的板级支持代码。block:块设备驱动程序I/O调度。crypto:常用加密和散列算法(如AES、SHA等),还有一些压缩和CRC校

2021-01-22 13:03:57 228

原创 数据结构概述

1、 数据结构概述1.1 计算机解决问题的步骤是什么样的?问题->抽象数学模型->算法->编程->测试 ->调整1.2 什么是数据结构数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象及他们之间的关系和操作的学科。2、基本概念和术语2.1 数据对客观事物的符号表示2.2 数据元素数据的基本单位2.3 数据对象性质相同的数据元素的集合,数据的子集2.4 数据结构相互间存在一种或多种特定关系的数据元素的集合。通常有四类基本结构集合线程树

2021-01-20 23:31:17 229

原创 Linux驱动设计——硬件基础

Linux 驱动设计之硬件基础0、开篇说明本片内容主要来源于宋宝华老师《Linux设备驱动开发》1、处理器目前主流的通用处理器(GPP)多采用SoC(片上系统)的芯片设计方法,集成各种功能模块. ARM内核的设计技术被授权给数百家半导体厂商,做成不同的SoC芯片。ARM的功耗很低,在当今最活跃的无线局域网、3G、手机终端、手持设备、有线网络通信设备等中应用非常广泛。很多ARM主控芯片的集成度非常高,除了集成多核ARM以外,还可能集成图形处理器、视频编解码器、浮点协处理器、GPS、WiFi、蓝牙、基带

2021-01-20 22:13:46 390

原创 H264简介

H264简介(未完待续)0、提前说明写这篇文章的时候,准备不足。越写发现自己的知识面越不成体系,总结之,这几年的根基打的不牢。经行业人推荐,后续去读以下两本书,把自己重新回炉,若是有相关好的资料和图书 欢迎推荐。1、H264简介H264视频压缩算法是目前所有视频压缩技术中使用最广泛、最流行的一种。这里还是要讲一下,编码的目的是什么?为什么要编码,实际上就是通过编码,为了减少数据量,便于存储和传输。本篇内容会结合H264编码原理和实际用用分别做介绍。2、编码简介说在最前边,若是想详细了解H2

2021-01-15 15:23:41 2864

原创 音视频重点网站搜集

很不错的整理地址链接

2020-12-30 23:53:07 120

原创 YUV详解

1 YUV简述YUV是指亮度参量和色度参量分开表示的像素格式,而这样分开的好处就是不但可以避免相互干扰,还可以降低色度的采样率而不会对图像质量影响太大.这里介绍一片比较好的文章,来自微软,如下:http://msdn.microsoft.com/en-us/library/aa904813(VS.80).aspx2 YUV格式YUV颜色模型,单单就YUV颜色模型来说,就有很多中叫法。一般来讲,我们把YUV、Y‘UV、YCbCr, YPbPr包含在YUV颜色模型的范围内,其中Y都表示亮度,UV表示两个

2020-12-29 17:12:57 1230 1

原创 颜色空间

颜色空间简介1 简介颜色空间也称彩色模型,又称彩色空间或彩色系统.本质上,彩色模型是坐标系统和子空间的阐述。采用的大多数颜色模型都是面向硬件或面向应用的.重用颜色空间:RGBYUVHSV2 分类2.1 RGBRGB(红绿蓝)是依据人眼识别的颜色定义出的空间,根据人眼结构,所有的颜色都可以看做是3种基本颜色按照不同比例的组合。红绿蓝的基本波长分别为:700nm, 546.1nm, 435.8nmRGB模型空间是一个正方体,如下图所示:原点对应黑色,离原点最远的顶点对应白色,从黑到白

2020-12-29 17:09:31 392

原创 Ubuntu20.04 上搭建 QT5.9

Ubuntu 上搭建QT1、环境准备1.1 ubuntu环境 ubuntu版本20.041.2 QT安装包 下载地址:http://download.qt.io/archive/qt/ 编写该文档的时候,QT最新版本已经到6.0了。这里博哥还是选了一个相对稳定的版本5.9版本最后后续博客的基础。2、QT安装过程2.1 copy QT安装包到ubuntu2.2 安装QT2.2.1 开始安装2.2.2 设置setup(1) 邮件这里可以直接skip,若是有账

2020-12-29 11:22:07 1550

原创 开篇(圣诞老人在路上)

开篇(圣诞老人在路上)2020年已经接近了尾声,转眼间已工作十余年 ,心有悸,于是写下这篇文章...本人王丰博,在公司中属于年长的开发者,大家习惯称呼博哥。2010年毕业于东北林业大学电子信息工程专业。先后在深圳北京就职。目前在天津工作,一直从事嵌入式及音视频开发。在十余年的工作经历中,带过项目,带过团队,接触过实习生,初出茅庐的应届生,也有行业深耕多年的技术专家,在这过程中发现自己接触的技术点很杂很广,没有形成体系,在某些技术点又浅尝则止,深深的为自己处在中年而感到后怕。在后续我会逐步梳理

2020-12-24 18:47:49 119 1

空空如也

空空如也

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

TA关注的人

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