2018-05-24 Piasy
分析完应用上层的视频采集、渲染、编码之后,原本我是打算把完整的 WebRTC 带到 Flutter 的世界里,形成 FlutterRTC 的,但后来仔细想想,这件事没多大意思,做出来了也不能产生多大价值,所以我决定调头深入底层。 本篇算是真正深入底层的第一篇,让我们深究一下之前没有深究的话题:视频数据 native 层之旅,以及 WebRTC 对视频数据的处理。最近对 iOS 上层的分析也不算白费,毕竟在 iOS 平台深入底层,无论是编译还是调试都更方便。 继续阅读 »
2017-10-17 ruki
xmake-vscode插件深度集成了xmake和vscode,提供方便快速的跨平台c/c++构建。 此版本为第一个正式版本,相比之前发布的体验版,新增了两大新特性: 快速宏记录和回放 编译错误解析和问题列表 注:使用此插件,需要先安装xmake,更多关于xmake的使用说明,请阅读:文档手册,项目源码:Github。 关于xmake-vscode的更多特性介绍,请见下文,关于xmake-vscode插件的详细过程,请参考文章:xmake-vscode插件开发过程记录 特性 语法色彩高亮 API输入自动提示和补全 状态栏快捷工具 完整的命令列表 快速配置支持 构建和安装 运行和调试 快速宏记录和回放 编译错误解 继续阅读 »
2017-08-17 Xie Jingyi
写在前面 前几天工作时遇到了一个匪夷所思的问题。经过几次尝试后问题得以解决,但问题产生的原因却仍令人费解。查找 SO 无果,我决定翻看 Python 的源码。断断续续地研究了几天,终于恍然大悟。撰此文以记。 more 本文环境: Ubuntu 16.04 (64 bit) Python 3.6.2 使用的 C 源码可以从 Python 官网 获取。 起因 工作时用到了 celery 作为异步任务队列,为方便调试,我写了一个脚本用以启动/关闭 celery 主进程。代码简化后如下: ```python import sys import subprocess ... celery_process = subproces 继续阅读 »