最近开始对流媒体进行深入了解, 发现里面真是太复杂了, 真是很佩服做流媒体的朋友, 废话不多说, 最近接触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媒体文件的播放时长相关推荐

  1. java 使用mediainfo_使用mediainfo工具统计每个视频文件(媒体文件)播放时长

    需求 1.运营那边需要统计大量视频文件的播放时长,并汇总记录到excel表中,问我有什么方法搞定 这边搜索了很多统计媒体文件时长的,主要有以下几种 1.使用java获取 2.使用python获取 3. ...

  2. java 上传mp3文件大小,Java获取音频文件(MP3)的播放时长

    最近的一个项目需要按照时间播放mp3文件,例如,播放10分钟的不同音乐. 这就意味着我得事先知道mp3文件的播放时长,以决定播放几遍这个文件. 方案一:Java的方式 找第三方的库,真的感谢这些提供j ...

  3. Android 播放raw文件夹下音频文件,本地MP3文件播放,播放云端MP3文件,获取MP3文件播放时长

    1.复制音频文件到raw文件夹下 2.实例化音频文件 private final MediaPlayer.OnCompletionListener beepListener = new MediaPl ...

  4. C# 获取视频文件播放时长

    以前是用xp (32位)系统,获取视频文件长度是通过调用Shell32.dll来读取文件信息得到的,最近换win7(32位)系统,编译以前的项目代码发现无法读取了,代码没有改动,拿到在xp下运行也不行 ...

  5. 视频剪辑工具,巧用分割视频批量改变视频的播放时长

    如何通过分割视频来改变视频的播放时长,比如:将一个视频平均或者随机分成几小段,这样时长就变短了.至于如何实现呢?下面随小编一起来试试. 导入多段视频 进入媒体梦工厂,在"分割视频" ...

  6. php 获取视频首帧,PHP获取视频的第一帧与时长

    //获得视频文件的缩略图 function getVideoCover($file,$time,$name) { if(empty($time))$time = '1';//默认截取第一秒第一帧 $s ...

  7. 音频通道数、采样频率、采样位数、采样个数(样本数)的概念及计算一帧音频的大小、每秒播放的音频字节大小、一帧的播放时长、音频重采样

    对于下面data和linesize的解释(参考下面3.4中的av_samples_alloc_array_and_samples函数说明): 1)data是通道的意思,例如双通道,data[0]代表左 ...

  8. iOS端video标签跳转播放时长黑屏

    iOS 端 video 标签跳转播放时长黑屏 目录 iOS 端 video 标签跳转播放时长黑屏 描述 需求 方案 思路 解决 描述 环境:微信公众号网页 设备:ios 端 场景:video 标签通过 ...

  9. nodejs读取本地mp3、mp4等媒体文件并播放

    本文主要讲解读取本地mp3文件并播放的案例 1.fs是必不可少的文件模块 // 首先引入fs模块 const fs = require("fs") 2.使用fs读取本地媒体文件 l ...

  10. java获取音频_java获取音频文件播放时长

    方法一: 在项目开发过程中,需要获取音视频文件时长.查询资料后发现 JAVE能够完美得到想要的结果,JAVE项目简介如下: The JAVE (Java Audio Video Encoder) li ...

最新文章

  1. java perl_在Java中调用Perl脚本
  2. Material Design之ActionBar、ToolBar
  3. 【Android 应用开发】 自定义 圆形进度条 组件
  4. 如何在 Flutter 中禁用默认的 Widget 飞溅效果
  5. JavaScript中随着鼠标拖拽而移动的块
  6. LeetCode_链表类
  7. android获取3g或wifi流量信息,Android代碼----android獲取3G或wifi流量信息
  8. 【转】贝塞尔曲线介绍
  9. linux服务器无法登录,linux服务器账号密码正确无法登录-Go语言中文社区
  10. java控制台打印输出改个颜色吧
  11. Python中Image缩放、旋转、翻转等操作
  12. linux删除文件历史如何查看,如何恢复误删除的Linux文件
  13. python b站弹幕分析_【python】B站弹幕数据分析及可视化(爬虫+数据挖掘)
  14. 明尼苏达大学双城分校计算机科学,UMN的Computer Science Engineering「明尼苏达大学双城分校计算机科学与工程系」...
  15. 服务器系统怎么恢复出厂设置,华为服务器2288恢复出厂设置
  16. 《LoRaWAN网络服务器演示:概要描述(R1.0)》部分翻译
  17. 报计算机用几寸照片,在电脑显示的2寸照片的大小是几×几?
  18. centos设置root免密自动登陆
  19. 数据库—Mysql相关
  20. 从软件工程师到IT猎头

热门文章

  1. linux添加变色龙引导,变色龙引导界面屏蔽多余盘符并默认启动Mac _ 黑苹果乐园...
  2. java将jfif格式转换成ipg_无需工具直接将jfif格式图片批量修改为jpg格式图片的方法...
  3. 在 ABT 节点部署 RPG 制作大师游戏指南 | ArcBlock 博客
  4. r5驱动 索尼exmor_为画质插上翅膀 详解索尼Exmor R CMOS
  5. python 类的执行中保部存值_VisualFoxPro的报表文件.FRX中保存的是______。
  6. 深入游戏变速底层原理以及内核变速的实现
  7. 电驴v1.2.2.45574最新版官方下载
  8. 免费电子书籍--网址
  9. IE6 浏览器常见兼容问题
  10. 深入贯彻落实 Activity 的四种启动模式