- 博客(209)
- 收藏
- 关注
原创 C++输入/输出
2.getline会读取空格,遇到换行符和eof结束,但是不读取换行符。1.getline之前要是有换行符,需用getchar()接受完。一.获取输入的一行整数。二.关于getline。3.可以自定义结束符。
2023-07-03 09:45:23
189
原创 解决jsoncpp ubuntu编译问题 , 引发的RTPSession血案
直接编译之后链接发现找不到 Json::Value::asString() const。很奇怪,发现是因为 libstdc++ 双ABI 不一致导致,GCC5 以后。而前一步没有,就说明 “程序在新 ABI、库在旧 ABI”。引入了新 ABI(符号名里会多出。查看库里符号(静态库同理,对应。
2025-06-11 22:39:29
415
原创 ubuntu20.04编译 pjproject-2.7.1
分析:需要重新编译并且带上 -fPIE,-fPIE可以使生成的可执行文件在任意内存都可以运行。解决方法:加上了这两个选项。
2025-05-29 15:33:21
532
原创 FFmpeg播放器
1.音频去同步视频时,视频的时钟和当前时间戳相关,暂停播放再continue后,视频时钟跳过了暂停的pts,但是音频时钟没有,导致continue开始时音频时钟不对。
2025-05-18 15:20:35
134
原创 六.FFmpeg对mp4文件操作(ubuntu)
问题解决:ADTS头的采样率没有设置正确,av_dump_format 获取视频信息的时候可以看到aac的详细信息。1.代码抽取aac没有声音,使用ffmpeg命令行也无法转换为wav。二.抽取h264数据。
2025-04-03 22:20:02
527
原创 五.ubuntu20.04 - ffmpeg推拉流以及Nginx、SRS本地部署
1.编译ffmpeg,参考这位博主的,编译选项有的enable找不到的不需要的可以直接删除,但是像sdl(包含ffplay)、h264、h265这些需要提前下载好,里面都有下载指令。(1)ffmpeg将mp4视频转换为flv。1.Nginx / SRS 服务启动。(2)将flv推送到Nginx服务器。2.下载并配置编译Nginx。二.使用ffmpeg推拉流吧。2.使用ffplay推流。3.使用ffplay拉流。一.本地部署nginx。
2025-03-30 23:03:34
477
原创 大端小端和位运算
大端模式:按照高字节存低地址,低字节存高地址,先访问高地址。小端字节序: 按照低字节存低地址,高字节存高地址,先访问低地址。1.如何判断平台是小端还是大端?分析:一个char字符一个字节,一个short 两个字节;因为我们已经给出s[2],并且已经确定了这两个字节在的存储顺序就是:相对的地址: (低地址) 0x00 0x01 0x02 0x03 高地址字节序 【0000 0000】【0000 0001】
2025-03-23 15:31:24
341
原创 四.ffmpeg对yuv数据进行h264编码
我检查了编码器的配置,发现并没有问题,那就是编码的过程中,最后是第二天早上仔细看了一下,原来我编码的代码里面第一行打印了frame的参数,但是最后冲刷编码器的时候,传入的是NULL,导致最后冲刷解码器崩溃了,不过并没有报错,只是停止了编码并卡顿了一下,这是我在windows上的情况,已解决。(2)yuv420p的数据格式:四个y分量和一个u、一个v分量共占6个字节,同上,6/4=1.5,所以每个yuv420p像素占的字节数为1.5,得到每个yuv420p帧的字节数为:w*h*1.5。
2025-03-21 08:24:34
540
原创 三.ffmpeg对yuv的操作
注意:打开使用设备时要注意自己摄像头支持的参数,我之前设置的1280x720 30fps yuyv422和1280x720 30fps yuv420p都不支持设置pixel_format,所以我没写pixel_format,导致1280x720 30fps默认使用vcodec=mjpeg编码器来进行编码。1.通过av_read_frame获取到的视频数据不是yuv420p的原始数据,而是通过mjpeg编码的yuv422p的数据。因为u和v分量的值是相对于y分量的,没有y分量它们都无法提供完整的颜色信息。
2025-03-17 07:58:49
403
原创 ubuntu 和 RV1126 交叉编译Mosqutiio-1.6.9
那我就不find_package了,我把mosquitto-1.6.9的源码中的cmakelist,最上层的cmakelist中自己设置OPENSSL_INCLUDE_DIR和OPENSSL_LIBRARY,因为/src和/lib目录下cmakelist构建使用了openssl库中的ssl和crypto,所以这里我做一个分解,写一个头文件地址和两个库文件地址,直接找到库文件。我用的是Mosquitto-1.6.9的源码,地址。我都想不到怎么还能编译不过?
2025-03-11 17:47:23
705
原创 Linux下读取串口,发现0x11丢失的问题
这两天使用串口进行模拟收发二进制数据,其中有个指令字符需要传0x11,但是发现读取的时候这个数据字符消失了,刚开始以为是数据转换或者赋值的问题,查了大半天,问gpt也说的比较宽泛(可能是我没直接问0x11),后面在结尾的文章里找到了答案。总结一下就是串口通信中如果没把串口配置为原始模式,系统就会自动把一些特殊字符作为控制字符转换掉(比如0x0d 、0x11、0x13)。
2025-03-06 14:10:04
518
原创 server记录
连接,解析,将监听套接字的事件类型设置为边缘触发,添加 EPOLLOUT 事件(表示当前套接字写缓冲区有空闲空间)问题:get之后没有响应原因:content-length设置不正确消息体里面需要加 \r\n。
2024-01-18 11:23:23
423
原创 Mysql 基本操作
查看 mysql 服务器正在使用的端口号。查看当前连接的数据库所在的端口号。查看 mysql 运行状态。运行 mysql 服务。关闭 mysql 服务。
2024-01-04 11:58:11
502
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
2