Python中的视频和音频处理库
在Python中,有哪些视频/音频库可以用来识别视频录制中的特定音频模式呢?
我想从视频文件中排除录制的开头部分(跳过到特定的音频模式),所以我需要一种方法来:
- 从文件的开头开始扫描
- 识别音频模式(一段总是相同的音乐)
- 从那个点开始录制/复制剩下的视频录制。
视频详情
格式:- Real Media(不过这没关系,因为我可以把它转换成其他格式)
时长:- 从18分钟到24分钟不等
使用媒体信息工具分析其中一个视频,得到以下信息:
Video
ID : 1
Format : RealVideo 4
Codec ID : RV40
Codec ID/Info : Based on AVC (H.264), Real Player 9
Duration : 19mn 18s
Bit rate : 195 Kbps
Width : 332 pixels
Height : 248 pixels
Display aspect ratio : 4:3
Frame rate : 23.976 fps
Bits/(Pixel*Frame) : 0.099
Stream size : 27.0 MiB (84%)
Audio
ID : 0
Format : Cooker
Codec ID : cook
Codec ID/Info : Based on G.722.1, Real Player 6
Duration : 19mn 20s
Bit rate : 32.0 Kbps
Channel(s) : 2 channels
Sampling rate : 44.1 KHz
Bit depth : 16 bits
Stream size : 4.43 MiB (14%)
原始问题:
前几天我重温了动画系列《龙珠Z》,对我手上的视频感到有些烦恼。每集大约24分钟,每集都有前一集的回顾和结束音乐,总共大约6到8分钟。
我注意到每个视频在回顾结束时都有相同的音频,接着是视频的新标题。我把这个音频录制成了一个单独的文件。
我想问问在Python中有没有办法通过编程做到以下几点:
扫描音频,匹配录制的标题音频,以知道实际视频开始的确切时间。
从那个点开始保存视频。
我不知道这样做的难度如何,所以请告诉我这是否可能。
如果你能告诉我任何提供这些工具的库,并给我一些建议该怎么做,我将非常感激。
非常感谢!
1 个回答
3
据我所知,语音识别(它还可以提供一些底层功能,比如比较两个声音的相似度)在Python中只能通过Windows库或者Dragon Naturally Speaking API来实现。
一旦找到标记,你可以使用一些外部库,比如这个或者这个,根据需求来剪辑视频。
补充一下:谷歌搜索还找到了pyofa,这是一个围绕musicip-libofa的封装库,而musicip-libofa是一个声纹库。