了解(并重新编码)持续时间并寻找.ogv文件?

时间:2015-01-26 03:24:15

标签: linux video ogg ogg-theora

我在Ubuntu 11.04上使用recordMyDesktop v0.3.8.1捕获我的会话的.ogv。完成后,我打开VLC媒体播放器中的.ogv 1.1.9 The Luggage;这是它的样子:

vlc-1.png

......值得注意的是,没有长度 - 此外,寻求是可怕的。

现在,有人可能会将此归咎于旧软件等 - 但随后,我下载了

http://archive.org/download/Elephants_Dream_teaser_2/elephantsdream_teaser.ogv

...并在相同版本的VLC中打开 - 并且看得见:

vlc-2.png

... VLC识别该文件的持续时间 ;另外,寻找工作相对较好!

因此,我尝试使用oggz-info比较这两个文件:

$ oggz-info ./out.ogv ./elephantsdream_teaser.ogv 
Filename: ./out.ogv
Content-Duration: 00:00:34.916

Skeleton: serialno 1766583216
    3 packets in 3 pages, 1.0 packets/page, 36.842% Ogg overhead
    Presentation-Time: 0.000
    Basetime: 0.000

Theora: serialno 0666666463
    842 packets in 56 pages, 15.0 packets/page, 0.593% Ogg overhead
    Theora-Version: 3.2.1
    Video-Framerate: 24.000 fps
    Video-Width: 640
    Video-Height: 480
------------------------------------------------------------
Filename: ./elephantsdream_teaser.ogv
Content-Duration: 00:01:15.228

Theora: serialno 3398283591
    1799 packets in 310 pages, 5.8 packets/page, 0.594% Ogg overhead
    Theora-Version: 3.2.1
    Video-Framerate: 24.000 fps
    Video-Width: 532
    Video-Height: 300

Vorbis: serialno 4073121151
    3295 packets in 76 pages, 43.4 packets/page, 0.821% Ogg overhead
    Audio-Samplerate: 44100 Hz
    Audio-Channels: 2

...我唯一能注意到的是:./out.ogv有一个骨架,但没有音频; ./elephantsdream_teaser.ogv没有骨架,但有音轨。我不认为音频是这里的主要区别,因为我已经将recordmydesktop带有音频,并且它们的行为相同 - 而且我也使用{{{{}}删除了这些视频中的骨架1}},VLC没有改进。

我知道:(Configuring servers for Ogg media - HTTP | MDN):

  

Ogg格式没有封装媒体的持续时间

Getting the length of a ogg track from s3 without downloading the whole file):

  

[获取长度]的方法是使用HTTP范围请求来获取文件的末尾,找到最后一个Ogg页面,并从中提取时间戳。

manpage: oggCut

  

视频流由I帧(全图)和P帧(对于前导I帧的delta图像)组成

Thundering Herd: Indexing keyframes in Ogg videos for fast seeking

  

当我们寻找目标时间的Ogg / Theora视频时,我们必须对文件执行二分搜索才能找到目标Theora视频帧...如果我们事先知道关键帧的位置,我们就不会# 39;不需要进行任何二分搜索

因此,oggCat out.ogvrecordmydesktop之间在VLC性能方面的差异必须与关键帧有关。所以我的问题是:

  • 我可以使用哪种工具,根据关键帧的存在和数量来检查这两个文件之间的差异?
  • 我可以使用哪种工具,将elephantsdream_teaser.ogv转换为VLC中表现相同的版本(显示持续时间,并且具有合理的搜索时间),如out.ogv所做的那样 - 希望没有任何损失重新编码?

0 个答案:

没有答案