Я пытаюсь написать небольшую программу на C ++, которая перекодирует видео кадр за кадром, и я использую функции libvlc_video_set_callbacks и libvlc_video_set_format_callbacks для достижения этой цели.
Первая функция работает нормально, но я не уверен, как реализовать libvlc_video_set_format_callbacks.
Я попробовал это таким образом, чтобы начать с, но это дает мне ошибку аргумента для «установки»:
int setup(void* pUserData, char *chroma, unsigned int *width, unsigned int *height, unsigned int *pitches, unsigned int *lines)
{
(void) pUserData;
return 1;
}
libvlc_video_set_format_callbacks(mp, setup, cleanup);
Следующее, что я действительно не знаю, как установить правильные свойства видео формата.
Не могли бы вы помочь мне с этой установочной функцией или хотя бы указать на пример, который показывает, как ее реализовать, поскольку я не нашел ее?
Как вы можете себе представить, я не очень опытный программист, поэтому, пожалуйста, будьте терпеливы со мной;)
заранее спасибо
liblv_video_set_format_callbacks
Второй аргумент имеет тип libvlc_video_format_cb
, который является следующим typedef:
typedef unsigned(* libvlc_video_format_cb)(void **opaque, char *chroma, unsigned *width, unsigned *height, unsigned *pitches, unsigned *lines);
Мы можем видеть две разницы с вашим setup
функция:
void**
, Твое void*
,unsigned
, Твое int
,Я не знаю ни о свойствах видео формата. Таким образом, я не смогу дать вам никаких указаний на это.
Других решений пока нет …