豆奶直播换上了新的自制的 FLV 分离器,没错,我又造了一个新轮子。(原来是用的 FFMpeg)
斗鱼的高清直播流是直接 HTTP 流式传输 FLV,所以就简单的用 Windows.Web.Http.HttpClient
(MSDN) 来下载数据了。于是新问题是我突然发现 App 一直在向硬盘写入文件,用资源管理器一看原来是 WinINet 正在把 FLV 文件缓存到硬盘里。
这个行为当然是不需要的,于是稍微研究了一下该如何禁用。.NET Framework 时代的 WebRequest.CachePolicy
(MSDN) 是不存在的,需要改用以下的代码。
1 | var filter = new HttpBaseProtocolFilter(); |
这个 HttpBaseProtocolFilter
(MSDN) 实现了 IFilter
(MSDN) 接口,这是 Windows Runtime 新的 HttpClient
所用的过滤器,和 PCL 里的 System.Net.Http.HttpClientHandler
(MSDN) 差不多功能吧。
最后我写 blog 一直用的 Visual Studio,结果 Microsoft 的 Web Essentials 扩展提供的 Markdown 高亮真是各种瞎,遇到 < 也不能正确识别,链接的 [] 里再放 () 也不能。
然后 Markdown 遇到链接里有 () 的就直接选择死亡了,也不能强制不转义 Markdown 语法,这谁设计的破玩意。Hexo 还说支持 Github 版本的代码块,我在 ```
后面放上 C# 标识,别说高亮了连行号都爆炸了。
今天的水就到这里。