[原]通过配合ffmpeg.exe获取视频文件时长
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()
ans = str(standardout)
num = ans.find("Duration:")
out = ans[num+10:num+18]
fid.write(file_str + "<| time is |>" + out)
fid.write("\r\n") def getFileName(path, warp):
#f_list = os.listdir(path)
#rootdir = os.getcwd()
rootdir = path
logname = warp[1:] + '_log.txt'
fid = open(logname, 'w')
for (dirpath, dirnames, filenames) in os.walk(rootdir):
for filename in filenames:
pathname = os.path.join(dirpath, filename)
if os.path.splitext(pathname)[1].lower() == warp:
getTime(pathname,fid) fid.close() if __name__ == "__main__":
print("Begin time: " + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
rootdir = "D:\\mooc\\视频资料"
warp = ".flv"
getFileName(rootdir, warp)
warp = ".mp4"
getFileName(rootdir, warp)
print("End time:" + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
[原]通过配合ffmpeg.exe获取视频文件时长的更多相关文章
- 以springMVC为例获取上传视频文件时长
毕设项目是一个在线学习系统,教师用户有上传视频的功能,在答辩之前赶了一个demo出来,好多功能都写死了,比如课程学习进度就是被我写死在前端的一个变量,最近导师要我把项目打包发给他,这才心慌慌赶紧把这些 ...
- Shell32.ShellClass服务器操作系统无法获取 音频文件时长问题
前言: 上传音频文件,自动写入此音频文件的时长,这里用 COM组件Microsoft Shell Controls And Automation来实现. 首先 1.引用:Microsoft Shell ...
- java 获取音频文件时长
需要导入jar包:jave 1.0.2 jar 如果是maven项目,在pom.xml文件中添加: <dependency> <groupId>it.sauronsoftwar ...
- java读取视频文件时长
1.下载jar包:http://www.sauronsoftware.it/projects/jave/index.php 2.上代码 @RequestMapping(value = "am ...
- PHP如何获取视频总时长与码率等信息
利用PHP中的FFmpeg读取视频播放时长与码率等信息 function getVideoInfo($file) { define('FFMPEG_PATH', '/usr/local/ff ...
- C#获取mp3文件时长、解决发布到服务器无法使用问题
首先引用COM组件:Microsoft Shell Controls And Automation,需要引用1.2版本的,1.0的会出问题. 这里需要注意DLL的属性Embed Interop Typ ...
- C#中获取音频文件时长
1.在项目中添加引入:COM组件的Microsoft Shell Controls And Automation 2.在引用中找到Shell32,点击右键,在属性中将“嵌入互操作类型”的值改为“fal ...
- JAVA通过URL链接获取视频文件信息(无需下载文件)
最近项目碰到一个大坑:APP上需要在获取视频列表时就获取视频的时长,但早期上传的时候数据库都没有保存这个数据,所以前段时间添加一个时长字段,在上传时手动输入视频时长,但是之前库中有上万条数据没这个信息 ...
- js 获取上传视频的时长、大小、后缀名
参考资料:获取时长 var fileName = $("#sectionfileUpload").val(); //C:\fakepath\3.jpeg var exts = fi ...
随机推荐
- hmtl弹出框样式
@model Web.Manager.Models.SendMessage @{ ViewBag.Title = "消息发布"; Layout = null;} <link ...
- DIY的.net正则表达式工具
基本包括了常用的正则表达式测试工作. 对应.net Framework 2.0版本 VB.NET编写 百度网盘下载:http://pan.baidu.com/s/1eQAHnlo 包含源码. 在下一个 ...
- 魅蓝note2在ubuntu14.04下mtp模式无法自动mount的解决方法
是因为新机型没在列表里的原因. 处理方法如下: As far as I know, MTP works fine in Trusty. You can try this: Uncomment #use ...
- 页面动态table动态合并table
function hebingRows(col, atrrb) { var trs = $("table tbody tr"); var rows = 1; for (var i ...
- Norflash控制器的Verilog建模之一
摘要:今天驱动一款SPANSION公司生产的norflash——S29AL032D70,没有别的参考资料,大致了解一下norflash的内部cmos电路架构以及其用途之后,直接看手册吧. 如何看手册: ...
- window7下使用vagrant打造lamp开发环境(二)
上一节我们基本把软件跟系统环境,以及连接虚拟机给配置好了,下面我们将要进行开发环境的搭建(lamp) 这里安装其实很简单,因为我们用的centos,所以很大一部分安装都是通过yum安装 关于yum的详 ...
- 学习FFmpeg API
ffmpeg是编解码的利器,用了很久,以前看过dranger 的教程,非常精彩,受益颇多,是学习ffmpeg api很好的材料.可惜的是其针对的ffmpeg版本已经比较老了,而ffmpeg的更新又很快 ...
- javascrip小笔记
function getCookie(name) {//获取name为 var arr, reg = new RegExp("(^| )" + name + "=([^; ...
- Android基础开发文档汇总
一.Android 基本组件 1. Android中PackageManager使用示例 : http://blog.csdn.net/qinjuning/article/details/68678 ...
- 【原创】android内存管理-hprof文件
转载请注明出处 http://www.cnblogs.com/weiwangnuanyang/p/5703702.html 如果只是想确定一下某一个场景是否有内存泄漏,AndroidStadio的控制 ...