视频学习 ---------如何获取Mp4某个box下面的数据

来源:互联网 发布:黑客远控软件 编辑:程序博客网 时间:2024/05/17 22:50

学习是需要积累的,是需要记录的,非常的抱歉,这么久都没有记录我学习的过程了。今天记录的是获取MP4视频下某个特定Box的数据。首先大致介绍下MP4下面的box组成。

结构图如下:

这是在PC端用工具打开的,从这个可以看到MP4里面主要有4个主Box,分别是 ftyp、frea、mdat、moov,今天讲的事如何获取moov box下面的次级Box数据。

想要获取里面的数据有几种方式,我所知道的第一种就是从视频文件的头往后面算偏移量,一个box一个的偏移就可以找到想要的数据,但是这有个弊端,那就是不是所有的MP4视频都是这样的结构,很多都是把moov box放在了第二个位置,今天介绍的是第二种方式,那就是使用 ISOPaser 来实现直接获取定点box里面的数据。

去网上下载ISOPaser的jar包,获取是添加依赖都可以使用他了,

isoFile = new IsoFile(url);MovieBox moov = isoFile.getBoxes(MovieBox.class).get(0);UnknownBox box = moov.getBoxes(UnknownBox.class).get(0);
很简单的几句代码,其他的你都会了,这样就可以快速简单的获取想要的数据了,不过输出的数据要记得转换成你要的格式或者是字符编码。

阅读全文
1 0