问题描述
我有大约 60 个音频文件,其名称中带有部分时间戳。这些名称是由录音系统自动创建的,如下所示
201106_0099.wav
201106_0100.wav
201106_0101.wav
.
.
.
201106_0163.wav
文件位于以日期(yymmdd)、开头和结尾的小时、分钟和秒(HHMMSS)命名的文件夹中,就像
Audios_201106_063044_190708
每个音频文件正好有 11 分 38 秒。
在终端中使用 stat 命令和 zsh 我得到,对于第一个文件,我得到关于记录开始时间的信息:
my_name@Air-of-My_Name Audios_201106_063044_190708 % stat 201106_0099.wav
16777221 1381621 -rw-rw-r-- 1 my_name staff 0 67032620 "Mar 4 21:11:14 2021" "Nov 6 06:30:44 2020" "Mar 4 12:06:13 2021" "Nov 6 06:30:44 2020" 4096 130928 0 201106_0099.wav
使用 ffmpeg,我可以获得有关录制持续时间的信息:
my_name@Air-of-My_Name Audios_201106_063044_190708 % ffmpeg -i 201106_0099.wav
ffmpeg version 4.3.2 Copyright (c) 2000-2021 the FFmpeg developers
built with Apple clang version 12.0.0 (clang-1200.0.32.29)
Guessed Channel Layout for Input Stream #0.0 : mono
Input #0,wav,from '201106_0099.wav':
Duration: 00:11:38.26,bitrate: 768 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001),48000 Hz,mono,s16,768 kb/s
几乎与我从 SoX 获得的信息相同
my_name@Air-of-My_Name Audios_201106_063044_190708 % soxi 201106_0099.wav
Input File : '201106_0099.wav'
Channels : 1
Sample Rate : 48000
Precision : 16-bit
Duration : 00:11:38.26 = 33516288 samples ~ 52369.2 CDDA sectors
File Size : 67.0M
Bit Rate : 768k
Sample Encoding: 16-bit Signed Integer PCM
我想用完整的时间戳批量重命名它们,就像
0099_yyyymmdd-HHMMSS.wav。
使用 unix、SoX 甚至 Python,什么是解决我的问题的好方法,也许是“瑞士军刀”?感谢期待。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)