- 博客(450)
- 资源 (15)
- 收藏
- 关注
原创 上电时序(Power Sequencing)
CPU 这类芯片,得先给它的 “核心部分”(核心电压 Vcore)通电,等核心稳定了,再给它的 “接口部分”(IO 电压 Vio)通电 —— 顺序不能乱.顺序错的危害:要是先给接口通电、再给核心通,会出现 “电流倒着流” 的情况,很可能把芯片内部的电路烧坏(相当于穿外套时硬塞内衣,把衣服扯破了)怎么解决:用 “延时电路” 或者软件控制电源芯片的启动时间,让核心电压先 “开机”,等一小会儿再让 IO 电压 “开机”,保证顺序对。
2026-01-21 08:15:00
21
原创 没有子弹(满仓)是种什么体验和是什么风险
没有子弹的本质,是放弃了仓位管理的主动权—— 把所有资金押注在当前持仓上,既没法应对市场的波动,也没法抓住新的机会,相当于把自己暴露在 “不可控” 的风险里。
2026-01-19 23:02:37
290
原创 mp4track轨道存放数据吗
MP4里的 track 就是给不同类型的数据分的 “专属通道”—— 比如一个 视频track、一个 音频track,如果有字幕,还会有 字幕track。moov 是 **“指挥中心”**:里面的每个 trak 都是一条轨道的 “说明书”,只写 “数据在哪、是什么格式”,不存实际音视频数据。│ │ └─ stbl —— 数据索引表:视频帧在 mdat 里的位置、时间戳(比如第1帧在 mdat 第1000字节)解码器 = 取东西的人,按 track 的目录去 mdat 里拿音视频数据,拼成能看的视频。
2026-01-16 08:15:00
14
原创 live555 的发展历史
live555 诞生于 2000 年前后,核心解决了 RTSP/RTP 协议轻量、跨平台开源实现的行业痛点;四大核心模块定型后,成为嵌入式流媒体设备(尤其是 IP 摄像头)的行业标配;近年因适配 C++20 等新标准出现兼容性问题,但 “轻量、稳定、无依赖” 的特性仍让它不可替代。
2026-01-15 23:49:30
515
原创 live555 sample编译使用
/genMakefiles linux # 针对Linux系统,其他系统可替换为macosx/win32等。编译源码(自动生成sample可执行文件)# 编译(-j后接CPU核心数,加快编译)# 执行配置脚本(自动识别系统环境)
2026-01-15 23:38:58
37
原创 live555 sample基本解读
mediaServer/ RTSP服务器的示例(推送本地文件为RTSP流) live555MediaServer。主动拉取远程 RTSP 流(比如上面的 live555MediaServer 推送的流),解析 RTP 数据包并输出(可扩展为播放)。运行后,终端会输出 RTSP 交互过程(OPTIONS/SETUP/PLAY 指令),并接收 RTP 数据包的信息。./testRTSPClient rtsp://你的IP:554/test.h264。# 进入mediaServer目录。
2026-01-15 23:37:16
32
原创 融资保证金是什么意思
融资保证金比例:更常用的概念,指保证金与融资交易金额的比例,计算公式为:监管规定:2026 年 1 月 19 日起,沪深北交易所将融资保证金最低比例从80% 上调至 100%(仅适用于新开融资合约)
2026-01-14 22:59:50
391
原创 融资融券是什么意思
融资融券,简称,是证券公司给符合条件的投资者提供的,简单说就是和,本质是加杠杆的炒股方式,核心分为和两部分。一、 融资:借钱买涨,赚股价上涨的差价。
2026-01-14 21:47:36
1211
原创 MP4WriteSample参数解读
I帧必须填true,否则播放器无法拖进度条(seek 失败),P 帧填true会导致播放器识别错误。音频晚于视频→填正数(比如晚 200ms、timeScale=48000→48000×0.2=9600。视频:I帧(IDR帧)填true,P/B帧填flase;timeScale=90000、25 帧→3600。48000 采样率、1024 采样点→1024。音频:通常填true,音频无关键帧概率.MP4WriteSample参数解读。音频早于视频→填负数。
2026-01-14 08:15:00
16
原创 MP4AddH264VideoTrack参数解读
uint32_t timeScale, // 参数2:视频轨道时间刻度。uint16_t width, // 参数4:视频宽度(像素)uint16_t height, // 参数5:视频高度(像素)uint8_t AVCProfileIndication, // 参数6:H264编码档次。uint8_t profile_compat, // 参数7:档次兼容性。
2026-01-13 08:15:00
17
原创 使用日志输出调试信息(基于src/log.cpp)
std::cout << "已创建: " << filename << std::endl;std::cerr << "创建文件失败" << std::endl;已创建: empty.mp4。
2026-01-12 08:15:00
15
原创 获取AAC轨道时长和文件总时长
std::cout << "AAC-MP4总时长: " << durationSec << " 秒" << std::endl;std::cout << "AAC轨道时长: " << trackDurSec << " 秒" << std::endl;// 获取文件总时长(微秒)// 获取AAC轨道时长。AAC-MP4总时长: 15 秒。AAC轨道时长: 15 秒。
2026-01-12 08:15:00
22
原创 删除 MP4 文件中的轨道
std::cout << "已删除轨道 " << trackId << std::endl;std::cerr << "删除轨道失败" << std::endl;//// 假设删除第1个轨道。
2026-01-11 08:15:00
16
原创 H.264 码率控制模式CBR、VBR、AVBR
AVBR 综合了 CBR 和 VBR 的优势,它会自动检测当前编码的图像画面是静止的还是运动的,若是运动的画面,AVBR 模式会提高码率来改善当前的图像质量,若是静止的画面,AVBR 会主动降低码率来节省带宽。是 CBR 与 VBR 的折中:设定一个 “平均码率”,短期(如几秒钟)内码率可像 VBR 一样波动(保复杂画面的画质),但长期(如 1 小时)码率会稳定在设定的平均值(控存储 / 带宽)。对硬件性能要求低的场景 ——AVBR 的码率控制逻辑更复杂,需要编码器有较强的计算能力。
2026-01-10 12:01:30
59
原创 MP4 Track 根据TimeScale 算文件时长
std::cout << "轨道总时长: " << totalSeconds << " 秒" << std::endl;std::cout << "轨道总时长: " << totalSeconds << " 秒" << std::endl;轨道总时长: 14.9667 秒。轨道总时长: 15.082 秒。
2026-01-08 08:15:00
22
原创 MP4SetTimeScale 时间刻度tick相关概念解读
保证匀速播放:比如视频帧率是 25 帧 / 秒(每秒播放 25 帧),时间尺度 90000,那么每帧就对应 90000÷25=3600 个滴答,播放器就知道 “每攒够 3600 个滴答,就播放一帧”,不会快放也不会慢放;音视频同步:比如音频轨道时间尺度 44100,视频轨道 90000,播放器通过两个时间尺度的换算,能保证 “画面和声音对齐”,不会出现 “口型对不上” 的情况;作用:每个轨道(音频 / 视频)可以有自己的时间尺度(也可以继承全局的),用来精准计算该轨道的「帧时长」「采样间隔」。
2026-01-08 08:00:00
26
原创 全局(文件)和局部(轨道)设置时间尺度
define MP4_MPEG4_AUDIO_TYPE 0x40 // AAC(mp4a)对应数值(旧版本通用)// 参数6:编码类型(hvc1对应MP4_VIDEO_H265_TYPE,uint8_t类型)// 给这个视频轨道单独设时间尺度(和上面AddVideoTrack的第一个参数一致,双重保障)// 参数3:帧时长(3600 = 90000/25帧,25帧/秒是常用帧率)// 1. 给视频轨道设时间尺度:90000(视频专用)// 2. 音频编码类型数值(mp4a/AAC对应数值)
2026-01-07 08:15:00
19
原创 静态库只连接不使用会变大吗
函数级别剔除:需开启 LTO 优化:无论是 GCC/Clang 的 -flto,还是 MSVC 的 /GL+/LTCG,都能实现函数级别的无用代码剔除,即使同一.o文件中,未被调用的函数也会被剔除,进一步减小体积。与动态库的区别:动态库(.so/.dll)无论是否调用,可执行文件都不会嵌入动态库内容,仅记录动态库的依赖路径,因此可执行文件体积始终不受动态库链接的影响(运行时才加载动态库)。链接器的核心工作是:按需提取、打包仅被引用的符号(函数 / 变量)对应的目标文件,而非将整个静态库完整嵌入可执行文件。
2026-01-07 08:15:00
21
原创 创建空的 MP4 文件
std::cout << "已创建: " << filename << std::endl;std::cerr << "创建文件失败" << std::endl;
2026-01-07 08:15:00
19
原创 MP4AddAudioTrack和MP4SetTimeScale 参数解读
libfdk_aac 编码音频时,设置了采样率为 44100,那么封装到MP4时,MP4AddAudioTrack的第一个参数就必须对应 44100,否则播放器会播放出 “杂音”“快放”“慢放” 的效果。明确性更强:别人看你的代码时,能直接看到 “这个音频轨道的时间尺度是 44100”,不用去查 MP4AddAudioTrack 的参数,代码更易读;时间尺度 44100 → 相当于 “快递站的计时标准:每天按 44100 件商品的速度发货”(播放器每秒按 44100 个滴答的速度播放);
2026-01-06 08:15:00
40
原创 uint32_t和uint64_t 用printf怎么格式化打印
32 位无符号整数,单片机里unsigned int基本都是 32 位(STM32/ESP32),51 单片机是 16 位但uint32_t会适配成unsigned long,用%lu更稳。64 位无符号整数,几乎所有单片机编译器都认%llu。
2026-01-06 06:00:00
30
海思媒体平台按键驱动源代码
2018-04-04
rk平台spi通信参考资料
2022-04-29
RK平台 usb硬件测试参考资料
2022-04-29
rk平台gpio调试参考资料
2022-04-29
ARM板子设备树有关的资料.pdf
2019-11-14
BasicAudioDevice-10.pdf
2019-11-14
GD32F10x_User_Manual_CN_V2.0.pdf
2018-04-05
基于Rockchip平台产品开发产品完成后,如何制作工厂烧录镜像的参考方法.
2022-04-29
linux USB Video Class 参考学习资料
2023-01-06
CS8416数字音频接收器数据手册
2022-05-04
A7130无线通信模块数据手册
2022-05-04
arm64位平台下gcc编译器
2022-04-29
rk平台物理内存调试参考资料
2022-04-29
linux平台spi通信测试C语言demo程序
2022-04-29
实用C语言EQ特效信号处理
2019-12-21
高中数学矩阵与变换.pdf
2020-05-24
好用的usb分析仪软件
2019-12-21
MP4V2 开源代码支持h265
2026-01-10
xshell工具 shell终端工具 shell 免费
2025-07-07
嵌入式 linuxEMMC/SD卡 MTP实现
2025-04-25
h264视频编码码流分析工具
2025-03-04
raw看图软件和yuv格式看图软件
2024-06-24
arm64平台 外设寄存器读写工具 内存测试小工具 系统调用工具 存储flash操作工具 音频录制工具
2024-06-04
CEA 861-E 视频格式和HDMI手册
2024-03-18
蓝牙抓包工具, window抓包工具
2023-08-29
makefile 学习参考资料
2023-08-20
gdb调试器基本功能ppt学习文档
2023-07-23
音视频同步ITU-R BT.1359标准 音视频延时要求
2023-07-15
emmc工作异常 如下报错 怎么解决
2025-04-29
Invalid FSINFO signature: 0x00000000啥问题
2025-04-28
IPC电池产品 低功耗优化方向和具体操作
2025-04-27
flash 变成只读了
2025-03-24
Altium Designer6.9 License怎么添加和怎么破解
2024-11-29
dbus-launch
2023-12-04
gdb调试linux报错
2023-10-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅