MP4Box获取MP4媒体文件的播放时长
最近开始对流媒体进行深入了解, 发现里面真是太复杂了, 真是很佩服做流媒体的朋友, 废话不多说, 最近接触MP4Box这个开源库,进行MP4文件的解析, 刚接触找不到MP4文件播放时长的参数, 按说不应该的, 将参数信息输出查看, 发现
CMp4_root_box.moov.mvhd.duration这个参数按字面意思理解应该是播放时长了, 我的测试文件值为5759754, 可是实际播放时长为63秒, 但是其他参数更没有符合的了, 这么基本的参数不可能不给出吧, 那么换一个媒体文件进行测试, 这次得出的值为74600, 实际播放时长为74秒, 这次差不多对上了, 仔细检查发现还有个参数对其有影响, CMp4_root_box.moov.mvhd.timescale, 最终测试发现CMp4_root_box.moov.mvhd.duration * 1000 / CMp4_root_box.moov.mvhd.timescale得出的值为媒体文件的最终播放时长, 单位为毫秒, 为了以防忘记, 特此记录一下.
808, 905部标流媒体开源项目:https://github.com/Car-eye-team QQ群: 590411159
MP4Box获取MP4媒体文件的播放时长相关推荐
- java 使用mediainfo_使用mediainfo工具统计每个视频文件(媒体文件)播放时长
需求 1.运营那边需要统计大量视频文件的播放时长,并汇总记录到excel表中,问我有什么方法搞定 这边搜索了很多统计媒体文件时长的,主要有以下几种 1.使用java获取 2.使用python获取 3. ...
- java 上传mp3文件大小,Java获取音频文件(MP3)的播放时长
最近的一个项目需要按照时间播放mp3文件,例如,播放10分钟的不同音乐. 这就意味着我得事先知道mp3文件的播放时长,以决定播放几遍这个文件. 方案一:Java的方式 找第三方的库,真的感谢这些提供j ...
- Android 播放raw文件夹下音频文件,本地MP3文件播放,播放云端MP3文件,获取MP3文件播放时长
1.复制音频文件到raw文件夹下 2.实例化音频文件 private final MediaPlayer.OnCompletionListener beepListener = new MediaPl ...
- C# 获取视频文件播放时长
以前是用xp (32位)系统,获取视频文件长度是通过调用Shell32.dll来读取文件信息得到的,最近换win7(32位)系统,编译以前的项目代码发现无法读取了,代码没有改动,拿到在xp下运行也不行 ...
- 视频剪辑工具,巧用分割视频批量改变视频的播放时长
如何通过分割视频来改变视频的播放时长,比如:将一个视频平均或者随机分成几小段,这样时长就变短了.至于如何实现呢?下面随小编一起来试试. 导入多段视频 进入媒体梦工厂,在"分割视频" ...
- php 获取视频首帧,PHP获取视频的第一帧与时长
//获得视频文件的缩略图 function getVideoCover($file,$time,$name) { if(empty($time))$time = '1';//默认截取第一秒第一帧 $s ...
- 音频通道数、采样频率、采样位数、采样个数(样本数)的概念及计算一帧音频的大小、每秒播放的音频字节大小、一帧的播放时长、音频重采样
对于下面data和linesize的解释(参考下面3.4中的av_samples_alloc_array_and_samples函数说明): 1)data是通道的意思,例如双通道,data[0]代表左 ...
- iOS端video标签跳转播放时长黑屏
iOS 端 video 标签跳转播放时长黑屏 目录 iOS 端 video 标签跳转播放时长黑屏 描述 需求 方案 思路 解决 描述 环境:微信公众号网页 设备:ios 端 场景:video 标签通过 ...
- nodejs读取本地mp3、mp4等媒体文件并播放
本文主要讲解读取本地mp3文件并播放的案例 1.fs是必不可少的文件模块 // 首先引入fs模块 const fs = require("fs") 2.使用fs读取本地媒体文件 l ...
- java获取音频_java获取音频文件播放时长
方法一: 在项目开发过程中,需要获取音视频文件时长.查询资料后发现 JAVE能够完美得到想要的结果,JAVE项目简介如下: The JAVE (Java Audio Video Encoder) li ...
最新文章
- java perl_在Java中调用Perl脚本
- Material Design之ActionBar、ToolBar
- 【Android 应用开发】 自定义 圆形进度条 组件
- 如何在 Flutter 中禁用默认的 Widget 飞溅效果
- JavaScript中随着鼠标拖拽而移动的块
- LeetCode_链表类
- android获取3g或wifi流量信息,Android代碼----android獲取3G或wifi流量信息
- 【转】贝塞尔曲线介绍
- linux服务器无法登录,linux服务器账号密码正确无法登录-Go语言中文社区
- java控制台打印输出改个颜色吧
- Python中Image缩放、旋转、翻转等操作
- linux删除文件历史如何查看,如何恢复误删除的Linux文件
- python b站弹幕分析_【python】B站弹幕数据分析及可视化(爬虫+数据挖掘)
- 明尼苏达大学双城分校计算机科学,UMN的Computer Science Engineering「明尼苏达大学双城分校计算机科学与工程系」...
- 服务器系统怎么恢复出厂设置,华为服务器2288恢复出厂设置
- 《LoRaWAN网络服务器演示:概要描述(R1.0)》部分翻译
- 报计算机用几寸照片,在电脑显示的2寸照片的大小是几×几?
- centos设置root免密自动登陆
- 数据库—Mysql相关
- 从软件工程师到IT猎头
热门文章
- linux添加变色龙引导,变色龙引导界面屏蔽多余盘符并默认启动Mac _ 黑苹果乐园...
- java将jfif格式转换成ipg_无需工具直接将jfif格式图片批量修改为jpg格式图片的方法...
- 在 ABT 节点部署 RPG 制作大师游戏指南 | ArcBlock 博客
- r5驱动 索尼exmor_为画质插上翅膀 详解索尼Exmor R CMOS
- python 类的执行中保部存值_VisualFoxPro的报表文件.FRX中保存的是______。
- 深入游戏变速底层原理以及内核变速的实现
- 电驴v1.2.2.45574最新版官方下载
- 免费电子书籍--网址
- IE6 浏览器常见兼容问题
- 深入贯彻落实 Activity 的四种启动模式