python读取多个文件夹中的音频文件_Python3.7 读取音频根据文件名生成脚本的代码...
Warning: 仅适用于文件名即字幕本体,按音频时常平均拆分来生成字幕,其他情况不适合。
以下为读取 mp3 文件夹下的音频,然后按市场,平均来生成字幕,例如文件名 a-pp-le.mp3,字幕也将是 a pp le 三行。
make_srt.py 代码
```python
import librosa
import os
g = os.walk(r"mp3")
def calTime(time):
sec = int(time)
micSec = time - sec
timeStr = ''
if (sec < 10):
timeStr += '0' + str(sec)
else:
timeStr += str(sec)
if micSec == 0:
timeStr += ',000'
else:
timeStr += ',' + str(round(micSec * 1000))
return timeStr
for path,dir_list,file_list in g:
for file_name in file_list:
filename = str('mp3/') + file_name
time = librosa.get_duration(filename = 'mp3/' + file_name)
split = file_name.strip('.mp3').split('-')
count = file_name.count('-') + 1
average = time / count
# y, sr = librosa.audioread('phonics_demo/' + file_name, sr=None)
# print(sr)
if count > 1:
for inx, val in enumerate(split):
# print(time)
f = open("srt/" + file_name + ".srt",'a')
f.write(str(inx + 1))
f.write('\n')
start = calTime((inx + 1) * average)
end = calTime((inx + 2) * average)
if inx == 0:
f.write("00:00:00,000" + " --> " + "00:00:" + start)
else:
f.write("00:00:" + start + " --> " + "00:00:" + end)
f.write('\n')
f.write(val)
f.write('\n\n')```
大概效果如下:
1
00:00:00,000 --> 00:00:01,659
a
2
00:00:01,659 --> 00:00:03,318
broad
在大量音频文件生成字幕之后,需要校对缺失的字幕,有个快速的手段(以Windows 10为例): 在 mp3 目录下,按住 Shift 键点击右键吊起 Powershell 命令行工具,输入ls > mp3.txt将整个目录的文件,一行行的输出到 mp3.txt,直接复制进一个Excel 的 Sheet1 A列中待用,同样的操作将 srt 文件中的目录复制到 Sheet2 A列中,然后批量将 .srt 替换为空,然后使用 Excel 提供的 vlookup 方法,在 Sheet1 B列 =IFERROR(VLOOKUP(A1,Sheet2!A:A,1,FALSE),""),未找到结果的在B列将填充空,筛选一下就知道哪个文件没生成字幕文件了。
总结
到此这篇关于Python3.7 读取音频根据文件名生成脚本的代码的文章就介绍到这了,更多相关Python3.7 读取音频文件名字幕脚本内容请搜索python博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持python博客!
python读取多个文件夹中的音频文件_Python3.7 读取音频根据文件名生成脚本的代码...相关推荐
- python找到文件夹下指定文件类型_python 读取指定文件夹中的指定文件类型的文件名...
C# 读取指定文件夹中的全部文件,并按规则生成SQL语句! 本实例的目的在于: 1 了解怎样遍历指定文件夹中的全部文件 2 控制台怎样输入和输出数据 代码: using System; using S ...
- r读取文件夹下的所有csv文件_[R语言]读取文件夹下所有子文件夹中的excel文件,并根据分类合并。...
解决的问题:需要读取某个大文件夹下所有子文件夹中的excel文件,并汇总,汇总文件中需要包含的2部分的信息:1.该条数据来源于哪个子文件夹:2.该条数据来源于哪个excel文件.最终,按照子文件夹单独 ...
- python从文件夹中提取指定文件_使用Python实现从各个子文件夹中复制指定文件的方法...
之前用来整理图片的小程序,拿来备忘,算是使用Python复制文件的一个例子. # -*- coding: utf-8 -*- #程序用来拷贝文件并输出图片采集日期等其他信息到Excel中 #文件夹结构 ...
- python打不开xls文件,wps下用vba实现合并文件夹中所有excel文件
python打不开xls文件,用wps下vba解决问题 用了常用的三种python读写xls文件的方法都报错 xlrd openpyxl pandas 原因 解决方法 用vba实现合并文件夹中所有ex ...
- Python学习:获取文件夹中最新的文件/文件夹
文章概述 获取最新修改文件 关于lambda的用法 os.path.getmtime用法 获取最新修改文件 获取文件夹中,最新修改过的文件或者文件夹 import os # 文件夹目录 path=&q ...
- 遍历文件夹中所有png文件(指定类型文件都可以)python代码
如果要遍历某个指定文件夹中所有指定文件类型(.tif /.png /.txt都可以)的文件,怎么快速遍历呢? 话不多说,以'.tif'文件为例,直接上代码 import numpy as np im ...
- C++ 如何将一个文件夹中的所有文件(.txt或者.log)内容整合到一个文件(.txt或者.log)当中
有时候我们希望读取一个文件夹中的所有文件,对各个文件中的数据按某种规则进行筛选,然后将筛选后的数据整合到一个文件中.这段时间正好替同事写了这一部分,在此记录下来自己的处理过程,如果有需要的朋友也可以参 ...
- 【java】删除文件夹及文件夹中的所有文件
需求 删除指定文件夹及文件夹中的所有文件. 环境 JDK 1.8 代码示例 在JDK 8中,可以使用java.nio.file.Files和java.nio.file.Path类来删除一个文件夹及其中 ...
- 如何把游戏BGM文件夹中的.bank文件转换为.wav或者.mp3
如何把游戏BGM文件夹中的.bank文件转换为.wav或者.mp3 百度没搜索到,自己去google了一下,找到了很好用的工具.首先感谢两位大哥,我这里只是搬运一下. 首先将bank文件提取为fab文 ...
最新文章
- 从源码分析DEARGUI之让table可以选中
- bzoj 2152 聪明可可
- blp模型 上读下写_CreditX在线借贷欺诈检测框架BLP
- kafka一键启动集群
- Android中的USB中的UsbAccessory和UsbDevice的区别
- 批处理(bat)文件中输出中文乱码怎么办?
- 使用AJAX时出现“Microsoft JScript 运行时错误: 'Sys' 未定义”提示的解决方法
- android炫酷动画源码,QQ菜单、瀑布流、二维码源码
- 【git】小甲鱼Git教程《极客Python之Git实用教程》笔记二
- 红月OD反汇编实时显示坐标,背景色可透明也可以不透明
- 线性光耦 和 非线性光耦
- 王者服务器维护5月1日,5月30日体验服停机更新公告
- awk 的内置变量 NF、NR、FNR、FS、OFS、RS、ORS
- RedHat 5 环境下 DHCP配置详解。
- Microsoft Help Viewer help查看器所需的内容文件缺失或者损坏 解决办法
- 【asm基础】nasm和masm的一些区别
- EIP712以太坊签名和验签
- 身为IT人你应该知道的几个威客网站【转】
- 【C#】System.MissingMethodException:Method not found: 'xxx.get_xxx()'
- 第一章 winds 安装区块链私链 geth并进行节点同步
热门文章
- 服务器后还有一系列留后门,服务器留隐蔽后门
- 计算机专业新手博客,本博客的标题不是“当初学者学习编程语言的时候在学什么?”...
- 【英语学习】【WOTD】thole 释义/词源/示例
- latext配置 vscode_新手关于在VScode上配置latex的事情
- jq 正则判断邮箱_Python正则15分钟入门
- pcp pmda mysql_linux下的mysql的安装
- 生成特定分布随机数的方法
- EL4.1配置文件管理浅谈(1)
- 室内温湿度监测系统解决方案
- Netrunner 2019.04 Rolling 版本发布