如何将 .mkv 文件转换为 .mp4 并保留字幕?

如何将 .mkv 文件转换为 .mp4 并保留字幕?

我一直试图将 .mkv 文件转换为 .mp4。使用 VLC 时字幕丢失了。

然后我一直在尝试ffmpeg

ffmpeg -i video.mkv -codec copy video.mp4

转换速度非常快,文件大小几乎相同,但字幕也丢失了。

答案1

由于 mp4 容器无法容纳字幕,因此字幕丢失。

将所有内容复制到“mov”容器中的最简单方法,它非常接近 mp4 容器:

ffmepg -i 01.mkv -acodec copy -vcodec copy -scodec copy output.m4v

答案2

我发现一个答案经过莫库拜超级用户上的这个问题

我相信您需要指定音频和字幕流的映射以确保全部复制其中的一部分,而不是第一个。为此,您需要-map 0:a? -map 0:s? -map 0:v-c:v

这应该使你的命令

ffmpeg -i "01.mkv" -map 0:a? -map 0:s? -map 0:v -c:v copy -c:a ac3 -c:s copy "test.mkv"

map 命令用于告诉它您确实希望将那些内容拉到输出。-map 0:a:1将指定仅复制音频流编号 1,同时-map 0:a?应该有效地对其进行通配符处理并复制它们全部。

它起作用了,但是 .mp4 文件更大。

答案3

作为一个 GUI,ffmpeg有这个工具:媒体转换器

但是由于有 mkv 内置字幕,我必须编辑字幕编解码器并更改为mov_tex

在此处输入图片描述

相关内容