我有一个mkv文件没有有效的持续时间。我想手动更改这个持续时间参数。我看了一下在http://www.matroska.org/technical/specs/index.html上定义的matroska规范
看看matroska的规范,它只包含识别魔术数字,但这并不指定数据的长度。
如何解析这个matroska标头,以便得到工期字段并更改此字段?
发布于 2014-11-01 09:24:07
持续时间字段的类型为浮动。根据文档,它可以是4或8个八位数。要知道它的大小,您必须查看字段的数据大小部分。数据大小部分使用UTF-8类系统.这是解释这里。
发布于 2018-05-14 15:09:09
您可以使用ff探头获取.mkv文件的持续时间:
$ ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 input.mkv
5012.640000发布于 2022-10-27 20:08:01
Matroska使用EBML (语言)作为基础。EBML元素使用可变大小的整数,因此仅仅更改数字并不简单。您可以使用FFmpeg重新修改MKV,这将重写具有正确持续时间的标头。
https://stackoverflow.com/questions/26687711
复制相似问题