Justme0 的博客

撷英采华,以备不需

【转】RTMP 协议规范

由于RTMP规范不在RFC官网上,为方便查看,转自 https://github.com/melpon/rfc/blob/master/rtmp.md,同 Adobe 官方标准 https://www.adobe.com/content/dam/acom/en/devnet/rtmp/pdf/rtmp_specification_1.0.pdf

Copyright Adobe Systems Incorporated                    H. Parmar, Ed.
                                                    M. Thornburgh, Ed.
                                                                 Adobe
                                                     December 21, 2012

Adobe’s Real Time Messaging Protocol

Abstract

This memo describes Adobe’s Real Time Messaging Protocol (RTMP), an application-level protocol designed for multiplexing and packetizing multimedia transport streams (such as audio, video, and interactive content) over a suitable transport protocol (such as TCP).

水垢

电水壶用了大半年,某天早晨起床后倒杯水,看到水中有一些杂质,开始以为是水质有问题,后来看了水壶中飘着一层薄膜状的东西,是烧水之后才出现的,水壶底和内壁上有一些刮痕状的东西,应该是水垢。回顾起中学化学的知识,查了一些资料,对水垢的来龙去脉做下记录,以后可以更好地处理生活上的问题。

水垢形成的主要过程

1, 空气中的$\ce{CO2}$与水结合形成$\ce{H2CO3}$,落到地面。

\[\ce{CO_2 +H_2O -> H_{2}CO_3}\]

建党100周年感想 —— 中国近现代史漫谈

今年是共产党建党一百周年,清明节去了趟毛主席纪念堂瞻仰伟人,献了三束白菊花,从毛主席侧边经过,过道大概离他两米距离,他安详地躺在玻璃水晶棺内,头发还是黑色的,身长比印象中小些。那会天安门广场就在紧锣密鼓地布置七一建党100周年纪念场地了。

音视频通信中 FEC 的数学原理

2021年6月重新整理后在部门做的分享 https://mp.weixin.qq.com/s/4dFdz0H0mjpemDflKbTdmQ

=============

FEC名为前向纠错(Forward Error Correction),用于恢复丢失的信息。看了很多介绍FEC的文章把矩阵和伽罗瓦域混在一块讲,大大提升了理解的难度。其实两者可以独立看待,我明白后有一种醍醐灌顶的感觉,伽罗瓦域(又名有限域)理论是连接连续数学和计算机落地实现时的桥梁,后文会详细说明。

本文分三部分介绍。

  1. 第一部分背景介绍,面向所有人,尽量讲解得通俗易懂,希望读者至少能看懂本文要解决什么问题。
  2. 第二部分面向学过高数的同学,讲解FEC怎么解方程来恢复数据的。
  3. 第三部分面向数学、计算机专业等学过群论的同学,讲解FEC在用计算机解方程时碰到的问题及如何用群论优美地解决的。


1. 背景介绍

大家用过微信的视频通话,有时网络不佳会感觉卡顿,视频是由“一幅幅图像”组成的(真实情况更复杂,这里为了降低理解的门槛简化说明),如果某一幅图像在传输过程中丢失接收者可能感觉卡顿。


微信通话

日本纪行

去日本游玩虽然过去两年了,时常回想起那儿的场景历历在目,仿佛发生在昨天。日本是个很有特色的国家,比如垃圾处理、XX、高度统一的衣着、别致的装修,很值得一去。

2018年5月26日下午和同事从深圳蛇口码头出发去香港机场,到日本凌晨3点,日本比中国早一个小时,在关西机场(大阪西边的一个岛上)的罗森店里买了个饭团填饱肚子,惊喜的是,看到了熟悉的“推荐使用支付宝”。在日本支付宝比微信支付普遍多了,可能是因为阿里有个软银爸爸在这吧,对了,在这边手机上网显示的电讯供应商就是“softbank”。在机场还看到了24小时的“中文”咨询台,可见来日本的中国游客多么多。

终于等到5点半,我们坐上了第一班去京都的地铁,这边叫JR(Japan Railway)线,与国内不同的是,日本是不分地铁与高铁的,轨道线从南到北贯穿日本,到城市里的话就入地下。经过这几天的见闻,给我的感觉是日本对自己的铁道历史和技术相当自豪,在大阪书店里看到好几排的铁道书籍、杂志、碟片,还有很多周边,比如著名的铁胆火车侠动画片,做成mini火车的筷子,印有火车侠的衣服等等,在京都还有专门的铁道博物馆。

大概7点半到京都,我们立刻去找早餐店,在街边找了半天也没找到合适的,京都街边的餐馆很少,后来才发现很多餐馆都在地下,最终我们还是在711买的早饭。这家711呢,有三个收银台,只有中间会

SVD 奇异值分解的应用实践

最近看到推荐系统中有涉及奇异值分解,大学里没学过奇异值(singlular value)的概念,觉得挺遗憾的。最近看了一些资料和课程,并在图像模糊处理中实践了下。

先看看效果,图1是位日本演员上野树里,图2是去掉像素矩阵中较小奇异值后的结果,可以看到图片变模糊了。本文先简要介绍奇异值理论,后介绍实践。


图1

图2

1. 理论

1.1 定义

A是复数域中的任意矩阵,可作如下分解

\[A=U \Sigma V^T\]

各矩阵维度如下

【译】什么是 C/C++ 标准库

【译者序】 原文链接:https://www.internalpointers.com/post/c-c-standard-library on Apr 9, 2018 by TRIANGLES。这篇文章介绍了C/C++标准库在标准中的说明及各平台的实现,作者查阅了很多资料,对梳理标准库概念有所帮助,最后一段还提到一个有意思的比赛 : )

本文简要介绍了C/C++开发领域中标准库所扮演的角色,以及标准库在各操作系统中是如何实现的。

使用C++有一段时间了,一开始经常让我困惑的是其内部原理:我使用的核心函数和类来自哪里?是谁写的?它们打包放在我电脑上什么地方?是否有一份官方手册

本文通过介绍C/C++语言本身到其实现来回答这些问题。

C/C++怎么产生的

平常我们谈论的C/C++其实是指一个规则的集合,它定义了语言该做什么、应该表现成怎样以及提供的功能。C/C++编译器必须遵从这些规则来处理源程序并生成二进制应用程序。这看起来与HTML挺相近:浏览器遵从一组指示符来渲染网页。

与HTML一样,C/C++规则也是理论上的。国际标准化组织(ISO)中有一部分人每年聚集在一块讨论语言的规则并记入文档。是的,C和C++是经过标准化了的。最终他们会编写一本叫标准的官方手册,可以在官网上买到。每次随着语言发展,会出版一本新的标准文档。所以大家会看到不同的C/C++版本:C99, C11, C++03, C++11, C++14等等,其中的数字表示出版年份。

标准是份及其详细的技术文档:反正我不会拿它用于手头使用。标准分两部分: