srs录制视频时间戳有点问题

srs2或者srs3目前最新的版本和之前的版本,使用dvr功能录制flv文件。
使用本地播放器,如ffplay、potplayer、vlc、KMP和MPV等,都是正常的播放完整视频。
但是使用web flash播放器,都会遇到一个问题,对于大多数录制发flv文件,最后几秒钟播放不出来。
我测试过flv.js、video.js、cyberplayer、dplayer、flowplayer、jwplayer、neplayer、strobe、sewise、网易、百度等,
外加我自己用as3.0写的flash 播放器等诸多方案,都是播放不完整。

但是经过flvmeta -U或者-k修复后,基本上都可以完整播放了。由此推测是flv metadata信息和播放器不兼容。
用flv header分析工具查看,看起来没啥问题。比较困惑。
同样遇到问题的,还有srs群里的其他开发者:

在srs的issue里面也提到了这个问题:

但是今天遇到一个web播放器却可以完整播放-cuplayer

看代码也是video.js改版而来。有机会研究一下看看。

http://www.cuplayer.com/cuplayer/help/Help410.html

同一个文件,修复前:

$flvmeta -r bad.flv
{
    'width': 640
    'height': 360
    'videodatarate': 0
    'framerate': 30
    'audiodatarate': 0
    'audiosamplerate': 16000
    'audiosamplesize': 16
    'stereo': false
    'author': 'Jeffer'
    'service': 'SRS/2.0.247(ZhouGuowen)'
    'filesize': 886665
    'duration': 15.518
}

修复后:

 $ flvmeta -r good.flv
{
    'hasMetadata' => true
    'hasVideo' => true
    'hasAudio' => true
    'duration' => 15.619
    'lasttimestamp' => 15.518
    'lastkeyframetimestamp' => 15.159
    'width' => 640
    'height' => 360
    'videodatarate' => 376.225470581
    'framerate' => 24.6494653947
    'audiodatarate' => 62.1023473014
    'audiosamplerate' => 44100
    'audiosamplesize' => 16
    'stereo' => false
    'filesize' => 887531
    'videosize' => 756782
    'audiosize' => 127073
    'datasize' => 1143
    'metadatacreator' => 'flvmeta 1.2.1'
    'metadatadate' => Fri, 28 Dec 2018 14:05:29 +0800
    'audiocodecid' => 10
    'videocodecid' => 7
    'audiodelay' => 0
    'canSeekToEnd' => false
    'hasCuePoints' => false
    'cuePoints' => [
    ]
    'hasKeyframes' => true
    'keyframes' => {
        'times': [
            0
            0.079
            0.676
            1.324
            1.925
            2.522
            3.113
            3.78
            4.361
            4.957
            5.557
            6.162
            6.766
            7.359
            7.964
            8.572
            9.163
            9.778
            10.379
            10.977
            11.579
            12.165
            12.775
            13.354
            13.963
            14.56
            15.159
        ]
        'filepositions': [
            1126
            1211
            29490
            61842
            95910
            127295
            159701
            191618
            222317
            253650
            287278
            322568
            358992
            398205
            440079
            477691
            517690
            557115
            595044
            629137
            660857
            694796
            729066
            765104
            797166
            826118
            860260
        ]
    }
}

 

posted @ 2018-12-28 13:55  水上云天  阅读(2419)  评论(0编辑  收藏  举报