ftyp是MP4文件的第一个Box,包含了视频文件使用的编码格式、标准等,下面是一段定义和MP4文件头的解析
- int len;
- byte[] ftype = new byte[4];
- byte[] majorBrand = new byte[4];
- int fversion;
- byte[] compatibleBrands = new byte[12];
- public static void main(String[] args) throws Exception {
- int len;
- byte[] ftype = new byte[4];
- byte[] majorBrand = new byte[4];
- int fversion;
- byte[] compatibleBrands = new byte[12];
-
- InputStream in = new FileInputStream("F:\\测试文件\\video\\testKongBu.mp4");
- //len
- byte[] b = new byte[4];
- in.read(b);
- len = Array.bytesToInt(b);//byte[]转int 下同
-
- //ftype
- in.read(ftype);
- //majorBrand
- in.read(majorBrand);
- //fversion
- in.read(b);
- fversion = Array.bytesToInt(b);
- //compatibleBrands
- in.read(compatibleBrands);
-
- System.out.println("len\t\t=\t"+len);
- System.out.println("ftyp\t\t=\t"+new String(ftype));
- System.out.println("majorBrand\t=\t"+new String(majorBrand));
- System.out.println("fversion\t=\t"+fversion);
- System.out.println("compatibleBrands=\t"+new String(compatibleBrands));
-
- in.close();
- }
附:
byte[]转int代码 MP4默认是网络字节序(高字节序)
测试文件:
链接:https://pan.baidu.com/s/1lFrIJqI5TzQAhLH1SOGMDQ
提取码:u98c