自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 资源 (4)
  • 收藏
  • 关注

原创 ubuntu20.04 编译瑞芯微rv1126问题集锦

ubuntu20.04 编译瑞芯微rv1126问题集锦

2024-03-21 11:17:45 785

原创 word文档智能翻译,版式还原,保留文档原有布局

【代码】文档智能翻译,保留文档原有布局,版式还原。

2023-12-26 17:17:57 476

原创 如何使用ffmpeg 去除MP3音频文件头部与尾部的静音数据

areverse滤波器用于反转音频文件,以便应用静音删除滤波器两次,以处理开头和结尾的静音数据。FFmpeg将读取输入的MP3文件,并应用silenceremove音频滤波器。完成处理后,将会在指定的输出路径中生成去除了头部和尾部静音数据的MP3文件。用于设置滤波器的阈值,以检测和删除静音数据。

2023-06-21 17:31:01 909

原创 如何集成谷歌lyra 编解码器?

Lyra是一种高质量、低码率语音编解码器,即使在最慢的网络上也提供语音通信。编码应用了传统的编解码数字信号处理的技术,解码端主要通过机器学习生成的声纹生成模型,根据数千小时的语音数据训练该生成模型,并进行优化(类似于WaveNet),以准确重新创建输入音频。

2023-03-29 11:26:51 724 2

原创 C++ 实现pcm 转wav

/ = 每秒字节数 : samples_per_sec * bits_per_sample / 8。// = 采样率 : 8000 | 6000 | 11025 | 16000。// = 每采样点字节数 : wBitsPerSample / 8。// = 量化比特数: 8 | 16。// = 通道数 : 1。//读取pcm 到内存。/* 默认wav音频头部数据 *///定义wav头,写入文件。/* wav音频头部格式 */

2023-02-28 14:49:38 932

转载 C++ 的 std::promise 和 std::future

编写多线程应用时,无法避免的要进行线程间数据同步/通信。和是 C++ 进行单向数据传递的一种方式。是数据的输入端,是数据的输出端。

2023-02-01 11:28:59 615 1

原创 C++ 智能指针 : auto_ptr 、unique_ptr、 shared_ptr、 weak_ptr

1、智能指针设计初衷: 智能指针实际是类,超过类的作用域后,析构函数会自动回收资源,为程序员管理申请的堆内存,避免内存泄漏

2023-01-05 09:38:13 481

原创 C++单例模式 : 懒汉模式 与 饿汉模式

单例模式:只能有一个实例,有懒汉和饿汉区分,实现核心思想: 1.构造函数私有化 2.使用静态函数作为接口来获取类对象

2023-01-04 10:01:01 2252 2

原创 C++ 简单工厂模式 与 工厂模式

一个工厂,多个产品。产品需要有一个虚基类。通过传入参数,生成具体产品对象,并利用基类指针指向此对象。通过工厂获取此虚基类指针,通过运行时多态,调用子类实现简单工厂 的设计是的,因为当我门新增一个产品,简单工厂类内部需要修改逻辑以生产对应的产品类;

2023-01-03 11:20:03 735

原创 C++ 跨平台文件读写

还在使用linux 自带的系统函数 fread 、fwrite么?考虑一下使用C++ 的ifstream、ofstream 一套代码,多平台运行,解放需要使用宏定义做平台区分读写的麻烦。// 获取filestr对应buffer对象的指针。// 调用buffer对象方法获取文件大小。// 业务逻辑,可对内存数据自行进行修改。// 加载文件中数据到内存。//释放内存、关闭文件句柄。// 采用二进制方式打开。// 输出内存数据到文件。

2022-12-12 14:47:10 1103

原创 ffmpeg 命令行 pcm 编码 opus

将16k,16bit,单声道的pcm裸流编码成opus裸流(不带ogg封装格式)将16k,16bit,单声道的pcm裸流编码成opus裸流(带ogg封装格式)

2022-11-11 15:48:19 945

原创 uint 正数 与 int 负数 相加,会变成很大的正数

从结果来看,uint + int 负数,变成了一个很大的数:4294967274, 如果项目程序中有这种代码,无疑是埋下巨坑,比如一个小白,他肯定会觉得0 + -22 = -22 < 0, 然后高兴的以为,这肯定会运行到小于0 的代码逻辑中,导致最后程序运行的结果事与愿违。uint 取值范围:0 ~ 2^32 - 1, uint之所以是32次方,是因为无符号,相对int省去一个正负符号的占位。int 取值范围: -2^31 ~ 2^31-1。

2022-11-10 11:54:56 768

原创 C++内存泄漏检测

valgrind --tool=memcheck --leak-check=full --log-file=reportlead ./ifly_audiocoding.out

2022-10-31 17:33:20 71

原创 git 常用操作

【代码】git 常用操作。

2022-10-11 16:07:18 83

原创 ffmpeg 命令行 pcm 编码 MP3

s16le表示:s表示有符号,l表示小端。可以用 s16be代替,表示s有符号b表示大端。参数的顺序,如果是在源文件前是作用于源文件的。

2022-09-08 10:59:58 1864

转载 ffmpeg windows编译动态库、静态库

之前4月份的时候在公司没编译出来,直接用的别人编译好了的库做的开发,现在有时间了,花了半天的时间编译成功,包括Windows下.lib和.dll,使用Android NDK编译生成的静态库.a和动态库.so。, 傻瓜式安装,但是要自己配置环境变量,下载后在开始菜单能看到如下4个程序,我们使用的是MSYS2 MinGW 64-bit,我的安装目录是E:\msys64。,直接下载最新的就可以,解压后放到E:\msys64\home\ivan(如果你是C盘就放C:\msys64\home\你的用户名)

2022-08-23 20:34:37 1629 2

转载 TCP UDP 面试精华

原文:一文搞定 UDP 和 TCP 高频面试题! - 知乎1、UDP 和 TCP 的特点与区别用户数据报协议 UDP(User Datagram Protocol)是无连接的,尽最大可能交付,没有拥塞控制,面向报文(对于应用程序传下来的报文不合并也不拆分,只是添加 UDP 首部),支持一对一、一对多、多对一和多对多的交互通信。传输控制协议 TCP(Transmission Control Protocol)是面向连接的,提供可靠交付,有流量控制,拥塞控制,提供全双工通信,面向字节流(把应用层传下来的报文看成

2022-08-22 15:58:40 459

原创 跨平台宏定义

else# endif#else# else# endif#endif。

2022-08-17 11:01:33 733

原创 1、构造函数、析构函数可以写成虚函数么?

1、在多态当中,基类的方法被定义成 虚函数,才可以通过基类指针动态调用派生类的方法,同理当我们delete 基类指针,如果基类析构函数不是虚函数,就无法动态调用到派生类的析构函数,导致派生类的对象无法析构,造成内存泄漏。反之,基类析构函数被定义成 虚函数的时候,delete基类指针时,会先 析构派生类对象,再 析构基类对象。所以构造函数不能是虚函数。1、因为创建一个对象时要确定对象的类型,而虚函数是在运行时确定其类型的,而在构造一个对象时,由于对象还未创建成功,编译器无法知道对象的实际类型。...

2022-08-17 09:38:36 539

原创 一张图解释UML类图关系

uml类图剖析

2022-07-25 19:53:43 116

转载 node js 怎么调用c++ ?

在 NodeJS 中,和其他语言编写的代码通信主要有两种方案:在对这两种方式进行比较后,发现这两种方式各有优劣。首先,AddOn 技术比较通用,它可以使用 C++代码来拓展 Node 的行为,很多库都是使用这种方式来完成一些比较底层操作(比如和操作系统的一些通信)的。但是它写起来比较麻烦,要编写一个 C++项目,还要按照 NodeJS 的规范 export 相应的函数,而且每次安装的时候都需要进行编译(以适应本地 Node 的版本)。如果只是调用一个 DLL,那就还需要在项目里重新包装一遍 DLL 的接口。

2022-07-01 15:24:25 3622 1

转载 c语言实现跨平台dns域名解析

C语言写的域名解析函数api,跨平台支持windows/linux/Mac OS/Android/iOS:

2022-06-20 20:32:17 740

原创 js调用c++实现的dll, Error: Dynamic Linking Error: Win32 error 126 问题原因

js调用c++实现的dll, Error: Dynamic Linking Error: Win32 error 126 问题原因

2022-06-17 16:54:31 2850 1

原创 python 翻译word文档

原文地址:用 Python 写的文档批量翻译工具,效果竟然超越付费软件?_平静愉悦的博客-CSDN博客接入与错误码文档见百度开放平台:百度翻译开放平台from docx import Documentfrom docx.oxml.ns import qnimport requestsimport randomimport jsonfrom hashlib import md5import timeimport globimport osdef make_md5(s,.

2022-05-26 17:47:07 395

转载 ffmpeg 自定义IO与Seek

ffmpeg 自定义IO与Seek

2022-05-10 13:06:20 629

原创 windows 开发注意事项

​​​​​​1. VisualStudio2019 DLL生成并使用教程(C++)最详细Demo教程_ytouch-CSDN博客_vs2019 生成dll2.关于Dll中导出string的问题 - 张云临 - 博客园

2022-02-23 19:43:09 230

原创 ass、srt字幕颜色设置修改

[字幕]ASS/SRT字幕修改字体、大小、颜色的方法_雁山鳌水_新浪博客

2022-01-24 20:40:49 5046

原创 ffmpeg指定位置添加文字图片水印

FFmpeg命令详解_Android&Java&C-CSDN博客​​​​​​利用ffmpeg实现添加图片水印和文字水印,添加多个水印。代码和命令实现及中文水印乱码_浪漫老狼的博客-CSDN博客_ffmpeg添加文字水印1.同时添加图片背景与双语字幕sprintf(filter_des,"movie=%s[wm];[in][wm]overlay=%d:main_h-overlay_h-%d,subtitles=filename=%s:force_style='Fontname=%s

2021-12-24 17:45:16 2477 3

转载 ffmpeg 添加水印

ffmpeg中文水印乱码两种原因1.字符编码格式原因,中文必须是utf8编码格式的(我遇到的问题,在vs2013上写的中文,已做编码格式转码,放到centos7.2上编译运行也会出现中文乱码的问题,在Linux上把中文水印重新输入一遍就OK了)2.字体文件fontfile原因,最好去C:\Windows\Fonts目录下去找,比如说宋体,黑体这些是不会乱码的1.ffmpeg命令添加视频水印ffmpeg –i input.flv -acodec copy-vcodec copy -vf "

2021-12-23 11:04:43 5505

原创 ffmpeg支持的字体颜色种类

FFmpeg Utilities Documentation‘AliceBlue’0xF0F8FF‘AntiqueWhite’0xFAEBD7‘Aqua’0x00FFFF‘Aquamarine’0x7FFFD4‘Azure’0xF0FFFF‘Beige’0xF5F5DC‘Bisque’0xFFE4C4‘Black’0x000000‘BlanchedAlmond’0xFFEBCD‘Blue’0x0000FF‘BlueViole

2021-12-22 20:42:30 953

原创 ass字幕格式解析

[V4+ Styles]Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV,EncodingSty.

2021-12-22 20:22:42 12681

原创 日常开发笔记

1.字体获取地址字体量贩 - 字体下载网站,中文字体下载,英文字体下载,字体网站,字体库下载

2021-12-22 16:07:00 50

原创 ffmpeg 视频字幕添加相关三方库

libx264下载地址:x264, the best H.264/AVC encoder - VideoLANIndex of /pub/videolan/x264/snapshots/libfreetype下载地址:The FreeType Projectfribidi下载地址:https://github.com/fribidi/fribidi/releases/download/v1.0.11/fribidi-1.0.11.tar.xzfontco.

2021-12-10 11:32:28 1920

原创 ffmpeg 常用小tip

1.代码设置日志输出等级av_log_set_level(AV_LOG_INFO);

2021-11-06 15:40:29 62

原创 string对象的内存释放

1.erase 函数只清空数据,不会释放数据所占用的内存2.想要人为释放string对象占用的内存可以使用c++11提供shrink_to_fit的:

2021-10-29 11:16:28 1650

原创 ffmpeg同时添加视频字幕与背景,自定义字体,大小,位置

ffmpeg.exe -i sr.mp4 -c:v libx264 -c:a copy -vf "movie=background.png[wm];[i][wm]overlay=main_w-overlay_w-240:main_h-overlay_h-40,subtitles=zimu.srt:force_style='Fontname=黑体,Fontsize=14,Alignment=0,MarginL=60,MarginV=15'" -b:v 9997K output.mp4...

2021-10-08 18:30:00 3563 1

原创 ffmpeg编译命令

./configure --prefix=/usr/local/ffmpeg --pkg-config-flags="--static" --enable-gpl --enable-small --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-filter=delogo --enable-debug --disable-optimizations --enable-libmp3lame --disable-asm --enabl..

2021-09-26 17:32:02 1056

原创 flac文件格式

Flac中所有数值都是整形,大端模式,除非特别指出,否则数值都是unsigned的。一些概述:Flac比特流以“fLaC”开始,接着是必须的metadata块(STREAMINFO),然后是其他可选的metadata块,接着是音频帧。Flac做多可以支持到128类metadata,已经定义的包括下面几种:A。STREAMINFO:包含整个比特流的一些信息,如采样率、声道数、采样总数等。他一定是第一个metadata而且必须有。之后可以接其他metadata,这些metadata可以不用识别直

2021-09-24 17:15:08 316

原创 m4a文件格式分析

M4A是一种用于压缩MPEG-4编码文件的扩展名。MPEG-4官方扩展名是MP4格式,它包含了音频文件及视频文件。而MP4文件中标准的音频格式无疑就是M4A了。其实M4A格式以前并不知名,直到2007年苹果公司首次用M4A与AAC、ALAC等作为iTunes及iPod歌曲收录格式,它才逐渐使用广泛起来。M4a不受版权保护。文件格式:由很多box组成存储形式:box length(4bit 大端格式) + box type(4 bit) + box content (box lengt...

2021-09-23 19:27:53 6624

转载 MP4文件格式

mp4封装格式各box类型讲解及IBP帧计算 - 靑い空゛ - 博客园

2021-09-22 14:53:07 67

文件代码比对工具WinMerge

文件、代码比对工具

2021-09-17

ffmpeg源码解析.rar

对ffmpeg源码进行解读分析

2021-09-10

MediaInfo.rar

mediaInfo 音视频信息查看工具

2021-09-09

Audacity.rar

音频文件分析工具

2021-09-09

空空如也

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

TA关注的人

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