准备工作
按前文所述方法 下载云存视频。
准备相关工具软件。
云存录像基础检查
使用 MediaInfo 打开视频文件即可看到基本信息。n
n单击视图 > 树状图 可以看到更为详细的信息。n
n通过这些信息可以对视频做基本检查,例如视频分辨率是否正确、帧率是否正常、音频流数据是否缺失等。云存录像时间异常问题
使用 EasyICE 打开视频,单击 数据包 标签页,找到任意几个连续的视频帧,计算它们的 pts 间隔是否正确。n
n如下图所示,从第180帧开始几个视频帧的 PTS 分别为 936000,938970,945000,947970,954000。n
nMPEG-TS 标准规定音视频要使用一个90KHz的相对时钟或绝对时钟进行同步,因此将它们换算成毫秒需要除以90,计算结果为:10400,10433,10500,10533,10600。n假设设备端的帧率为25fps,这几个时间戳虽然分布不均匀,但之间的差值基本在50ms左右,可以认为视频时间戳正常。同样地,音频帧也可以按照这种方式检查,但需要注意,云存会将所有音频非 aac 音频转换为 aac 格式,aac 每个音频帧为1024个采样点,假设音频采样率为44.1KHz,那么每个音频帧的时长为 1024/44100=0.02322s=23.22ms。
接下来检查音视频时间戳是否同步,随意找几个视频帧附近的音频,观察音频帧和视频帧的 PTS 误差是否过大。n
n如上图所示,这是第180帧之前的一个音频帧,PTS 为 898920 即 9988ms,和视频帧 10400ms 相差 412ms,这个误差有点大,但基本正常,一般来说误差在几百毫秒内都属于可接受范围。如果音视频之间的时间戳偏差过大,请在推流时检查时间戳是否正常。云存录像花屏问题
使用 Elecard StreamEye Tools 打开视频。n假设 GOP 为15帧,如图所示这里 I帧、P帧分布不均匀,明显有大量视频帧丢失,云存视频播放到这里就会花屏。n
n也可单击 View > Info > Headers > slice_header() 查看前后两帧的 frame_num 是否连续,如果不连续则有丢帧。n