[vlc-devel] [PATCH 10/24] opengl: expose GenTextures() and DelTextures()
Alexandre Janniaux
ajanni at videolabs.io
Tue Jan 28 16:51:27 CET 2020
Hi,
Nit but maybe we can rename them into more usual
GenerateTextures/DeleteTextures instead of following
OpenGL convention if they get prefixed by vlc_ and exposed?
Regards,
--
Alexandre Janniaux
Videolabs
On Mon, Jan 27, 2020 at 09:20:00PM +0100, Romain Vimont wrote:
> These util functions will be called from other files.
> ---
> modules/video_output/opengl/interop.h | 9 +++++++++
> modules/video_output/opengl/vout_helper.c | 23 +++++++++++++----------
> 2 files changed, 22 insertions(+), 10 deletions(-)
>
> diff --git a/modules/video_output/opengl/interop.h b/modules/video_output/opengl/interop.h
> index dbdacc766b..db8f77ec48 100644
> --- a/modules/video_output/opengl/interop.h
> +++ b/modules/video_output/opengl/interop.h
> @@ -160,6 +160,15 @@ vlc_gl_interop_New(struct vlc_gl_t *gl, const opengl_vtable_t *vt,
> void
> vlc_gl_interop_Delete(struct vlc_gl_interop *interop);
>
> +int
> +vlc_gl_interop_GenTextures(const struct vlc_gl_interop *interop,
> + const GLsizei *tex_width,
> + const GLsizei *tex_height, GLuint *textures);
> +
> +void
> +vlc_gl_interop_DelTextures(const struct vlc_gl_interop *interop,
> + GLuint *textures);
> +
> static inline int
> opengl_interop_init(struct vlc_gl_interop *interop, GLenum tex_target,
> vlc_fourcc_t chroma, video_color_space_t yuv_space)
> diff --git a/modules/video_output/opengl/vout_helper.c b/modules/video_output/opengl/vout_helper.c
> index 892da547f0..34194cf815 100644
> --- a/modules/video_output/opengl/vout_helper.c
> +++ b/modules/video_output/opengl/vout_helper.c
> @@ -337,10 +337,10 @@ static GLuint BuildVertexShader(const opengl_tex_converter_t *tc,
> return shader;
> }
>
> -static int
> -GenTextures(const struct vlc_gl_interop *interop,
> - const GLsizei *tex_width, const GLsizei *tex_height,
> - GLuint *textures)
> +int
> +vlc_gl_interop_GenTextures(const struct vlc_gl_interop *interop,
> + const GLsizei *tex_width,
> + const GLsizei *tex_height, GLuint *textures)
> {
> interop->vt->GenTextures(interop->tex_count, textures);
>
> @@ -373,8 +373,9 @@ GenTextures(const struct vlc_gl_interop *interop,
> return VLC_SUCCESS;
> }
>
> -static void
> -DelTextures(const struct vlc_gl_interop *interop, GLuint *textures)
> +void
> +vlc_gl_interop_DelTextures(const struct vlc_gl_interop *interop,
> + GLuint *textures)
> {
> interop->vt->DeleteTextures(interop->tex_count, textures);
> memset(textures, 0, interop->tex_count * sizeof(GLuint));
> @@ -817,8 +818,8 @@ vout_display_opengl_t *vout_display_opengl_New(video_format_t *fmt,
>
> if (!interop->handle_texs_gen)
> {
> - ret = GenTextures(vgl->prgm->tc->interop, vgl->tex_width, vgl->tex_height,
> - vgl->texture);
> + ret = vlc_gl_interop_GenTextures(vgl->prgm->tc->interop, vgl->tex_width,
> + vgl->tex_height, vgl->texture);
> if (ret != VLC_SUCCESS)
> {
> vout_display_opengl_Delete(vgl);
> @@ -1038,7 +1039,9 @@ vout_display_opengl_PrepareSubPicture(vout_display_opengl_t *vgl,
> if (!glr->texture)
> {
> /* Could not recycle a previous texture, generate a new one. */
> - int ret = GenTextures(interop, &glr->width, &glr->height, &glr->texture);
> + int ret = vlc_gl_interop_GenTextures(interop, &glr->width,
> + &glr->height,
> + &glr->texture);
> if (ret != VLC_SUCCESS)
> break;
> }
> @@ -1060,7 +1063,7 @@ vout_display_opengl_PrepareSubPicture(vout_display_opengl_t *vgl,
>
> for (int i = 0; i < last_count; i++) {
> if (last[i].texture)
> - DelTextures(interop, &last[i].texture);
> + vlc_gl_interop_DelTextures(interop, &last[i].texture);
> }
> free(last);
>
> --
> 2.25.0
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
More information about the vlc-devel
mailing list