『音视频技术开发周刊』由LiveVideoStack团队出品,专注在音视频技术领域,纵览相关技术领域的干货和新闻投稿,每周一期。点击『阅读原文』,浏览第59期内容,祝您阅读愉快。
架构
FFmpeg Maintainer赵军:FFmpeg关键组件与硬件加速
本文来自FFmpeg Maintainer赵军在LiveVideoStackCon 2018热身分享,并由LiveVideoStack整理而成。在分享中,赵军介绍了FFmpeg的历史、关键组件,并介绍了英特尔平台上的多种FFmpeg硬件加速方式。
WebRTC点对点通讯架构设计
虽然几乎所有人都知道,WebRTC是一个浏览器端内置的点对点接口,甚至是准标准了。但是,到底怎么利用这一个已经不是新特性,但是很不幸的是,不少人对这东西还是只停留在听说过,怎么才能使用它呢?怎么利用WebRTC作出一个我们想要的P2P应用呢?
沉浸式媒体
本文来自华为多媒体实验室首席科学家、实验室副主任王田在LiveVideoStackCon 2017上的分享。他分享了沉浸式媒体的进展与演进路线,展现了可期的多媒体新体验。
SRS 2.0r3(2.0.248) released
SRS定位是运营级的互联网直播服务器集群,追求更好的概念完整性和最简单实现的代码。
CCtalk高可用多媒体服务技术选型与实现
本文来自沪江技术中心开发经理杨福强在LiveVideoStackCon 2017上的分享,并由LiveVideoStack整理而成。杨福强于2012年加入沪江,主要从事教学互动平台CCtalk的开发,今天他将为我们分享高品质教学平台的一些技术难点和解决方案。
使用 Go 语言学会 Tensorflow
Tensorflow 并不是一个专门用于机器学习的库,相反的,它是一个通用的用于图计算的库。它的核心部分是用 C++ 实现的,同时还有其它语言的接口库。Go 语言版本的接口库与 Python 版本的并不一样,它不仅有助于我们使用 Go 语言调用 Tensorflow,同时有助于我们了解 Tensorflow 的底层实现。
基于 Electron 做视频会议的两种实现方式
本文将为大家分析利用 Electron 做视频会议应用的几种实现思路及其优缺点,同时结合 demo 实例,分享如何基于 Electron 与声网 Agora Web SDK 开发一个视频会议应用。
音频/视频技术
媒体文件格式分析之FMP4 kingsoft-踏锋
MP4 中最基本的单元就是Box,它内部是通过一个一个独立的Box拼接而成的。所以,这里,我们先从 Box 的讲解开始,每个 Box 是由 Header 和 Data 组成的,FullBox 是 Box 的扩展,Box 结构的基础上在 Header 中增加 8bits version 和 24bits flags
用WebRTC在Firefox上实现YouTube直播
本文来自Meetecho的联合创始人Lorenzo Miniero,他分享了如何通过Firefox和WebRTC进行YouTube直播。Meetecho是著名的WebRTC服务器 Janus 的出品公司。LiveVideoStack对原文进行了摘译。
HTML5点播m3u8(hls)格式视频
m3u8是一种基于HLS(HTTP Live Streaming) 文件视频格式,它主要是存放整个视频的基本信息和分片(Segment)组成。不同于mp4大文件,m3u8是由一系列的ts文件组成,一般一个ts文件大概5-10秒,这些ts文件通过一个.m3u8文件做索引。用户播放视频时,可随意拖动视频进度,会读取相应进度的ts文件继续观看视频,不必等到下载完整的视频。因此在播放m3u8的时候很少有卡顿的现象。
一个循环动画引起的内存泄露问题总结
本文主要记录项目中遇到的一个内存泄露问题:由于一个循环动画引起的内存泄露,并且这个问题也是偶现的,在后面的 隐藏问题 里会说明。
编解码
硬解还是软解?手机视频播放功耗揭秘
“硬解的功耗比软件低很多!”相信这是大多数人对硬解码和软解码的印象。然而具体低多少呢?却很少有人能够给出答案。为了揭开这个问题的谜底,北大数字媒体研究中心专门使用功耗仪进行了测试。
FFmpeg HEVC 环路滤波Bug分析一
和以往的视频编码标准类似,HEVC仍采用基于块的混合编码框架,一些失真效应仍然存在,如方块效应、振铃效应、颜色偏差以及图像模糊等等。
OpenGl 直接读取YUV420P 贝克街的猫大哥呀
FFmpeg提供了方法,将解码后的YUV420p格式重采样为RGBA格式,再通过Surface进行播放。但视频重采样,或者说转码这个过程,FFmpeg太消耗性能,开销太大,现在主流的做法都是将解封装解码由FFmpeg处理,解码得到的YUV420格式,直接交给OpenGl进行输出显示。
iOS视频开发(二):视频H264硬编码 GenoChen
视频数据的压缩也叫做编码,H264是一种视频编码格式,iOS 8.0及以上苹果开放了VideoToolbox框架来实现H264硬编码,开发者可以利用VideoToolbox框架很方便地实现视频的硬编码。
MediaCodec解码FFmpeg AvPacket
MediaCodec硬编码PCM2AAC 曾大稳丶
MediaCodec是Android(api>=16)提供的一个多媒体硬解编码库,能实现音视频的编解码。工作原理:其内部有2个队列,一个是输入队列,一个是输出队列。输入队列负责存储编解码前的原始数据存储,并输送给MediaCodec处理;输出队列负责存储编解码后的新数据,可以直接处理或保存到文件中。
AI智能
美团如何基于深度学习实现图像的智能审核?
AI(人工智能)技术已经广泛应用于美团的众多业务,从美团App到大众点评App,从外卖到打车出行,从旅游到婚庆亲子,美团数百名最优秀的算法工程师正致力于将AI技术应用于搜索、推荐、广告、风控、智能调度、语音识别、机器人、无人配送等多个领域,帮助美团数亿消费者和数百万商户改善服务和体验,帮大家吃得更好,生活更好。
换脸效果媲美GAN!一文解析OpenAI最新流生成模型「Glow」
基于流的生成模型在 2014 年已经被提出,但是一直被忽视。由 OpenAI 带来的 Glow 展示了流生成模型强大的图像生成能力。文章使用可逆 1 x 1 卷积在已有的流模型 NICE 和 RealNVP 基础上进行扩展,精确的潜变量推断在人脸属性上展示了惊艳的实验效果。
这篇文章要在GANs圈里C位出道了
生成对抗网络(GANs) 是一类深度生成模型,旨在以无监督方式来学习目标的分布。本文中,我们将从实践的角度清醒地认识当前GANs 的研究现状。通过复现一些性能最佳的模型,来探索当前整个 GANs 的研究情况。此外,我们进一步讨论了GANs 模型一些常见的陷阱(pitfall) 及复现问题。
DenseNet:比ResNet更优的CNN模型
在计算机视觉领域,卷积神经网络(CNN)已经成为最主流的方法,比如最近的GoogLenet,VGG-19,Incepetion等模型。CNN史上的一个里程碑事件是ResNet模型的出现,ResNet可以训练出更深的CNN模型,从而实现更高的准确度。
基于深度学习的图像语义分割算法综述
这篇文章讲述卷积神经网络在图像语义分割(semantic image segmentation)的应用。图像分割这项计算机视觉任务需要判定一张图片中特定区域的所属类别。
图像
HDR关键技术:色调映射(三)
HDR技术近年来发展迅猛,在未来将会成为图像与视频领域的主流。如何让HDR图像与视频也能够同时兼容地在现有的SDR显示设备上显示,是非常重要的技术挑战。本系列将会详细地总结色调映射技术的相关问题,并介绍经典的色调映射算法。将分为三个部分:(一)是色调映射技术的综合介绍;(二)是图像色调映射算法的总结与经典算法介绍;(三)将介绍视频色调映射算法。
HDR关键技术:逆色调映射(一)
HDR关键技术:逆色调映射(二)
逆色调映射(Inverse Tone Mapping)应运而生,它是一种用来将SDR源信号转换为HDR源信号的技术,可以应用于生产端或终端设备,在一定程度上实现对现有SDR节目的HDR“还原”及向上兼容。本系列将会详细分类介绍逆色调映射算法。分为两个部分:(一)逆色调映射概述及一些经典算法,包括全局算法,分类算法以及拓展映射算法;(二)介绍最近的研究趋势,特别是基于机器学习的逆色调映射算法。