直播流缓存的一些事
1ffmpeg -i "https://cn-hnld-ct-01-21.bilivideo.com/live-bvc/536553/live_2124647716_1414766_bluray/index.m3u8?expires=1759252762&len=0&oi=2085476355&pt=h5&qn=10000&trid=1007606c082fc14ab58648aff49d6268dc03&bmt=1&sigparams=cdn,expires,len,oi,pt,qn,trid,bmt&cdn=cn-gotcha01&sign=2416df1332c509e8649435d9512e4465&site=023962dd910109d4c54da396f31556f0&free_type=0&mid=475210&sche=ban&bvchls=1&sid=cn-hnld-ct-01-21&chash=0&sg=lr&trace=8388633&isp=ct&rg=East&pv=Shanghai&deploy_env=prod&score=42&p2p_type=-1&sl=2&strategy_types=1&codec=0&strategy_version=latest&hdr_type=0&source=puv3_onetier&long_ab_id=45&strategy_ids=11&hot_cdn=57345&suffix=bluray&origin_bitrate=8128&long_ab_flag=live_default_longitudinal&sk=11e6e03140d4fe707653c968459991d32b386f4c30439c091581a0d0389f9eb4&media_type=0&long_ab_flag_value=test&pp=rtmp&info_source=origin&flvsk=7b9ca197a822eebb7933bf2a49b49d0f2b5784eba95887cea6a1ec4d52e303b6&vd=nc&zoneid_l=151355393&sid_l=live_2124647716_1414766_bluray&src=puv3&order=1" \ 2 -hls*list_size 0 \ 3 -hls_time 5 \ 4 -hls_flags append_list+program_date_time \ 5 -hls_segment_filename "cache*%Y%m%d*%H%M%S*%03d.ts" \ 6 -strftime 1 \ 7 -c copy \ 8 playlist.m3u8
数据系统事务的简单探讨
前言 为了降低应用程序开发人员的心智负担,数据系统提供事务这一机制来简化各种各样的常见问题。事务将应用程序的多个读写操作捆绑在一起,称为一个逻辑操作单元。 ...
有关数据系统的一些简要笔记
前言 大多数应用程序是通过一层一层叠加数据模型来构建的,如果某一层使用到了大量的数据,那么就需要一个数据系统来进行管理。 怎么理解上面这句话呢,在一整个应用系统中,一条数据可能由不同的数据模型来表示,例如: ...
Cursor IDE 的简单体验
在最近刷到了挺多推销 Cursor IDE 的视频和文章,大多都将其效果描述得十分夸张。然而自己是 GitHub Copilot 内测时期就开始使用的用户了,因此很想将两者进行对比。在此记录一下对于 Cursor IDE 的简单体验。 ...
GetSaveFileName 引发的工作目录变更
近日在处理 C++ Win32 程序异常时,采用 Minidump 来保存程序崩溃时的栈记录,生成的 dmp 文件保存在配置数据目录下。 如果程序启动时检查发现存在 dmp 文件,则弹出提示框让用户选择路径来保存该文件,主要逻辑如下所示: ...
从新硬盘检测到硬盘接口的发展
在工作中经常需要为虚拟机新增磁盘设备,为了在不 reboot 的情况下使用这些新磁盘,需要对新磁盘进行检测。而检测的方法是如下命令(方法来自 Stack Exchange): ...
为 Go 添加三目运算符
最近在用 Go 刷算法题的过程中,切实体验到了三目运算缺失的痛苦。正好之前在探讨 Go 中 init 的处理时,了解了一些 Go 编译器的具体工作流程,因此有能力在其基础上进行修改了,于是便想着为 Go 添加三目运算。 ...
分布式系统设计思路总览
CAP 定理 CAP 原则又称 CAP 定理,指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。 ...
从 init 函数的顺序问题到 Go 编译器
本文中引用的源码均标注了 Golang 源码仓库链接,branch 为 release-branch.go1.21(本文在编写时 Go 1.21 还未正式发布,正式版可能会有少量变化)。 ...
Qt OpenglWindow 异形窗口的实现
在学习熟悉 CubismSDK 的时候,曾给轴伊Joi制作过一个简单的 Live2D 桌面宠物;由于是在官方样例的基础上进行的修改,因此程序主题通过 glew + glfw 来进行实现。由于桌面宠物的特殊性(需要尽可能减少对桌面操作的影响),可以说是必须实现异形窗口。这个异形窗口与一般的需求还不太一样:通常异形窗口是静态的,仅以一张图片作为底图,有很多种方法可以实现,其中一种便是用蒙版(Mask)来实现,但这种方式在桌面宠物这种场景下显得有点尴尬。 ...