小视频app开发过程中关于转码问题的经验总结

  • 时间:
  • 浏览:0
  • 来源:大发5分3D_大发5分3D官方

       H.264码流主要分Annex-B和AVCC或多或少格式,而硬件解码只接受Annex-B格式的码流,统统在解码MP4 Demux出的视频流时,需要解析extradata,取出sps和pps,通过CSD(Codec-Specific Data)来初始化解码器;而且将AVCC码流转换为Annex-B,在ffmpeg中使用h264_mp4toannexb_filter或hevc_mp4toannexb做转换。

其其实小视频app开发的过程中,转码对于普通的用户来说是看不见摸不着的,但它其实是短视频SDK中的有一有4个重要过程。统统在开发过程中怎么才能 才能 也能

      3.硬件解码时间戳不准确的疑问

在开启硬件编解码后,实现过程中需要注意哪此?下面接着来讲一下实现过程中会遇到的疑问。

1.    调整软件编码的编码参数

2.    开启硬件编码和解码

       开启硬件编码后,对比画质可需要发现转码后的图像质量较差。导致 而且在使用API时,挑选的是CBR即固定码率,它的好处是码率比较稳定而且容易牺牲画质,统统CBR更适用于移动直播场景。没办法 在短视频的应用场景下,挑选VBR即动态比特率会获得更好的图像质量。

      1.   图像质量疑问

一般转码的时间大要素后要被视频的编码占用,在保证画质不想出现较大影响的前提下可需要将编码参数进行调整,可需要节省百分之三十或以上的编码时间。

      2.   硬件解码与码流格式不兼容

使转码过程耗时更短、转码后图像的质量更高和减少开发和维护成本,哪此也是众多软件开发商十分关注的。

小视频app开发过程中,转码的时延有无够快也是众多软件开发商十分关心的有一有4个方面。机会转码的时间过长,就会造成用户的产品体验非常差。为了处里用户体验差,就需要了解相关的疑问所在。统统今天来给一群人简单分享一下,关于转码时延方面的几点经验总结。

       硬解码器解码视频到Surface,而且通过SurfaceTexture.getTimestamp()获得的时间戳何必 准确,会出现情况表异常。统统还是要使用解码输入的时间戳,将解码过程由异步转为同步,机会将pts存储到队列中来实现。

这里先来说一下硬件编码的缺点:在Android端,硬件编码的兼容性比较差,而且相比起来硬件编码的压缩比要低于软件编码。说到硬件编码的优点,就十分显而易见了。硬件编码器的时延快,而且占用的资源相对较少。硬件解码的兼容性比起硬件编码来说会好统统,统统使用硬件解码可需要节省软件解码的时间开销。