php f4v元数据,[AS3]视频播放器处理flv,mp4,f4v元数据的问题

元数据用途:

元数据在代码中的作用就是向编译器提供如何编译程序的信息,专门给编译器用的,说白了是告诉编译器做某些事情, 就Bindable来讲,它的作用是告诉flex编译器,给某些东西建立绑定关系,flex编译器会在编译过程中给AS加事件发生和处理的代码。

自定义元数据

元数据是可以自定义的,在"additional compiler arguments(附加的编译器参数)"中添加 "-keep-as3-metadata = Meta1,Meta2", 注意,使用逗号来分隔不同的元数据标签。

方法1

从mvhd - movie header atom中找到time scale和duration,duration除以time scale即是整部电影的长度。

time scale相当于定义了标准的1秒在这部电影里面的刻度是多少。

例如audio track的time scale = 8000, duration = 560128,所以总长度是70.016,video track的time scale = 600, duration = 42000,所以总长度是70

方法2

首先计算出共有多少个帧,也就是sample(从sample size atoms中得到),然后整部电影的duration = 每个帧的duration之和(从Time-to-sample atoms中得出)

例如audio track共有547个sample,每个sample的长度是1024,则总duration是560128,电影长度是70.016;video track共有1050个sample,每个sample的长度是40,则总duration是42000,电影长度是70

[mp4文件格式]获取mp4文件信息2 - 计算电影图像宽度和高度

从tkhd – track header atom中找到宽度和高度即是。

[mp4文件格式]获取mp4文件信息3 - 计算电影声音采样频率

从tkhd – track header atom中找出audio track的time scale即是声音的采样频率。

[mp4文件格式]获取mp4文件信息6 - 查找sample

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值