История изменений
Исправление i-rinat, (текущая версия) :
а теперь вопрос знатокам: что vaapi знает про этот постпроцессинг? а нихрена оно не знает
Знает, знает.
va_vpp.h
* The video processing API uses the same paradigm as for decoding: * - Query for supported filters; * - Set up a video processing pipeline; * - Send video processing parameters through VA buffers. * * \section api_vpp_caps Query for supported filters * * Checking whether video processing is supported can be performed * with vaQueryConfigEntrypoints() and the profile argument set to * #VAProfileNone. If video processing is supported, then the list of * returned entry-points will include #VAEntrypointVideoProc. * * \code * VAEntrypoint *entrypoints; * int i, num_entrypoints, supportsVideoProcessing = 0; * * num_entrypoints = vaMaxNumEntrypoints(); * entrypoints = malloc(num_entrypoints * sizeof(entrypoints[0]); * vaQueryConfigEntrypoints(va_dpy, VAProfileNone, * entrypoints, &num_entrypoints); * * for (i = 0; !supportsVideoProcessing && i < num_entrypoints; i++) { * if (entrypoints[i] == VAEntrypointVideoProc) * supportsVideoProcessing = 1; * } * \endcode
Это из ветки staging. Если не нравится — в VDPAU постпроцессинг есть. Там большая часть — это постпроцессинг.
получить из yuvного выхлопа текстуру нельзя, охрененный геморрой
Не знаю, про VAAPI ли ты тут, или про XvBA, но в VAAPI поверхность в текстуру перевести можно (vaCopySurfaceGLX).
Исходная версия i-rinat, :
а теперь вопрос знатокам: что vaapi знает про этот постпроцессинг? а нихрена оно не знает
Знает, знает.
va_vpp.h
* The video processing API uses the same paradigm as for decoding: * - Query for supported filters; * - Set up a video processing pipeline; * - Send video processing parameters through VA buffers. * * \section api_vpp_caps Query for supported filters * * Checking whether video processing is supported can be performed * with vaQueryConfigEntrypoints() and the profile argument set to * #VAProfileNone. If video processing is supported, then the list of * returned entry-points will include #VAEntrypointVideoProc. * * \code * VAEntrypoint *entrypoints; * int i, num_entrypoints, supportsVideoProcessing = 0; * * num_entrypoints = vaMaxNumEntrypoints(); * entrypoints = malloc(num_entrypoints * sizeof(entrypoints[0]); * vaQueryConfigEntrypoints(va_dpy, VAProfileNone, * entrypoints, &num_entrypoints); * * for (i = 0; !supportsVideoProcessing && i < num_entrypoints; i++) { * if (entrypoints[i] == VAEntrypointVideoProc) * supportsVideoProcessing = 1; * } * \endcode
Это из ветки staging. Если не нравится — в VDPAU постпроцессинг есть. Там большая часть — это постпроцессинг.
получить из yuvного выхлопа текстуру нельзя, охрененный геморрой
Не знаю, про VAAPI ли ты тут, или про XvBA, но в VAAPI поверхность в текстуру перевести можно.