2010-10-02 66 views
2

我一直在使用OpenCV under python来记录来自捕获设备的视频。两个输出AVI是每小时编写的,每小时的顶部都会更改文件名称。其中一个文件是原始捕获,一个使用OpenCV的一些检测功能。将音频添加到由OpenCV生成的视频

一如既往,事情变化,音频需要记录,这本来不是一个问题。我想知道如果有人对如何最好地做到这一点有任何建议。目前的想法是使用pyaudio单独记录音轨,然后在小时完成记录后使用ffmpeg将它们复合在一起,但我确实有一些担心保持精确的唇形同步。

我想知道如果有人有任何更好的想法如何做到这一点准确,没有明显的差距在录音?

回答

1

pyaudio模块可能适合您的需求,它是一个包装aoungportaudio。 MacOSX上,这个黑客安装portaudio libray:

svn co https://www.portaudio.com/repos/portaudio/trunk portaudio 
cd portaudio/ 
./configure 
make 
sudo make install 
sudo /usr/bin/install -c -m 644 -m 644 ./include/pa_mac_core.h /usr/local/include/pa_mac_core.h 
sudo easy_install pyaudio 

检查他们的网站:http://people.csail.mit.edu/hubert/pyaudio/

+1

是的,pyaudio是我到目前为止所使用的,我只是想知道如果分开做,然后再加入是一个很好的解决方案 – Duncan 2010-10-14 08:03:34

+0

伟大的指示!修复了我原来的pyaudio安装失败。然而,稍微改变是使用“https://subversion.assembla.com/svn/portaudio/”作为URL,因为你提供的那个不适合我。 – frakman1 2016-03-21 18:23:26

+0

很高兴帮助!我想知道我是否会在6年后以同样的方式做到这一点(没有输入''svn''命令多年!):-) – meduz 2016-03-21 21:55:31

0

由于没有更好的解决方案上来,柜面其使用别人的,我已经和我原来的打算使用PyAudio计划和录制声音。

我实际上使用的是使用POpen调用stdout和stderr管道的mencoder,然后使用一些正则表达式来检查工作是否成功,并且我为我的应用程序实现了足够好的结果,尽管音频有时候是一两帧。

+1

嗨邓肯! 你介意共享音频/视频同步录制代码吗? 非常感谢! Steve – 2011-02-27 15:48:58

+0

[email protected] – 2011-02-27 15:49:27

+0

嗨史蒂夫,害怕,尽管这适用于短时间录音,但在同步运行几个小时后,唇舌会趋于漂移,并且我一直能够找到目前为止的原因。 – Duncan 2011-04-18 19:50:14