首先,为令人困惑的标题道歉。
我想要实现的是以下内容:假设我有foo一个函数,它接受一个函数和一个整数作为输入。例如
int foo(int(*func)(), int i) {
int n = func() + i;
return n;
}
Run Code Online (Sandbox Code Playgroud)
现在,我想将此函数包装在 python 扩展模块中。所以我开始编写我的界面:
#include <Python.h>
extern "C" {
static PyObject* foo(PyObject* self, PyObject* args);
}
static PyMethodDef myMethods[] = {
{"foo", foo, METH_VARARGS, "Runs foo"},
{NULL, NULL, 0, NULL}
}
// Define the module
static struct PyModuleDef myModule = {
PyModuleDef_HEAD_INIT,
"myModule",
"A Module",
-1,
myMethods
};
// Initialize the module
PyMODINIT_FUNC PyInit_BSPy(void) {
return PyModule_Create(&myModule);
}
//Include the function
static PyObject* …Run Code Online (Sandbox Code Playgroud) 我正在尝试将带有黑条的视频转换为没有黑条的视频,如果源是 4k,我希望将视频转换为 1080p
现在要执行此操作,我使用以下命令:*
ffmpeg -i input ... -filter:v "crop=..." -filter:V "scale=1920:-1" ouput
Run Code Online (Sandbox Code Playgroud)
但运行这个,我发现最终产品仍然有黑条,并且是 1920x1080,而不是我期望的 1920x800。
是什么给出了,为什么这不起作用?
*:为方便起见,省略了其他设置。