当前位置: 首页 > news >正文

个人网站项目策划书dw网页制作教程div

个人网站项目策划书,dw网页制作教程div,网站平台方案,网站建设技术支持有什么// 编者按#xff1a;随着手机相机功能日益强大#xff0c;4k#xff0c;8k#xff0c;各类特色短视频的拍摄#xff0c;编辑、播放需求日益增长#xff0c;短视频应用的火爆也对当前的手机音视频技术提出了更高的要求#xff0c;如何更好地提高用户体验成为了行业共同…   //   编者按随着手机相机功能日益强大4k8k各类特色短视频的拍摄编辑、播放需求日益增长短视频应用的火爆也对当前的手机音视频技术提出了更高的要求如何更好地提高用户体验成为了行业共同的命题。LiveVideoStackCon 2023 上海站邀请了小米的吴昊从一名开发者的角度为大家分享他关于手机端音视频技术的一些思考与经验。 文/吴昊 整理/LiveVideoStack 大家好本次我将从手机厂商音视频SDK开发的角度和大家分享工作中我总结的一些经验也虚心接收更好的建议。 目前我们的主要工作是开发小米内部自用的多媒体组件它支持小米天气、相册、文管、短信、视频的业务领域涉及的本地播放、网络播放、音乐播放、图片浏览、视频编辑和新场景探索等功能。 本次分享将分为五部分一是从厂商角度介绍对手机音视频现状的理解二是分享对平衡体验和资源占用的一些工作经验三是基于网络播放场景列举具体的优化实例四是介绍我日常使用的开源资源最后进行一些未来展望。 -01- 手机音视频现状 提起手机音视频大家的第一印象可能是上面列举的抖音、快手、爱奇艺和小米视频等在线视频平台其中我们的小米视频是一个聚合平台用户可以通过它观看各大流媒体平台的视频资源。 而手机厂商在此基础上还需重点关注本地视频播放应用的开发和优化。如上图所示我们对小米手机的相册应用丰富了各种各样的功能如视频变速播放、编辑、图片Seekbar浏览等。 此外近年来各大厂商对手机影像的内卷之势也愈演愈烈为了充分发挥硬件实力也在不断加强相机应用的各种功能。 我个人认为当前的手机音视频应用具备以上几个特点第一是便携性这有助于提高用户粘度第二是多功能性除了单纯的播放功能外还要具备各种剪辑编辑相关的能力第三是高清晰度这是当今用户的基本需求第四是实时性保证用户可以随时随地使用社交性和互动性可以为微信等社交应用提供服务。 -02- 性能与体验 接下来分享我个人对平衡体验和资源占用的一些优化经验。在此之前首先向大家推荐小米公司的官方应用小米社区。我们的产品经理和研发会不时参与社区讨论并从社区话题中选取大家感兴趣的新功能进行立项研发欢迎小米用户们积极发表自己的想法和建议。 依据自网络和小米社区的调研结论我们发现对于音视频应用。用户主要关注以上几点特性一是满足用户的画质需求二是需要支持各种不同的视频格式三是除播放外应具备更多的功能如视频编辑等四是要保证播放的流畅度五是要提高应用稳定性六是要尽可能节约设备电量。 通过分析提炼用户需求我们在技术上将其转换为具体的优化方案。 我们认为可以从以上六个方面来展开优化。 首先控制包体积有效缩短了APK的下载时间使用户可以更快地安装应用程序其次是有利于节约手机设备的存储空间第三是更小的APK启动速度更快应用程序响应更迅速提高了用户体验最后压缩APK体积减轻了传输时占用的网络带宽节约了厂商的网络和存储成本。 以上是我总结的几项优化方案一是精简动态库符号表二是去除无用代码依据场景需求优化调用逻辑减少代码调用层级三是对FFmpeg进行定制化编译。 内存占用优化一是可以有效控制因应用占用内存大内存堆积溢出导致的OOM或是容易被系统清理的问题二是减少频繁GarbageCollection (GC)导致的应用卡顿、掉帧现象三是从手机厂商角度需尽量避免原生应用内存占用大变相挤压第三方应用运行环境。 针对安卓平台首先可以使用Android studio、dumpsys或meminfo等工具对应用进行内存占用分析明确大内存分配的代码并评估必要性为后续优化提供决策依据 二是减少频繁内存创建销毁借助jemalloc等内存分配器可以实现对一些重复对象的复用 三是减少数据的拷贝流转。 作为手机厂商应用功耗是我们高度关注的一项指标控制功耗首先有利于减少手机的充电次数延长电池寿命其次可以减少手机发热降低硬件损耗三是发热更少可以避免手机CPU频繁降频有利于提高设备的整体性能和相应速度。 控制功耗首先可以在不影响应用运行的前提下尽量降低网络访问频率第二要充分考虑VPU、CPU和GPU的特性合理分配硬件资源第三要做好无用线程的排查第四是可以依据实际情况将显示模式切换为surfaceview。 从优化SDK网络播放的角度提升流畅性可以采取以下措施 一是做好视频文件的数据调整如注意mp4文件moov box的排列顺序等 二是可以采用数据预缓存三是采用视频预渲染四是优先考虑硬解。 提升应用稳定性首先可以在平时的工作中保证随时自动化测试的条件提高效率二是要重视预防和监控可以成立一些代码评审监控机制三是针对发现的问题要做好举一反三。 丰富应用的特色功能是维持用户粘度的关键。做好这点首先要注意多和业务相关的各方交流讨论广开思路二是要及时关注其他平台的特色功能并考虑手机应用场景及实现技术研究移植的可行性三是从自身角度努力提升技术实力多关注新兴技术与时俱进。 -03- 场景案例 接下来介绍一个基于网络播放场景的优化案例。在该案例中业务方对网络播放的起播速度提出了更高要求。 由于向业务方最初提供的SDK集成了在线、本地视频播放和视频编辑等功能本身体积过重优化空间有限因而我们决定基于纯网络播放推出专门的播放器内核提高起播速度。 各位开发者在规划优化方案前要注意做好调研与产品方做好沟通明确具体优化需求本次该案例从业务方角度提出的需求包括起播速度快、SDK体积小、快速切换和内存小四项。 从开发者角度为了便于后续成果复用响应用户可能提出的额外需求有必要对SDK接口的简单化和可拓展性做出考虑。 基于以上需求我们进行了架构选型调研。综合考虑开发时间适配难度后期维护以及成果复用的最大化最终决定基于原有播放器框架进行精简及模块化并就稳定性及起播耗时等核心指标进行专项开发。 我们从以上几方面着手压缩SDK体积。首先是分离原播放器中与网络播放场景无关的功能其次是有针对性的选取满足用户需求的网络协议、封装格式和编码格式最后是针对网络播放场景简化原有判断逻辑。 播放器架构优化前后的对比如上所示。 在该案例基础上我们正在考虑将原有体积重集成各种功能的播放器SDK解耦为功能池后续依据不同用户的场景需求进行针对性的架构定制。 对优化内存占用我们采取了以上措施一是通过内存分析找到高占用的代码进行针对性优化二是进行缓存区优化如自定义内存管理、进行缓存区调优等三是针对Android平台采用MediaCodec直接送显最后是将显示模式切换为surfaceview。 在该案例中缩短起播时间是业务方的核心需求。我们对不同起播时间给用户带来的感受进行了分析结论如上表所示。 视频起播从SDK开始到显示播放需经历以上五个阶段我们在各个阶段采用了一些相对简单的优化策略。 首先在申请url地址阶段可以在部分场景下提前获取视频url在DNS解析阶段可以酌情考虑采用host缓存缩短解析时间在连接服务器阶段可以考虑进行服务端调优在数据缓存阶段可以提前缓存部分数据在解码显示阶段可以选用支持快速解码的解码器。 针对手机侧优化我们采用了以上方案。 经过测试我们在该案例中选择预缓存待播视频的开头1到2秒大家在实际工作中可以结合场景需求自行调整需要缓存的时长。 通过复用提前缓存时分配的缓冲区buffer可以有效降低起播缓存区的水位线提高抗网络抖动能力。 针对快速切换播放多个视频的场景可以采用播放器多实例方案。在前一个视频播放时提前创建另一个播放器加载下一个视频后续以此类推。 鉴于精确seek受网络条件影响可能会拖慢画面送显我们会基于用户主观体验设置时间阈值该案例下为900ms如果精确seek所需时间超出该值则先送显该时点下能够解码的画面避免长时间黑屏等待。 换个角度考虑针对相同问题从资源侧进行优化有时效果要胜于SDK侧方案。 在验证优化可行性时我使用apache2搭设了自有服务器辅助测试其中上图右侧展示了设置网速限制的过程。 我发现在预缓存请求网络MP4时会出现MP4文件头和文件尾来回请求的情况这增加了播放耗时。 这实际上是包含视频索引信息的moov在MP4文件中后置导致的。 在使用FFmpeg将其改为前置后缓存机制可正常生效短视频起播明显加快。 调整moov位置后的MP4文件box tree如上图所示。 moov会随着视频时长的增加而变大例如上图中两小时左右的视频moov体量达到了约4MB。由于播放前需全部下载导致起播速度仍然较慢。 为了缩短长视频起播时间我考虑将mp4改为ts流使播放器可以从视频流的任一片段独立解码但导致seek的速度较慢。 通过改为使用HLS流使起播和seek速度都获得了大幅提升。 综上代码优化需要我们明确需求、逐项拆解从而精准施策。 同时要注意与各方形成合力从多角度进行分析还要考虑代码的模块化。 -04- 开源资源 接下来介绍几个我日常较多使用的音视频开源软件。 Mp4box是一个可以在线解析、查看MP4 box结构的工具。 Bento4是一款用于读写MP4文件的专业开源库。 YUView是我个人强烈推荐的一款码流分析软件它支持带封装视频解析和显示、支持H.264/H.265/H.266/AV1裸码流解析和显示。 它支持查看H.265流的详细码流分析信息包括Slice个数、CU划分、CU模式类别、参考帧索引、运动矢量等等。 它支持对比两段视频。 它支持类似mediainfo的媒体信息显示。 它支持各种媒体编码信息查询。 它支持查看码流变化曲线。 biTStream由一系列C语言的头文件组成它是在MIT许可证下发布的可以辅助进行代码字节和结构解析。 -05- 未来展望 最后从个人角度分享一些未来展望。一是随着AR/VR技术的不断发展未来音视频可能会更加注重增强现实和虚拟现实的体验二是5G技术的到来会加快音视频的传输速度为应用创新带来更多可能性三是AI技术的发展将为音视频应用带来更多可能。 我今天的分享就到这里谢谢大家 7天倒计时深圳站大会亮点前瞻
http://www.dnsts.com.cn/news/203906.html

相关文章:

  • 企业品牌文化建设学习网站建的网站打开很慢
  • 有没有做盗版电影网站犯罪的软件定制开发服务税率
  • wordpress适合下载站的主题网站一个月
  • 电子商务网站的主要功能福州做网站外包
  • 网站空间租用哪个好如何用html做网站
  • 云建站系统前三名宁波建网站哪家好
  • 放心营销网站开发网站收录不好
  • 如何拥有自己的私人网站平台自己做电影网站怎么赚钱
  • 做电影电视剧网站推广中国石油建设工程协会网站
  • 网站开发的工作职责杭州做网站哪家便宜
  • 网站建设注册小程序html5电影网站源码php
  • 朝阳做网站网银网站建设银行
  • 合肥建设集团信息网站建设部网站监理工程师
  • 手机建立一个免费网站wordpress应用案例
  • 网站建设叁金手指花总6网站建设哪家公司好网站建设
  • 成都网站建设著名公司app制作软件公司
  • 南京网站推广价格shopex网站首页空白
  • 网站上的搜索怎么做网站建设的方案模板下载
  • 网页游戏网站大全突袭在线代理的网站
  • 一家公司做两个网站吗辅助购卡网站怎么做
  • 游戏网站怎么建设萍乡网站建设行吗
  • 南昌网站搜索排名wordpress分类删不掉
  • 深圳设计网站有限公司合肥网站网站建设
  • 网站优化排名分享隐迅推关键词优化seo优化排名
  • 做哪个网站卖一手房比较好手机搜索引擎排名
  • 怎么在建设银行网站挂号app管理系统
  • 郑州新闻上海网站搜索引擎优化
  • 云南做网站哪家好厦门市建设区网站首页
  • 南昌哪个网站建设比较好如何在网上销售产品
  • 网站体验调查问卷怎么做wordpress有后台吗