自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 wireshark 4.4.7 从UDP包中dump TS流方法

6.选中内容,然后点击Export->Payload。4.选择导航栏上,电话->RTP->RTP流分析。8. 用播放器播放,播放正常,声音,视频都OK。3.弹出窗口"当前"选择RTP,点击"确认"2. 右键任意报文选择decode as。5.弹出窗口选择Play Streams。1. 首先过滤出音视频UDP报文。7.保存文件名为 *.ts。

2025-07-14 13:41:53 247

原创 【音视频学习-6 ffmpeg 内存刨析】

来对A的AVBuffer指向的内存添加引用计数,对应的AVBuffer对象的引用计数会反复增加,但是反复使用av_packet_unref却不会反复减少。//注:通过上面 av_packet_ref 和 av_packet_unref 可判断,多次对同一个pkt进行 av_packet_ref 会导致实际内存空间的引用计数异常。

2024-11-07 21:10:32 712

原创 【音视频学习-5 ffmpeg 框架学习】

AVUtil:核心工具库,其他模块都会依赖该库AVFormat文件格式和协议库,该模块是最重要的模块之一,封装了Protocol层和Demuxer (解复用器/复用器) Muxer层,使得协议和格式对于开发者来说是透明的。AVCodec编解码库,封装了Codec层,但是有一些Codec是具备自己的License的,FFmpeg是不会默认添加像libx264、FDK-AAC等库的AVFilter。

2024-06-01 13:50:46 1566

原创 【音视频学习-4 ffmpeg命令熟悉】

保留编码格式:ffmpeg -i test.mp4 -vcodec copy -an test_copy.h264。ffmpeg -i 复仇者联盟3.mp4 -ss 00:05:00 -t 10 -codec copy 2.mp4。ffmpeg -i 沙海02.mp4 -ss 00:05:00 -t 10 -codec copy 1.mp4。ffmpeg -i 红海行动.mp4 -ss 00:05:00 -t 10 -codec copy 3.mp4。需要使用ffmpeg。

2024-06-01 13:49:16 946

原创 音视频学习-3 ffmpeg命令初识】

D..... = 支持解码器 .E.... = 支持编码器 ..V... = 支持音频编解码器 ..A... = 支持视频编解码器 ..S... = 支持字幕的编解码器 ...I.. = 内部帧编解码器,可以对每一帧独立的编解码 ....L. = 有损的压缩 .....S = 无损压缩。指定学习链接:https://xxetb.xetslk.com/s/1xYq7U。该命令是将一个1080P的MP4文件转为720p的flv格式的文件。每个格式输出中: D:支持解复用 E:支持复用。

2024-06-01 13:47:10 893

原创 【音视频学习-2 ffplay命令了解】

测试题https://xxetb.xetslk.com/s/1xYq7U

2024-06-01 13:44:52 1735

原创 【音视频学习-1】

视音频在网络上传播的时候,常常采用各种流媒体协议,例如HTTP,RTMP,或是MMS等等。:波幅在x轴描绘波形使用的精密度,根据Nyguist采样定律,要从采样中完全恢复原始信号波形,采样频率必须至少是信号中最高频率的两倍,人耳能听到的频率在[20H —20Khz]使用解复用器从封装格式的媒体数据中解封装,即将音频,视频,字幕分离开,获取到音视频频压缩数据(AAC,MP3,AC-3, H.264,MPEG2,VC-1等),例如WAV,PCM,TTA,FLAC,AU,APE,TAK,WavPack(WV)

2024-06-01 13:41:22 627

原创 工作日志—触控—HID

wirashake USB抓包查看发现HID消息电脑端已经正常收到了,但是设备插上去后GET_REPORT 和SET_REPORT没有我的USB设备没有对应的消息回复,交给同事修改系统代码支持GET_REPORT 和SET_REPORT后,反控正常生效。工作需求用软件模拟HID消息,实现通过USB接受远程坐标来远程控制电脑。板子HID节点已经配好。报告描述符也已经设计好了。

2024-05-09 19:28:49 254 1

原创 工作日志—miracast—UIBC—浅析反控HID报文

这部分同理,因为只有Report Count (1),Report Size (3) 但是没有Usage 描述,则代表是一个无用值,用来补位数的。题外话:有些HID报告描述符是不单单用于描述一个功能:那不同的功能报告肯定不一样,如何发送报告时电脑如何区分使用的报告是报告描述符中那部分呢?这部分我就不描述了,可以用chatgpt去查,Rel:代表输入是相对坐标,所以我上面正负值推测是对的。总结这部分代表:5个按钮每个占一位,每个按钮的值分为0-1 ,假设 0为松开,1为按下。

2024-05-09 19:22:30 1874 2

原创 工作日志—miracast—UIBC—华为反控失效问题

这里大致猜到原因了,由于miracast是通过P2P建立连接的,我们的P2P设备是做GO的,这个设备通过wpa_supplicant建立GO时是虚拟一个网口的。该网口的mac地址和wpa_supplicant绑定的网口mac地址不一致。此时获取到的是wpa_supplicant绑定的网口的mac地址。而建立TCP连接时使用的是ip绑定的网口,即生成的虚拟网口的mac地址。第三步,查看华为手机日志:过滤UIBC,发现有一条日志表示,mac比对失败,华为手机断开连接。

2024-05-09 19:16:00 651 1

原创 C++ 左值 右值剖析学习

我理解就是 std::move(a) 告诉编译器以后在对a 重新设置其指定的内存空间外(即重新赋值)不在使用a,同时将该内存空间的独特标记改为c了。实际上我认为和左值引用一样的底层原理,只是在编译器上做出了限制,类似强制类型转换一样。我是不是可以理解左值为对一个内存空间的独特标记。左值引用即将该内存空间的独特标记,同样的付给另一个变量。a : 即是对该内存空间的一个标记,一个独特的二进制数据,表示该分配的内存空间。我理解计算机是先读取 int 类型,从内存中取出一个int大小的内存空间。

2023-07-23 22:23:20 90

原创 C++ 虚函数及继承学习

【代码】C++ 虚函数及继承学习。

2023-07-19 21:28:45 109

原创 为什么字符指针会输出所有的字符?

等输出指针只会以对应形式输出该地址对应的值,而不会继续输出之后的值。输出字符串时之所以会输出所有字符:是因为。为从指针地址开始按照字符输出,直到遇。

2023-07-18 19:49:17 362 1

原创 android 引用多个so ,修改so代码,多次修改不生效的问题

经检查发现,可能是符号链接相同导致的问题,另一个so库在cmake打包时添加了与我修改的so相同的JNI接口代码,导致可能符号链接相同,导致接口走到其他的so了。最近遇到了修改so的JNI接口时,修改不生效,但是编译都正常的问题。修改JNI接口名或者其他so在打包时去掉相同JNI接口 就可以了。

2023-03-29 20:30:35 369

空空如也

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

TA关注的人

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