использование libvlc_video_set_format_callbacks для перекодирования видео по кадрам

Я пытаюсь написать небольшую программу на 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);

Следующее, что я действительно не знаю, как установить правильные свойства видео формата.

Не могли бы вы помочь мне с этой установочной функцией или хотя бы указать на пример, который показывает, как ее реализовать, поскольку я не нашел ее?
Как вы можете себе представить, я не очень опытный программист, поэтому, пожалуйста, будьте терпеливы со мной;)
заранее спасибо

1

Решение

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,

Я не знаю ни о свойствах видео формата. Таким образом, я не смогу дать вам никаких указаний на это.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]