当前位置: 首页 > 知识库问答 >
问题:

将vídeo从vp8转换为x264可输出不同长度的不同视频

廉志强
2023-03-14

我有一个webm文件(vp8编解码器)与2m: 39s的持续时间

使用ffmpeg-i视频。webm它说视频每秒15帧

nput#0, matroska, webm, from'video.webm':元数据:编码器: Lavf54.17.3持续时间:00:02:39.63,开始: 0.000000,比特率: 417 kb/s流#0:0:音频: vobis,44100 Hz,立体声, fltp(默认)流#0:1:视频: vp8, yuv420p(渐进),320x240, SAR 1:1 DAR 4:3,15 fps,15 tbr,1ktbn,1ktbc(默认)

我试图将设置转换为相同的帧速率,并添加到mp4容器中

$ x264 --output intermediate.264 --fps 15 --preset slow --bitrate 400 --vbv-maxrate 800 --vbv-bufsize 1600 --min-keyint 48 --keyint 48 --scenecut 0 --no-scenecut --pass 1 --video-filter "resize:width=426,height=240" video.webm

$ MP4Box -add intermediate.264 -fps 15 out.mp4

但是生成的文件out.mp4现在有2m: 57s持续时间

共有1个答案

匡晟
2023-03-14

因为你们是这一代人。从原始的.264转储文件中取出mp4文件。

以下是持续时间的简单计算:

原始帧数:2654

帧速率:每秒15帧

mp4文件的持续时间:2654/15=176.93333秒/60=2分钟56.93秒=~2分钟57秒

Webm文件的音频数据可能比视频帧少。所以它的持续时间比mp4文件短。

 类似资料:
  • 所以我有: 其中包含x个数组列表,其中包含另一个y个字符串...演示: 其中index是指包含字符串的数组索引。 如何将其转换为2D数组,该数组如下所示: 非常感谢你。

  • 最近,我们的客户注意到视频长度指标存在差异,因为似乎我们在YT和API调用中获得了2种不同的长度。 例如,我们从YouTube的API中获取了持续时间。(对于以下视频)CTM 1556 Google UAC CO 6s API响应显示7秒。 https://www.youtube.com/watch?v=eJoQaNXpcpI 在YouTube上我们看到长度是6秒: API文档 https://d

  • 问题内容: 我有不同长度的清单清单(例如),并想将其转换成整数数组。我了解多维数组中的“子”数组必须具有相同的长度。那么将上述示例中的列表转换成这样的数组(即用零完成)的最有效方法是什么? 问题答案: 您可以使用np.zeros创建一个numpy数组,并用列表元素填充它们,如下所示。 结果是

  • 问题内容: 所以我有: 其中包含x个ArrayList,其中包含另一个y个String。 其中index指的是包含字符串的数组索引。 如何将其转换为二维数组,如下所示: 非常感谢。 问题答案: 您的位置在哪里(或任何位置,请相应地更改循环内的第一行)

  • 我一直在努力解决RSA_verify的一个奇怪问题。我正在尝试使用C进行RSA签名,并使用C进行RSA验证。我已经使用OpenSSL命令生成了私钥和证书。 当我使用上面的消息,生成一个散列并使用RSA\u-sign对摘要进行签名时,我得到长度为256的签名(),并且RSA\u-sign返回的长度为256。我使用此长度进行验证,验证成功。 但是当我使用时,签名长度为60,RSA\u-sign返回25

  • 问题内容: 我正在尝试使用Java日期和日历来实现从一个时区到另一个时区的简单转换。我正在尝试运行以下代码 但这仍然返回相同的日期,而不是+1小时…整个问题似乎微不足道,但我找不到任何简单的答案。在此先感谢您的帮助。 问题答案: 当您使用来打印日期时, 返回的是,并且始终以本地时区打印日期。 相反,您可能要使用: