视频平台在进行视频传输时,有必要对视频及音频进行编码,让视频流适合于实际存储和传输,压缩数据量,降低传输数据码率。数据压缩的目的是在传送和处理信息时,尽量减小数据量与信息量的关系。
因此我们可以看到在EasyDSS视频平台中,上传的点播视频都会有视频编码和音频编码一栏,代表已经进行过编码了。
但是我们看到上图中的编码并不是规范编码,尽管在使用上并没有明显的感受差别,但是在视觉上体验不够正式,那么如何处理这种不规范编码?
问题分析解决
在点击视频点播中的列表展示时,列表信息中的视频编码和音频编码不规范,因为ffmpeg在解析视频的时候,返回的视频编码和音频编码都是小写的,所以只能够在golang代码层来进行转换。
case "h265": vod.VideoCodec = consts.VideoH265 case "h264": vod.VideoCodec = consts.VideoH264 case "hevc": vod.VideoCodec = consts.VideoHevc case "vp9": vod.VideoCodec = consts.VideoVp9 case "vp8": vod.VideoCodec = consts.VideoVp8 case "mpeg4": vod.VideoCodec = consts.VideoMpeg4 default: vod.VideoCodec = info.VideoDecodec } switch info.AudioDecodec { case "aac": vod.AudioCodec = consts.AudioAac case "mp3": vod.AudioCodec = consts.AudioMp3 case "opus": vod.AudioCodec = consts.AudioOpus default: vod.AudioCodec = info.AudioDecodec }
规范之后显示如图,编码格式更加详细: