网站未经授权推广别人的产品东阳网站建设公司
news/
2025/10/2 13:33:21/
文章来源:
网站未经授权推广别人的产品,东阳网站建设公司,银川网站开发制作,怎么下载网页视频前言
MP4文件由若干称为Atom#xff08;或称为box#xff09;的数据对象组成#xff0c;每个Atom的起首为四个字节的数据长度#xff08;Big Endian#xff09;和四个字节的类型标识#xff0c;数据长度和类型标志都可以扩展。Atom可以嵌套#xff0c;即其数据域可以由…前言
MP4文件由若干称为Atom或称为box的数据对象组成每个Atom的起首为四个字节的数据长度Big Endian和四个字节的类型标识数据长度和类型标志都可以扩展。Atom可以嵌套即其数据域可以由若干其它Atom组成从而实现结构化的数据。
MP4文件需要有ftyp、moov、mdat它们都是顶级Atom不能被其他Atom嵌套。
ftyp标示了MP4文件必须出现在第一个;moov保存了视频的基本信息mdat保存视频和音频数据。这两个Atom顺序不固定。
若要在视频文件未能被完整下载前即开始播放并能跳转到指定位置肯定要首先获知其 moov atom 信息。这也是 moov atom 存在的意义。
判断
通过FFmpeg工具可以查看
ffmpeg -v trace -i input.mp4 NUL 21 | grep -m 1 -o -e type:\mdat\ -e type:\moov\Python代码判断如下
import subprocess
def is_moov_ahead(video_path):判断视频文件的 moov atom 是否在文件头部。检查成功返回 bool否则返回 Nonecommand fffmpeg -v trace -i {video_path} NUL 21 | grep -m 1 -o -e type:\mdat\ -e type:\moov\try:child subprocess.Popen(command, shellTrue, stdoutsubprocess.PIPE, stderrsubprocess.PIPE)stdout, stderr child.communicate()if child.returncode 0:return (bmoov in stdout)except Exception:passreturn False调整 moov 位置
ffmpeg.exe -i input.mp4 -c copy -map 0 -movflags faststart output.mp4参考
MP4封装格式介绍 – Atom结构理解 MP4 moov atomUsing FFmpeg to locate moov atom
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/924950.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!