我有一个mp3文件,我想基本上绘制出该音频样本中存在的振幅频谱。我知道如果我们有一个wav文件,我们可以很容易地做到这一点。有很多python软件包可用于处理wav文件格式。但是,我不想将文件转换为wav格式,然后存储然后使用。我要实现的目标是直接获取mp3文件的幅度,即使我必须将其转换为wav格式,脚本也应该在运行时进行广播,而无需实际将文件存储在数据库中。我知道我们可以像下面这样转换文件:
from pydub import AudioSegment
sound = AudioSegment.from_mp3("test.mp3")
sound.export("temp.wav", format="wav")
Run Code Online (Sandbox Code Playgroud)
并创建了预期的temp.wav,但是我们可以仅使用内容而不存储实际文件吗?
我正在编写一个 LLVM 传递,需要获取传递给声明函数的值并将其打印出来。请注意,声明的函数在 LLVM IR 中被调用。
我编写了一个模块传递来迭代程序中的所有指令。获取指令中被调用函数的参数的片段如下:
for (auto &B: F){
for (auto &I: B){
if (auto *InvokeI = dyn_cast <InvokeInst>(&I)) {
if (InvokeI->getCalledFunction()->getName().str() == "function_name") {
errs() << "===\n";
errs() << *(InvokeI->getOperand(0)) <<"\n";
errs() << *(InvokeI->getOperand(1)) <<"\n";
errs() << *(InvokeI->getOperand(2)) <<"\n";
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,如果被调用函数的 LLVM IR 看起来像这样:
invoke void @function_name(i8* %4, i8* bitcast (i8** @_ZTIi to i8*), i8* null) #5
to label %36 unwind label %6
Run Code Online (Sandbox Code Playgroud)
然后我上面的代码片段输出:
%4 = call i8* @__cxa_allocate_exception(i64 4) #2
i8* bitcast (i8** …
Run Code Online (Sandbox Code Playgroud) 我有一个通过rtsp协议流式传输的远程摄像头,我试图使用python和以下代码在OpenCV 2.13.1中访问它.
camera = cv2.VideoCapture("rtsp://admin:<port>@<ip>/xyz/video.smp")
Run Code Online (Sandbox Code Playgroud)
但是,当我这样做时,我收到以下警告
WARNING: Couldn't read movie file rtsp://admin:<port>@<ip>/xyz/video.smp
Run Code Online (Sandbox Code Playgroud)
我也试过这样做:
camera = cv2.VideoCapture.open("rtsp://admin:<port>@<ip>/xyz/video.smp")
Run Code Online (Sandbox Code Playgroud)
但是当我这样做时,我收到此错误:
`AttributeError: 'builtin_function_or_method' object has no attribute` 'open'
Run Code Online (Sandbox Code Playgroud)
我确实搜索了很多关于这个问题,但无法得到适合我的想法.任何帮助,将不胜感激.