自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(307)
  • 资源 (2)
  • 问答 (2)
  • 收藏
  • 关注

原创 wencoo个人的博客目录索引-更新

精简软件开发,电脑性能越来越好,打出的程序安装包越来越大,磁盘,内存越吃越多,这不是好现象,大家觉得呢,欢迎发表看法,各抒己见。欢迎各位叨扰作者,如果有什么项目合作,创业合伙需要研发,网站推广等等,尽管来联系,对于能挣钱的事,作者可是很感兴趣的哦。前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。欢迎加微信,搜索"wencoo824",进行技术交流,备注”博客音视频技术交流“劝大家一句,不要内卷,内卷只能害了别人,害了自己。

2024-04-02 11:02:25 940 2

原创 ffmpeg学习日记503-源码-transcode()函数分析

ffmpeg学习日记503-源码-transcode()函数分析接着继续main分析://获取基准时间,合成要用current_time = ti = get_benchmark_time_stamps(); if (transcode() < 0) exit_program(1); if (do_benchmark) { int64_t utime, stime, rtime; current_time = get_benchma

2022-03-31 00:18:37 3030

原创 libass分析8-源码分析-libass处理event中{}的逻辑

由于笔者的水平有限, 加之编写的同时还要参与开发工作,文中难免会出现一些错误或者不准确的地方,恳请读者批评指正。精简软件开发,电脑性能越来越好,打出的程序安装包越来越大,磁盘,内存越吃越多,这不是好现象,大家觉得呢,欢迎发表看法,各抒己见。欢迎各位叨扰作者,如果有什么项目合作,创业合伙需要研发,网站推广等等,尽管来联系,对于能挣钱的事,作者可是很感兴趣的哦。前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。劝大家一句,不要内卷,内卷只能害了别人,害了自己。

2024-03-22 17:58:37 744

原创 opengl日记12-opengl坐标系统

之前注意到需要把下面两个头文件引入放在头文件的最前端,否则报错,今天发现,不仅这两个头文件需要放在最前端,而且引入顺序也不能更改,否则同样会报错,有函数找不到世界空间的变换(模型矩阵)物体的坐标将会从局部变换到世界空间;该变换是由模型矩阵(Model Matrix)实现的。模型矩阵是一种变换矩阵,它能通过对物体进行位移、缩放、旋转来将它置于它本应该在的位置或朝向。所以,局部空间到世界空间的变换可以用以下函数实现,只要最后得到一个mat4类型的结构就可以所以,这里我们可以引申一下,就是。

2024-03-21 16:56:28 474

原创 opengl日记11-opengl的transformtions变换示例

对于矩阵变换效果,如果静态变换效果,例如旋转30度,可以将矩阵变换数据放置在绘制流程之外(while外面),如果是动态变换效果,例如连续旋转,则需要将矩阵变换数据放置在绘制流程内(while内)静态效果std::cout

2024-03-21 10:08:13 246

原创 opengl日记10-opengl使用多个纹理示例

使用多个纹理,则需要定义多个纹理,读取多个图片数据std::cout

2024-03-20 17:57:59 818

原创 opengl日记9-opengl使用纹理示例

在这个例程中,使用了索引缓存对象EBO,使用了这个对象,就需要使用函数来绘制图像,如果不使用EBO,而用进行绘制,则会报段错误如果不使用EBO,则绘制图像则需要使用函数来绘制图像使用了EBO,则需要做如下操作来支持//定义绘制顶点的顺序//内存拷贝//定位各个点偏移位置的关系//根据索引对象进行绘制如果在你的绘制区域出现全黑的框,可能是纹理图片没有正确的加载,在这里正确的顺序是:纹理的定义–读取纹理图片。

2024-03-20 11:01:59 312

原创 opengl日记8-opengl创建三角形

在这个小示例,看着教程去码也是出了很多的错误,并且花费了很长的时间,去理解那些个概念,但依然有的操作不能够理解,总算磕磕碰碰显示出来了吧使用之后需要删除的对象有创建的着色器(2个),数组对象(2个),着色器程序(1个),以及关闭窗口程序glfwTerminate()

2024-03-19 14:05:31 347

原创 opengl日记7-ubuntu20.04开发环境opengl拓展glfw和glad环境搭建

版权声明:本文为CSDN博主「leon1741」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。版权声明:本文为CSDN博主「小强的机器人工坊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。版权声明:本文为CSDN博主「小强的机器人工坊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。最后将glad/src目录下的glad.c文件拷贝一份到你的工程源码目录下,如跟main.cpp文件在同一个目录下。

2024-03-19 14:04:26 1514

原创 国产Copilot--通义灵码安装教程

通义灵码,是一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成、代码解释、研发智能问答、异常报错排查等能力,并针对阿里云 SDK/API 的使用场景调优,为开发者带来高效、流畅的编码体验。支持 Java、Python、Go、C/C++/C#、JavaScript、TypeScript、PHP、Ruby、Rust、Scala 等主流编程语言。唤起 Visual Studio Code 插件市场直接安装,安装后请重启 IDE,即可开启智能编码之旅。

2024-03-15 15:13:00 757 1

原创 都2024年了,为什么还要学习c/c++

综上所述,即使在2024年,学习C/C++仍然具有重要意义。无论是从市场需求、薪资待遇、编程需求、资源支持、发展前景还是深入理解计算机科学的角度来看,学习C/C++都是一个值得考虑的选择。

2024-03-15 10:40:13 1021

原创 opengl日记28-opengl之c语言版本的glm库cglm编译使用教程

opengl中会使用到glm库,glm是一个c++实现的库,在一个c程序中是不能够使用的,所以要有c语言的替代版本,于是找到了cglm库,下面来了解一下cglm这个如何使用,是否能满足需求。但是此代码放在程序中是不能够正常使用的,经过不懈的排查,终于发现了问题所在,原来glm库中的ortho函数与cglm库中的glm_ortho实现不一样,导致不能够正常显示opengl内容。很明显,cglm库的ortho函数实现有6个参数,与c++库中的不一样,不能够直接使用,需要自己实现。至此,此程序经过验证,可用。

2024-03-15 10:28:55 477

原创 opengl日记27-opengl报错ERROR::SHADER::PROGRAM::LINKING_FAILED

由于笔者的水平有限, 加之编写的同时还要参与开发工作,文中难免会出现一些错误或者不准确的地方,恳请读者批评指正。上面的报错,是说顶点着色器语法错误,但是明明这个着色器文件在另一个程序中是没有什么报错的,现在怎么就报错了,我的程序就是基于那个程序修改来的啊。第二次,按照上面的方法不管用了,最后将version后面的core去掉后,程序编译过了,变得正常了。发现一次将着色器文件中的空白行,还有注释删除后,程序编译过了,变得正常了。出现报错,分析:报错信息不足,补充报错信息,修改printf内容。

2024-03-14 17:04:56 393

原创 ffmpeg日记4001-原理介绍-视频切割原理

这里的操作是将一种视频格式切割,之后生成的视频是同样的格式,所以直接是参数的复制即可,如果要生成另一种格式的视频,应该要单独设置设置输出视频格式的参数。

2024-03-11 11:26:27 423

原创 libass分析6-源码分析-ASS_Renderer结构体分析,ass文件数据是如何存放的

我们现在整体细致的分析了ass_renderer结构的数据内容,发现里面结构体很多,并且不同的结构体里面有相同的字段,目前还不清楚两个不同结构体中相同字段是否一样,有没有什么不同,下一篇文章继续慢慢分析。由于笔者的水平有限, 加之编写的同时还要参与开发工作,文中难免会出现一些错误或者不准确的地方,恳请读者批评指正。如果读者有任何宝贵意见,可以加我微信 wencoo824。

2024-03-08 17:07:08 784

原创 libass分析5-源码分析-ASS_Track结构体分析,ass文件数据是如何存放的

以上,就是ASS_Track结构体的所有数据内容,该数据内容中,包含了ass文件中所有解析数据,至少我们从代码层面是这么看的,如果要看更加具象的数据流存储,可以通过代码调试来看看数据到底是怎样的。

2024-03-06 09:57:40 369

原创 opengl日记23-opengl文字渲染-渐变色-教程示例

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。在文字渲染的基础上,增加了文字颜色的变化,从固定色变为渐变色,代码在。

2024-03-06 09:54:40 375

原创 程序员如何选择职业赛道?看这宝典就够了

如果上述几点你都认真的读完了,并且听从了建议,那么恭喜你,你将成为一个大佬,或者是乞丐。

2024-03-05 17:03:50 929

原创 opengl日记25-opengl文字渲染-渲染中文渐变色动画-直线线性运动-教程示例

由于笔者的水平有限, 加之编写的同时还要参与开发工作,文中难免会出现一些错误或者不准确的地方,恳请读者批评指正。如果读者有任何宝贵意见,可以加我微信 wencoo824。基础上修改,运动的宗旨就是修改x,y的坐标值,如何设定x,y的坐标值,就是运动的关键技术。前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。欢迎加微信,搜索"wencoo824",进行技术交流,备注”博客音视频技术交流“

2024-02-29 16:11:48 380

原创 opengl日记26-opengl文字渲染-渲染中文渐变色动画-贝塞尔运动-教程示例

由于笔者的水平有限, 加之编写的同时还要参与开发工作,文中难免会出现一些错误或者不准确的地方,恳请读者批评指正。如果读者有任何宝贵意见,可以加我微信 wencoo824。前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。欢迎加微信,搜索"wencoo824",进行技术交流,备注”博客音视频技术交流“动画,以贝塞尔曲线为例进行研究。

2024-02-29 15:34:27 461

原创 opengl日记19-opengl文字渲染-教程示例

由于笔者的水平有限, 加之编写的同时还要参与开发工作,文中难免会出现一些错误或者不准确的地方,恳请读者批评指正。如果读者有任何宝贵意见,可以加我微信 wencoo824。前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。欢迎加微信,搜索"wencoo824",进行技术交流,备注”博客音视频技术交流“正确编译完成之后,需要在有显示器的桌面上进行运行,然后查看实现效果。的实现,不多说,直接上代码。

2024-01-22 16:41:33 393

原创 libass分析3-源码分析-libass中的宏定义分析

和STARREDSTRVAL功能类似,该宏定义实现的功能是查找字符串Name,然后将Name的数据赋值给target,也就是外部的。实现的功能就是在字符串str中,解析,获取,(逗号)为间隔的一个项start,进行返回,同时修改了str指针的位置。但是实际上,可能并不是这样的结构,中间使用了更多的宏定义,其中可能包含了很多隐藏结构,需要仔细甄别,例如。解析字符串str,获取逗号前的项给token,同时str的指针进行移动,移动到下一个项起始地址。其余待写,其实到这里,后面的都大同小异,相同的分析思路。

2024-01-11 21:36:47 394

原创 libass分析2-源码分析-示例程序test.c的源码分析

由于笔者的水平有限, 加之编写的同时还要参与开发工作,文中难免会出现一些错误或者不准确的地方,恳请读者批评指正。在这个函数中,tname是Event项中的Format中的一项,token对应Event项中的Dialogue中的tname的对应项数值。process_text函数中过滤了空行等,有效数据进入process_line函数进行进一步处理。process_events_line函数开始具体处理Event的逻辑。在该函数中,有很多的宏定义,下面我们就看一看这些宏定义的作用,参考。

2024-01-11 21:36:04 983

原创 libass分析1-源码分析-起源-源码编译

由于笔者的水平有限, 加之编写的同时还要参与开发工作,文中难免会出现一些错误或者不准确的地方,恳请读者批评指正。如果读者有任何宝贵意见,可以加我微信 wencoo824。下载源码,版本:release 0.17.1 (released 2023-02-26)在目录结构中,找到test目录,其中有test.c的示例程序,下面进行编译运行。欢迎加微信,搜索"wencoo824",进行技术交流,备注”博客音视频技术交流“读取ass文件,生成图片。创建build目录,

2024-01-11 21:34:42 376

原创 ffmpeg学习日记619-指令-透明通道视频相关指令

只能封装为webm,argb数据转yuva420后编码。只能封装为mov,不可以封装为mp4。可以封装为 mp4、mov等。

2023-12-04 22:15:01 1488

原创 ffmpeg学习日记614-指令-获取文件时长

ffmpeg学习日记614-指令-获取文件时长。

2023-12-04 22:13:11 711

原创 软件国产化之殇

做一个产品,别人开源了,你拿过来使用,你可以说是基于什么什么做了二次开发,或者是别人有一款产品,你用自己的方式,自己码代码,实现了相同的一套,ui什么的都一摸一样,这都没有问题,但是像这样,把别人的东西拿过来,ui都不动一下,就换个log,名字,99%都还是原产品的东西,好意思拿出来说是”完全自研“?出现这样的事情,更深入的问题直至中国的经济环境现状,浮躁,急功近利。所谓软件国产化之殇。对于国产化产品,一直主打的都是”自研“,难道是我对”自研“这个词的理解有误?讨论一款国产化软件,属实给我震撼到了。

2023-08-25 10:17:45 533

原创 一文总结:如何在csdn中使用markdown写出精美文章

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + S

2023-08-24 11:42:50 212

原创 “demo“和“daemon“的概念区别

Demo是用于展示软件功能和吸引用户的演示程序,通常对应一个简化的应用程序。而Daemon是在后台运行的长期守护进程,负责特定任务或提供系统级服务。需要注意的是,这两个术语的确切含义可能因上下文而有所不同,具体取决于软件开发或系统管理的领域和用途。

2023-08-01 14:44:22 260

原创 又是一年高考时

又是一年高考时,看新闻,都在查分数,工作多年的我,羡慕!

2023-06-25 13:57:01 107

原创 ffmpeg学习日记121-视频-各种图片转yuv

这其中有一个功能点需要注意,不同的图片格式封装算法不同,所以解码使用的解码器也不同,我现在不清楚什么格式对应什么解码器,所以采用通过id的方式来查找解码器,是一种靠谱的行为。图片的解码方式和视频解码是一样的,因为视频是由一副一副的图片组成的,只不过视频的帧会前后参考,而图片是单独的一帧的格式封装。使用ffplay进行播放查看,需指定格式。

2023-06-19 10:59:55 740

原创 ffmpeg学习日记29-使用vscode调试ffmpeg源码

disable-stripping 注意一定要加–disable-stripping, 如果不加此选项,ffmpeg在编译时,会使用strip去掉符号信息。ffmpeg版本ffmpeg-4.1.10。–enable-debug 设置调试级别。创建launch.json文件,内容如下。在源码中打断点,查看是否进入调试模式。

2023-05-30 22:31:42 744

原创 ffmpeg学习日记122-视频-获取视频的解码器,yuv格式名称,理解编码格式,封装格式,yuv格式的关系

所以,我想要将png图片直接封装成mp4是不可以的,需要解码,解码之后得到的是png的yuv格式数据,需要将png格式的yuv数据(带透明通道)转换成yuv420的格式数据,才能够将编码封装成的mp4正确播放,否则生成的mp4播放内容是错误的。

2023-05-30 22:28:51 328

原创 ffmpeg学习日记122-视频-获取视频的解码器,yuv格式名称,理解编码格式,封装格式,yuv格式的关系

所以,我想要将png图片直接封装成mp4是不可以的,需要解码,解码之后得到的是png的yuv格式数据,需要将png格式的yuv数据(带透明通道)转换成yuv420的格式数据,才能够将编码封装成的mp4正确播放,否则生成的mp4播放内容是错误的。

2023-05-25 17:59:00 465

原创 ffmpeg日记1011-过滤器-语法高阶,逻辑,函数使用

实现的是2秒后logo从左到右移动,参数释义if(gte(t\,2)\,((t-2)*80)-w\,NAN) : 对水印坐标x的处理80 移动的距离,单位像素从这条命令中,可以看到,控制logo移动的重点设置在x的值设置,很明显,这其中涉及到特定的语法,本文的重点,就是来看这个特定的语法到底是如何定义的,怎样使用。有些过滤器支持通用的启用选项。对于支持时间轴编辑的过滤器,可以将此选项设置为在向过滤器发送帧之前求值的表达式。如果评估值非零,过滤器将被启用,否则帧将被原封不动地发送到过滤器图中的下一个过滤器。

2023-05-19 20:52:24 411 1

原创 ffmpeg学习日记101-视频-MP4提取YUV数据,每一帧保存为pgm图片

ffmpeg学习日记101-视频-MP4提取YUV数据,每一帧保存为pgm图片。

2023-05-18 10:43:23 397

原创 关于kylinV10系统鲲鹏芯片编译qt5.9.9源码中fontconfig包的处理

在编译webengine模块时,系统中安装了已经安装了fontconfig,但是就是找不到,各种方法都尝试了,仍无法解决,决定从qt源码来看看究竟有什么猫腻。显示改提示原因是没有安装fontconfig的开发库,所以去查看系统中库的安装情况,显示libfontconfig1-dev库没有安装,遂安装,安装之后再执行。返回值为1,表示执行失败,也就是fontconfig没有正确找到,我在其他系统上执行该命令,返回值为0。也查看了,系统中确实安装了这个库,但是就是qt找不到,怎么办?在鲲鹏系统上,可以看到。

2023-05-17 16:02:53 511

转载 详解C语言中的位操作运算符可以怎么用?

C语言提供了6个位运算操作符,这些运算符只能用于char、short、int、long类型。以下单引号里面的符号即为所提的6个位操作运算符。‘&’:按位与操作,按二进制位进行"与"运算;‘|’:按位或操作,按二进制位进行"或"运算;‘^’:按位异或操作,按二进制位进行"异或"运算;‘~’:按位取反操作,按二进制位进行"取反"运算;‘

2023-05-16 10:11:56 133

原创 git如何将本地分支推送到远程(远程上没有该分支)

这时候 push 和 pull 指令就无法确定该跟踪谁,一般来说我们都会使其跟踪远程同名分支,所以可以利用 git push --set-upstream origin branch_name ,这样就可以自动在远程创建一个 branch_name 分支,然后本地分支会 track 该分支。本地新建了一个分支,在远程分支中并没有,想要将本地分支作为新的分支直接传到远程的新分支上,下面讲如何实现。如果该文章对您有帮助,可以小小的打赏一下哈,您的支持,是对原创的最大支持。

2023-05-12 17:09:47 7371

转载 MAC安装brew保姆级教程

brew 可以用一条命令,就可以在mac上安装、卸载、更新各种软件包,因为brew的使用方便,如今已成为使用mac电脑的程序员的必备工具。版权声明:本文为CSDN博主「全世界最帅的男人」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/qq_45088552/article/details/126799921。安装成功:source /Users/xxx/.zprofile。brew uninstall 软件名。

2023-05-11 21:52:07 703 3

oracle19c安装过程.docx

一次耗时4天的oracle安装过程 服务端部署 平台环境 Linux系统:centos7.5 kernel:3.10.0-862.el7.x86_64 Oracle版本:oracle-database-ee-19c 因为oracle19对linux内核有版本要求,所以选择centos7.5

2019-09-15

ifsvnadmin.rar

该资源提供gcc,c++,svn,apache,php,5种软件的rpm安装包,基于3.10内核,没什么特别的,只是为大家整理好了,需要用的直接下载即可,如果自己下载当然也是可以的啦。

2019-08-11

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

TA关注的人

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