首页
学习
活动
专区
工具
TVP
发布

音视频开发之旅

专栏作者
26
文章
32874
阅读量
19
订阅数
自动裁剪人脸:简化你的数字人素材准备
在做数字人时,需要对采集的数据进行预处理,然后才能进行模型训练, 预处理常用的操作有:去背景 音频重采样 视频裁剪 音频特征提取等等,今天我们来分享一个自动化脚本: 对原图/视频进行人脸检测并根据目标尺寸以人脸为中心进行裁剪.
音视频开发之旅
2024-03-10
770
音视频开发之旅(72)- AI数字人-照片说话之SadTalker
AI数字人目前做的最好的无疑是heygen,但是费用也是很贵,也有一些其他的商业应用,比如:微软小冰、腾讯智影、万兴播爆和硅基智能等。
音视频开发之旅
2024-03-02
1860
音视频开发之旅(68)-SD文生图
1girl,smile,highres,wallpaper,in summer,landscape
音视频开发之旅
2024-02-24
1340
音视频开发之旅(67) - 变速不变调之sonic源码分析
上一篇我们学习了音频变速不变调的原理以及WSOLA波形相似叠加算法进行时域压扩处理。其中在寻找相似帧方面,Sonic采用AMDF(平均幅度差函数法)方法来进行寻找。
音视频开发之旅
2022-08-12
6540
音视频开发之旅(66) - 音频变速不变调的原理
音频的原始pcm数据是由 采样率、采样通道数以及位宽而定。常见的音频采样率是44100HZ,即一秒内采样44100次,采样通道数 一般为2, 代表双声道,而位宽一般是16bit 即2个字节。 通过改变采样率进行音频的变速,比如音视频播放器中的 2 倍速,0.5 倍速播放。如果想要实现音频的2.0倍速播放,只需要每隔一个样本点丢一个点,即采样率降低一半。如果想要实现0.5倍速播放,只需要每隔一个样本点插入一个值为0的样本点。就可以了,理想很丰满,但是如果仅仅这样做,带来的不止是速度的变化,声音的音调也发生变化了,比如 周杰伦的声音变成了萝莉音,这是我们不期望的。
音视频开发之旅
2022-08-07
1.5K0
音视频开发之旅(63) -Lottie 源码分析之动画与绘制
上一篇我们学习分析了Lottie的json解析部分. 这篇我们分析的动画和渲染部分。
音视频开发之旅
2022-01-16
7790
音视频开发之旅(62) -Lottie 源码分析之json解析
在实现动画方面,原生的方式开发成本比较高,airbnb开源的lottie有Android、iOS、RN等多个版本的支持,设计师通过AE设计好动画后,通过AE插件Bodymovin导出json和素材文件。
音视频开发之旅
2022-01-09
9400
音视频开发之旅(61)- 分析FFmpeg (解码部分的)常用结构体
然后分别开启音频和视频的解码线程开始解码。我们可以看到涉及的主要结构体有AVCodecContext 、AVCodecParameters 、AVCodec 、AVFrame
音视频开发之旅
2021-12-05
5810
音视频开发之旅(60) -调试分析FFmpeg (解封装部分的)常用结构体
工欲善其事,必先利其器,断点调试,对我们梳理流程排查问题十分重要,可以ffmpeg的调试可以在XCode、VS code以及QT等ide上进行方便的调试分析。本篇我们以XCode为例来先介绍下ffplay的断点调试,以ffmpeg4.4版本来进行分析。
音视频开发之旅
2021-12-04
8440
音视频开发之旅(59)- 捕获收集、定位分析 Native崩溃
我们知道Java崩溃是在Java代码中出现了未捕获异常,导致程序异常退出,常见的异常有:NPE、OOM、ArrayIndexOutOfBoundsException、IllegalStateException、ConcurrentModificationException等等。 还有一类崩溃,也是我们不得不关注,那就是Native层崩溃,这类崩溃不像Java层崩溃那样比较清晰的看出堆栈信息以及具体的崩溃。每当遇到是都要查找分析,写这篇的目的是帮助自己做下记录,也希望能帮到有类似困扰的你,下面我们开始一起学习实践吧。 本文学习实践的demo以张绍文《Android开发高手课》中的例子进行。
音视频开发之旅
2021-11-28
1.2K0
音视频开发之旅(58) -H.264 帧内预测
一个编码图像通常划分一个或多个片,每个片又可以划分成若干宏块组成,一个宏块由一个 16×16 亮度像素、一个 8×8 Cb以及一个 8×8 Cr 彩色像素块组成,即常见的420采样格式,如下图:
音视频开发之旅
2021-09-11
8690
音视频开发之旅(57) -如何方便的查看AndroidNative源码
对Framework层的了解学习是我们进阶的一个重要阶段。通过 AS 查看 Framework 代码体验非常好,无论是索引还是界面都让人很满意,但是当你跟踪代码,发现进入 native 逻辑时,就会发现 Android Studio 对 native 代码的支持非常不好,不能索引不支持符号搜索不能跳转等。
音视频开发之旅
2021-09-09
1.1K0
音视频开发之旅(56) -H264/AVC基本结构
音视频编码的标准由标准发展组织制定,主要两大组织:ISO(国际标准化组织和国际电工委员会)和ITU-T(国际电信联盟的电信标准化部门)
音视频开发之旅
2021-09-04
7940
音视频开发之旅(53) - Java并发编程 之 synchronized
关键字 synchronized可以保证在同一个时刻,只有一个线程可以执行某个方法或者某个代码块.有如下三种常见的使用:
音视频开发之旅
2021-08-17
3980
音视频开发之旅(50)-边缓存边播放之缓存分片-物理文件空洞方案
我们在上一篇介绍AndroidVideoCache时,知道它会一直下载数据直到完全下载。这会带来流量的浪费。比如一个5MB的视频,码率是2Mb/s,共有5Mx8/2=20秒。如果带宽是5MB/s,一个5M的视频1秒钟就下载完了,但是用户也许只看到了2秒钟因为不感兴趣划走了,这样就造成了两个弊端 流量的浪费和LRU缓存策略的漏洞。 这个问题我们可以通过限速以及缓存LRU策略的调整来进行优化。
音视频开发之旅
2021-08-09
9430
音视频开发之旅(49)-边缓存边播放之AndroidVideoCache
播放音视频时,播放器数据的请求是由播放器内部发起的,我们只是提供了一个url,而不能控制数据的请求过程, 都是要先进行下载,下载到一定量之后播放器再开始播放,当下载进度减去播放进度小于一定阀值,进入缓冲状态。 比如MediaPlayer的最小缓存大小是4M,最大20M
音视频开发之旅
2021-08-01
1.7K0
音视频开发之旅(45)-ExoPlayer 音频播放器实践(一)
通过上一篇的学习实践,我们了解了ExoPlayer的优缺点以及基本用法,今天我们进入ExoPlayer的音频播放实践,我们来一起实现一个简单的音频播放器。
音视频开发之旅
2021-05-29
4.7K0
音视频开发之旅(44)-ExoPlayer介绍及简单使用
从这篇开始我们进入阶段五 —— 一些音视频开源项目的学习使用分析,今天我们进入ExoPlayer部分的学习实践
音视频开发之旅
2021-05-15
6.1K0
音视频开发之旅(43)-光照基础(二)
上一篇我们学习实践了关照基础的基本概念和立方体的实现。有不清楚的可以先进行回看。 这篇我们来光照基础的具体实践
音视频开发之旅
2021-04-24
5710
音视频开发之旅(42)-光照基础(一)
环境光(Ambient Lightiing)不来自任何特定方向的光,在经典光照模型中会用一个常量来表示 使用时只需要对其片源着色器添加一个环境光常量,作为gl_Fragcolor的调制即可_
音视频开发之旅
2021-04-19
5090
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档