Java使用JAVE获取MP4播放时长】的更多相关文章

最近有一个用java获取mp3播放时长的需求,有两种,一种本地文件,一种网络文件,其中获取网络mp3播放时间的方法找了挺久终于找到个能用的了. 第一种很简单,下载个jar包  jaudiotagger.jar File file = new File("C:\\music\\test2.mp3"); try { MP3File f = (MP3File)AudioFileIO.read(file); MP3AudioHeader audioHeader = (MP3AudioHeade…
1 Shell32 //添加引用:COM组件的Microsoft Shell Controls And Automation //然后引用 using Shell32; //如果出现“无法嵌入互操作类型 请改用适用的接口”报错————修改引用里面的shell32属性嵌入互操作类型改为false public static string GetMP3FileDurationAll(string fileName) { ShellClass sh = new ShellClass(); Folder…
我们先看一段代码,获取mp3播放时长: #region GetMediaDetailInfo 获取媒体文件属性信息 /// <summary> /// 获取媒体文件属性信息 /// </summary> /// <param name="path">媒体文件具体路径</param> /// <param name="icolumn">具体属性的顺序值(-1简介信息 1文件大小 21时长 22比特率)<…
方法一: 在项目开发过程中,需要获取音视频文件时长.查询资料后发现 JAVE能够完美得到想要的结果,JAVE项目简介如下: The JAVE (Java Audio Video Encoder) library is Java wrapper on the ffmpeg project. Developers can take take advantage of JAVE to transcode audio and video files from a format to another. I…
最近的一个项目需要按照时间播放mp3文件,例如,播放10分钟的不同音乐. 这就意味着我得事先知道mp3文件的播放时长,以决定播放几遍这个文件. 方案一:Java的方式 找第三方的库,真的感谢这些提供jar包的高手,找到一个项目:jaudiotagger. try { MP3File file = new MP3File("E:\\music\\光辉岁月.mp3"); MP3AudioHeader audioHeader = (MP3AudioHeader)file.getAudioHe…
引用: Interop.Shell32.dll 方法: /// <summary> /// 获取媒体文件播放时长 /// </summary> /// <param name="path">媒体文件路径</param> /// <returns></returns> public static string GetMediaTimeLen(string path) { try { Shell32.Shell she…
需求 1.运营那边需要统计大量视频文件的播放时长,并汇总记录到excel表中,问我有什么方法搞定 这边搜索了很多统计媒体文件时长的,主要有以下几种 1.使用java获取 2.使用python获取 3.使用mediainfo工具获取 由于自己对java刚懂点基础,要琢磨几天才能写出来,而python代码下载的第三方模块运行时总是报错.一时半会无法解决 最终采用mediainfo工具 1.下载和安装mediainfo工具 这边下载使用的mediainfo工具是1.8版本的  2.简单使用此工具查看一…
一.简单介绍 gif动画是iOS开发中很常用的一个功能,有的是为了显示加载视频的过程,更多的是为了显示一个结果状态(动画更直观). 那么如何执行gif动画,方法有很多.(这里只写一下方法三,前两种之前都用过) 方法一使用UIWebView来显示: 方法二使用UIImageView的帧动画显示: 方法三使用SDWebImage这个三方框架来显示. 二.简单使用 1.显示gif动画(三方框架SDWebImage的UIImage+GIF分类) #import "UIImage+GIF.h"…
问题: 把视频放到本地,然后对视频进行测试,想要控制视频或者音频的播放时长,没办法做到,每次拉动进度条,都会使得本地视频重新播放 原因: 所有浏览器默认js无法访问本地地址,也就是说js不能对本地文件进行任何修改,假如js可以随意修改文件,那将无法想像浏览网页带来巨大的安全威胁 那,如何解决这个问题呢? 把视频.图片.音频文件存放在 网盘上,通过网盘放出的url接口进行数据的访问,这就可以控制网盘上的视频的时长 推荐网盘工具:https://www.qiniu.com/ 七牛云…
android当中获取视频音频的时长,我列举了三种. 1:获取视频URI后获取cursor cursor.getLong(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DURATION)); 2:根据MediaPlayer获取: MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setDataSource(url); mediaPlayer.prepare(); mediaP…
需要导入jar包:jave 1.0.2 jar 如果是maven项目,在pom.xml文件中添加: <dependency> <groupId>it.sauronsoftware</groupId> <artifactId>jave</artifactId> <version>1.0.2</version> </dependency> 具体代买如下: /** * 音频文件获取文件时长 * @param sour…
一.什么是启动时长? 1.启动时长一般包括三种场景,分别是:新装包的首次启动时长,冷启动时长.热启动时长 冷启动 和 热启动 : (1)冷启动:当启动应用时,后台没有该程序的进程,此时启动的话系统会分配一个新的进程给应用. (2)热启动:程序的进程依然存在,启动时通过已有进程启动进入到Activity显示页面的,就是热启动,或者从Android官网来看我们获取到的其实是温启动时长,就是Activity不存在的情况. (3)新装包的启动时长: 新装包的启动时长,预估是最长的,并且在5.0以下及5.…
File source = new File("视频.mp4"); Encoder encoder = new Encoder(); try { MultimediaInfo info = encoder.getInfo(source); System.out.println("dura="+info.getDuration()); Date date = new Date(info.getDuration()); SimpleDateFormat sdf = ne…
利用PHP中的FFmpeg读取视频播放时长与码率等信息   function getVideoInfo($file) {    define('FFMPEG_PATH', '/usr/local/ffmpeg2/bin/ffmpeg -i "%s" 2>&1');   $command = sprintf(FFMPEG_PATH, $file);      ob_start();   passthru($command);   $info = ob_get_content…
http://www.evernote.com/l/AHPMEDnEd65A7ot_DbEP4C47QsPDYLhYdYg/ 日志:   1.第一种方法:   调用:shell32.dll ,win7下可以,window2008 r2 服务器上 不行.(原因不知道,有可能是声卡驱动没有安装?) //添加引用:COM组件的Microsoft Shell Controls And Automation 引用shell32底层接口c:windows\system32\shell32.dll,vs自动转…
前言: 上传音频文件,自动写入此音频文件的时长,这里用 COM组件Microsoft Shell Controls And Automation来实现. 首先 1.引用:Microsoft Shell Controls And Automation 注意:这里是1.0版本的,有的使用的是1.2版本的,如果1.0的有问题,请换成1.2的 2.代码如下 string strFileName = FileHelper.MapPath(linkUrl);//linkUrl是上传到服务器的路径 strin…
所需包为jaudiotagger-2.2.6-SNAPSHOT.jar和jl1.0.1.jar. import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import org.jaudiotagger.audio.AudioFileIO; import org.jaudiotagger.audio.mp3.MP3AudioHeader; import org.jaudiota…
<div id="a1"></div> <div id="nowTime"></div> <script type="text/javascript" src="/ckplayer/6.6/ckplayer.js"></script> <script type="text/javascript"> function load…
<div id="player-con" class="frequency-pic"></div> <link rel="stylesheet" href="https://g.alicdn.com/de/prismplayer/2.8.2/skins/default/aliplayer-min.css" /> <script charset="utf-8" src…
  setTimeout(function () { var vid = document.getElementById("videoIntro"); var currentTime=vid.currentTime.toFixed(1); if(currentTime==1.2){ //触发 return false; } console.log(currentTime); getvideoprogress(); }, 1000); function getvideoprogress(…
CREATE OR REPLACE FUNCTION DIFFHOURTIME_WITHOUTHOLIDAY_FUN ( STARTTIME ), ENDTIME ) ) RETURNS DOUBLE LANGUAGE SQL NOT DETERMINISTIC EXTERNAL ACTION READS SQL DATA INHERIT SPECIAL REGISTERS -------------------------------------------------------------…
import subprocess import os import time def getTime(flvpath,fid): #file_str = '1.flv' file_str = flvpath wg = subprocess.Popen(['ffmpeg.exe', '-i', file_str], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) (standardout, junk) = wg.communicate() an…
首先引用COM组件:Microsoft Shell Controls And Automation,需要引用1.2版本的,1.0的会出问题. 这里需要注意DLL的属性Embed Interop Type 即 嵌入互操作类型 设为False,否则会引起互操作类型异常. 代码: string strFileName = Server.MapPath("~/00125ca6293e6109161b6fa91d03473a.mp3"); string dirName = System.IO.P…
1.在项目中添加引入:COM组件的Microsoft Shell Controls And Automation 2.在引用中找到Shell32,点击右键,在属性中将“嵌入互操作类型”的值改为“false” 3.代码 public static string GetVoiceTime(string voicePath)//voicePath为语音文件路径 { string path = HttpContext.Current.Server.MapPath(voicePath);//将虚拟路径转换…
#region customizeTime ) sec = " + mediaElement.Position.Seconds.ToString(); else sec = mediaElement.NaturalDuration.TimeSpan.Seconds.ToString(); ) min = " + mediaElement.NaturalDuration.TimeSpan.Minutes.ToString(); else min = mediaElement.Natura…
前言: 今天接到一个需求,需要获取某个.mp3音频文件的时间长度和指定音频audio在某个时间点进行播放(比如说这个视频有4分钟,我要让它默认从第2秒的时候开始播放),这里当然想到了H5中的audio元素,当然我们平时看这个标签上显示的音频时间是时:分:秒的格式的因此需要涉及到秒和时间格式的转化.通过查阅了网上的一些资料,最终完美的把这些功能点做好了.这里分享一下,希望能够帮助有需要的小伙伴. 获取音频时长: function getAudioDuration(src) { let audio…
毕设项目是一个在线学习系统,教师用户有上传视频的功能,在答辩之前赶了一个demo出来,好多功能都写死了,比如课程学习进度就是被我写死在前端的一个变量,最近导师要我把项目打包发给他,这才心慌慌赶紧把这些功能补上.不知道正规的学习网站怎么做的学习进度,根据我的理解就是用户已经观看的视频时长除以整个课程的时长,这里就涉及到获取视频的时长问题了. 除了在maven中添加文件上传所需的依赖外,获取视频时长还依赖一个jave(注意啊,不是java,我最开始就是看成了java,一脸懵逼)的jar包,这个包在m…
前言 前段时间公司在做流媒体服务,与许多厂家合作拿了许多视频过来,现在要对这些视频文件进行整理,通过特殊的编码排列,获取他们的时长以及分辨率,这里我遇到一个大坑,请往下面看. # -*- coding: utf-8 -*- import os import sys import shutil import subprocess import json def getLength(filename): command = ["ffprobe.exe","-loglevel&qu…
参考资料:获取时长 var fileName = $("#sectionfileUpload").val(); //C:\fakepath\3.jpeg var exts = fileName.split('.'); var ext = ""; if (exts != undefined) { if (exts.length <= 1 && fileName.indexOf('=')>-1) {//直接输入上传到azure之后生成的文件地…