浏览所有指南

视频播放指南

MP4, MKV, WebM 和视频编解码器解释

简短的答案: MP4、MKV和WebM是包含视频、音频和有时字幕的容器。 H.264,HEVC,VP9和AV1是压缩内部视频的编解码器。 只有在播放器和设备支持容器、编解码器、配置文件、分辨率和音频组合时,才能成功播放。 仅仅是熟悉的文件扩展名不能保证兼容性。

容器与编解码器

将容器视为一个包,编解码器则是用于其中的轨道的编码方法。 MP4 可能包含带有 AAC 音频的 H.264 视频。 MKV 可能包含 HEVC 视频、Opus 音频和多个字幕轨道。 因此,具有相同扩展名的两个文件可能需要不同的解码器功能。

进行故障排除时,请确定视频编解码器、音频编解碼器、配置文件、分辨率、帧速率和位深度,而不仅仅是扩展名。 Vidorec 使用设备和播放引擎报告的信息对支持和受限制的播放进行分类。

常见视频编解码器

H.264 AVC 仍然广泛兼容。 HEVC H.265 可以在可比视觉质量的前提下减小文件大小,但支持因配置文件、硬件和许可路径而异。 VP9在WebM和在线媒体中很常见。 AV1 更新且更有效率,但在最新设备上,硬件解码可用性远远强于旧手机。

Android 的平台表提供版本级基准,但制造商可能会添加格式,并且在最大分辨率、配置文件、HDR 和性能方面仍有所不同。 平台版本是 API 基线的证据,而不是承诺每个文件形状都能在每台手机上工作。

音频和字幕是单独的轨道

视频可能在其音频编解码器不受支持的情况下正确渲染,或者在视频解码失败时可能播放音频。 多音频文件需要轨道选择器。 嵌入式字幕在容器内部移动; 外部 SRT 或 WebVTT 文件是独立的,需要正确的时间和文本编码。

如果字幕漂移,请使用时间偏移,而不是重新编码整个视频。 如果字幕显示错误的字符,请验证字幕文件的文本编码。 如果没有显示嵌入轨道,请显式添加匹配的外部文件。

当文件无法播放时该怎么办

首先阅读具体的错误。 尝试另一个音轨,禁用可选效果,在本地复制远程文件或测试来自同一源的低分辨率样本。 只有当设备明显缺乏所需的解码器时才转换。 MP4 中带有 AAC 音频的 H.264 视频是实际兼容性目标,但转换可能需要时间并且可能会降低质量。

  • 不支持的容器:重新组合或转换为受支持的包。
  • 不支持的视频编解码器:转码视频轨道。
  • 不支持音频编解码器:选择或转换音轨。
  • 性能问题:降低分辨率、帧速率或比特率。
  • HDR/显示器不匹配:必要时使用兼容的 SDR 版本。

常见问题

常见问题

MKV比MP4更好吗?

两者都不是普遍更好的选择。 MKV是灵活的多轨; MP4是广泛互操作的。 编解码器和目标设备比扩展本身更重要。

Android 是否支持 AV1?

AV1 解码支持是 Android 10 平台基线的一部分。 对必需的 AV1 编码器和解码器的支持从 Android 14 开始。 实际设备功能和性能仍有所不同。

更改文件扩展名可以修复播放吗?

通常不会。 重命名不会改变容器结构或编解码器。 当底层媒体不兼容时,需要重混或转码。

官方消息来源

Android:支持的媒体格式 Android:MediaMuxer 编解码器和容器表

相关应用程序

媒体播放器 - Vidorec

查看详情
免费下载在Google Play上获取即将推出在应用商店下载