自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 8.使用MediaProjection+MediaCodec+AudioRecord+MediaMuxer将屏幕内容录制成视频文件

Android提供的截图、录屏的模块,可以提供一个surface;28以后,不能在活动申请录屏对象,必须有前台服务,实现弹窗方法提示用户,还得有通知才能用。Android 10 Media projections require a foreground service of type ServiceInfo.FOREGROUND_SERVICE_TY-CSDN博客使用startForeground()创建前台Service_startforeground();-CSDN博客。

2023-11-01 14:12:35 224

原创 7.使用MediaRecorder录制视频文件

Android 模拟器无法录制音频。

2023-11-01 14:11:12 123

原创 6.音视频同步算法

物理中,音调指的高低,指声音的大小强弱,音色指声音的特色,要区分开。视频:色深、色域、亮度。人耳的听觉范围是20Hz-20KHz,这个范围内的信号成为音频信号,称为可闻声,而人耳对中频段1-4KHz最敏感;对于音色来说,在众多因素中影响较大的是声音的频谱分布以及时间包络曲线。除此之外,平均频率、声音中的噪声、频谱中心、一些随机成分和频谱的变化等也会对音色造成影响。不同的声源之间,最主要的区别便是形状与材质的区别。而形状与材质的不同,则决定了物体振动模态的不同。振动模态不同便导致了其振动产生的频谱不同。

2023-11-01 14:10:19 122

原创 5.使用MediaExtractor+MediaCodec+SurfaceView播放视频文件

整体类似于上一个播放音频的项目,只不过这里把音频变成了视频。音频是通过AudioTrack来播放,视频的话可以直接渲染到SurfaceView中。

2023-11-01 14:09:06 170

原创 4.使用MediaExtractor+MediaCodec+AudioTrack播放音频文件

首先来看一张图:要想播放一个视频,就得对视频文件解协议、解封装,随后可以得到音频数据和视频数据(分开的),再次分别解码,最后同步播放(因为播放音频和视频的设备不同,所以需要将音视频同步)。本任务就是实现该图的左半边,进行音频的播放。用来把视频和音频的数据进行分离对于一个常见的视频文件,通常有一个视频轨道,和一个音频轨道,通过MediaExtractor来分离音视频轨道数据当然可能一个视频文件中有多个视频流和多个音频流,

2023-11-01 14:08:12 157

原创 3.使用MediaPlayer+SurfaceView播放视频文件

MediaPlayer 主要用于播放音频,没有提供图像输出界面,所以需要借助其他的组件来显示 MediaPlayer 播放的图像,可以使用来显示。

2023-11-01 14:06:35 190

原创 2.使用VideoView播放视频文件

任务1中我们利用MediaPlayer播放音频。本任务,我们利用VideoView播放视频。利用来为VideoView添加功能:播放、快进、快退和进度条等功能。

2023-11-01 14:04:12 154

原创 1.使用MediaPlayer播放音频文件

setOnBufferingUpdateListener(MediaPlayer.OnBufferingUpdateListener listener): 网络流媒体的缓冲监听。除了第一种文件不需要prepare()这个操作,其余的媒体资源都需要进行prepare()。setAudioStreamType(int streamtype):指定流媒体的类型。seekTo(int msec):指定播放的位置(以毫秒为单位的时间)reset()后需要重新的设置数据源和重新prepare()

2023-11-01 13:33:07 85

原创 汽车技术~~~自己遇到的

在域集中式架构阶段,业内谈的比较多的就是经典五域:座舱域、智驾域、动力域、底盘域、车身域。再往后发展,到域融合阶段,五大功能域之间开始尝试进行跨域融合,先将部分域的功能集成到一个高性能计算单元内,再逐渐聚合更多的功能域,最终实现1个中央计算大脑的目标。智能驾驶则发挥汽车最基本的功能,即行驶,体现的是车与环境的交互。而在交通环境中,驾驶行为是人-车-环境三方交互的过程,因此,汽车作为重要的载体,如何打通三方的交互,让驾驶员和乘客获得好的驾乘体验,就显得尤为重要。在什么阶段融合有待讨论!

2023-09-26 11:13:00 26

原创 C++ Primer 中文版(第5版)第三章 字符串、向量和数组

第三章 字符串、向量和数组3.4 迭代器3.4.1 使用迭代器3.4.2 迭代器使用3.4 迭代器3.4.1 使用迭代器练习3.23#include <iostream>#include<vector>using namespace std;int main(){ vector<int> v1(10, 42); for (auto it = v1.begin(); it != v1.end(); it++) {

2023-09-26 09:00:51 41

原创 P4学习~毕业快乐

文章目录P4模型P4语言代码结构P4模型这是P4中提供的最简单最易理解的编程结构,V1Model。可以看到它由5个模块组成,他们的名字分别是(从左到右):• Parser: 解析器, 解析并且提取数据包头的各个字段。• Ingress: Ingress处理,在这里定义Ingress流水线。• TM: Traffic manager,有一些队列,用于流量控制(一些队列相关的metadata在此更新)。• Egress: Egress, 在这里定义Egress流水线。• Deparser:用于重

2023-09-26 09:00:08 137

原创 Ubuntu 安装Python3

wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tgztar -xzf Python-3.9.6.tgz./configure --prefix=/usr/local/python3.9sudo makesudo make installln -s /usr/local/python3.9/bin/python3.9 /usr/bin/python3(如果失败,就先把/usr/bin/python3删除掉(rm -rf /us

2021-08-23 15:46:23 79

原创 SDN/NFV重构下一代网络

3.1 SDN架构技术3.1.4 业务协同平台与应用层1.业务协同平台SDN的引入有两种方式:1.参照 OpenFlow协议,采用标准的南向接口,实现控制器和各厂商转发设备之间的完全解耦,同时运营商需要具备对 SDN控制器的绝对控制权;2.第二种方式是暂时不开放南向接口,采用各设备厂商控制器搭配转发设备,南向接口可以采用私有协议或者公有协议的扩展实现,但是运营商在各厂商控制器之上搭建统一的协同层,实现对跨厂商域业务的管理和调度。目前来看,第二种方式是运营商近期引入 SDN的主要选择。3

2021-06-03 10:55:45 568

原创 python编程:从入门到实践

文章目录第二章 变量和简单的数据类型1.删除空白2.在python中输出双引号或者单引号的四种解决方案3.使用str()函数避免类型错误第三章 列表简介3.1 列表是什么3.2 修改、添加、删除元素1.在列表末尾添加元素2.在列表中插入元素3.从列表中删除元素3.3 组织列表1.使用sort()对列表进行永久性排序2.使用sorted()对列表进行临时性排序3.倒着打印列表4.确定列表长度第二章 变量和简单的数据类型1.删除空白name = "abc ecDAS "print(name)prin

2021-02-06 11:54:36 714

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除