直播与RTC的融合以及AV1在互动直播场景下的应用
1. 背景介绍 直播和RTC(Real Time Communication)技术一直是以两种完全不同的形态发展的。直播通常应用于广播电视、体育赛事直播、游戏直播、秀场直播等场合,而RTC视频通话最典型的场景就是视频会议和传统的视频通话。随着近些年直播引入更多的互动方式,直播和RTC技术的界限也越来越模糊。 从信息传输的角度,直播是单向的信息传输,…
Go语言测试入门(二)
基准测试 基准测试需要以Benchmark开头,参数需要使用 *testing.B。在执行go test的时候需要加上 -bench参数。 func BenchmarkXxx(*testing.B) 基准测试函数示例: func BenchmarkRandInt(b *testing.B) {    for i := …
译|2017|Linux 追踪系统&如何组合在一起的
译者序在 Linux 系统上用来追踪、调试的工具有很多,有内核态的、用户态的、网络、IO 等等不同层次的工具。本文翻译自 Linux tracing systems & how they fit together - Julia Evans,这是在学习 Systemtap 原理时找到的资料,文章中就粗略讲了 Linux 的追踪系统…
视频编码器的质量评估
引言 每年年底都会看到好多大厂宣布自家的编码器在MSU编码器大赛上取得的优异成绩,拿了N个冠军,看得人眼花缭乱。大家不禁会产生疑问:“咦,为啥有那么多个第一?”。俗话说外行看热闹,内行看门道,今天我们就来聊一聊这个话题。 一、MSU编码器大赛简介 MSU编码器大赛的全称是MSU Video Codecs Comparison,从2003开始到现在已…
360智汇云物联网视频解决方案-帝视
一、背景 随着智能家居与物联网的普及,网络摄像头(IPC)逐步渗透到家庭、幼儿园、小店商铺等场景;国家推进的天网工程、雪亮工程让公共场所都安装上了监控摄像头;数字化与智能化的趋势也让园区、学校、工厂遍布视频摄像头。除了典型的安防监控摄像头,还有越来越多的视频类IOT新产品涌向市场(例如可视门铃、行车记录仪、可视门禁等)。5G时代到来后,视频在物联网…
Go语言测试入门(一)
一、为什么要编写测试? 我的观点是:单元测试可能看起来很繁琐,但是从长远来看,它的好处是显而易见的。单元测试可以确保所有代码在部署之前均符合质量标准。在产品开发生命周期的整个过程中,单元测试可以节省时间和金钱,并帮助开发人员更有效地编写更好的代码。 1.节省时间和金钱 编写单元测试时,在软件构建阶段会发现许多错误,从而阻止了这些错误过渡到下一个阶段…
GoLang的逃逸分析
奇技 · 指南 GoLang的垃圾回收机制可以进行自动内存管理让我们的代码更简洁,同时发生内存泄漏的可能性更小。然而,GC会定期停止并收集未使用的对象,因此还是会增加程序的开销。Go的编译器十分聪明,比如决定变量需要分配在堆上还是栈上,和分配在堆上不同的是在栈上的变量在声明它的函数结束之后就会被回收。那对于GC来说,分配在栈上的变量不会带来额外的开…
分布式NoSQL数据库Pika——从单机到集群
背景 Pika是一个可持久化的大容量redis存储服务,兼容string、hash、list、zset、set的绝大部分接口(兼容详情),解决redis由于存储数据量巨大而导致内存不够用的容量瓶颈。用户可以不修改任何代码从redis迁移到pika服务。由于单机pika容量受限于单块硬盘容量的大小,360公司业务和社区对分布式pika集群的需求越来越…
Polkadot,万链互联
背景 自中本聪创建比特币开始,区块链技术经过了十多年的发展,诞生了如以太坊、超级账本、EOS等区块链底层网络以及DEFI去中心化金融、IPFS/Filecoin去中心化存储等区块链应用网络。 这些不同的区块链网络基本都有着独立的共识、存储以及治理机制,在不同的区块链网络之间实现资产转移、数据传递极其的困难,导致新的数据孤岛。随着近年来公链DEFI经…