vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Wed Jun 24 20:22:25 2015 +0300| [d9dd59cdc9c0afaca8ed704d2439d4fa4e447736] | committer: Rémi Denis-Courmont
picture: move picture_BlendSubpicture() to subpicture > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d9dd59cdc9c0afaca8ed704d2439d4fa4e447736 --- include/vlc_picture.h | 13 ------------- include/vlc_subpicture.h | 12 ++++++++++++ src/misc/picture.c | 22 ---------------------- src/misc/subpicture.c | 23 +++++++++++++++++++++++ 4 files changed, 35 insertions(+), 35 deletions(-) diff --git a/include/vlc_picture.h b/include/vlc_picture.h index d3e3b99..1e70a59 100644 --- a/include/vlc_picture.h +++ b/include/vlc_picture.h @@ -238,19 +238,6 @@ VLC_API int picture_Export( vlc_object_t *p_obj, block_t **pp_image, video_forma VLC_API int picture_Setup( picture_t *, const video_format_t * ); -/** - * This function will blend a given subpicture onto a picture. - * - * The subpicture and all its region must: - * - be absolute. - * - not be ephemere. - * - not have the fade flag. - * - contains only picture (no text rendering). - * \return the number of region(s) succesfully blent - */ -VLC_API unsigned picture_BlendSubpicture( picture_t *, filter_t *p_blend, subpicture_t * ); - - /***************************************************************************** * Shortcuts to access image components *****************************************************************************/ diff --git a/include/vlc_subpicture.h b/include/vlc_subpicture.h index dc977f6..e8471e0 100644 --- a/include/vlc_subpicture.h +++ b/include/vlc_subpicture.h @@ -203,6 +203,18 @@ VLC_API subpicture_t * subpicture_NewFromPicture( vlc_object_t *, picture_t *, v */ VLC_API void subpicture_Update( subpicture_t *, const video_format_t *src, const video_format_t *, mtime_t ); +/** + * This function will blend a given subpicture onto a picture. + * + * The subpicture and all its region must: + * - be absolute. + * - not be ephemere. + * - not have the fade flag. + * - contains only picture (no text rendering). + * \return the number of region(s) succesfully blent + */ +VLC_API unsigned picture_BlendSubpicture( picture_t *, filter_t *p_blend, subpicture_t * ); + /**@}*/ #endif /* _VLC_VIDEO_H */ diff --git a/src/misc/picture.c b/src/misc/picture.c index 6aa5b05..7d08c48 100644 --- a/src/misc/picture.c +++ b/src/misc/picture.c @@ -448,25 +448,3 @@ int picture_Export( vlc_object_t *p_obj, return VLC_SUCCESS; } - -unsigned picture_BlendSubpicture(picture_t *dst, - filter_t *blend, subpicture_t *src) -{ - unsigned done = 0; - - assert(src && !src->b_fade && src->b_absolute); - - for (subpicture_region_t *r = src->p_region; r != NULL; r = r->p_next) { - assert(r->p_picture && r->i_align == 0); - if (filter_ConfigureBlend(blend, dst->format.i_width, - dst->format.i_height, &r->fmt) - || filter_Blend(blend, dst, r->i_x, r->i_y, r->p_picture, - src->i_alpha * r->i_alpha / 255)) - msg_Err(blend, "blending %4.4s to %4.4s failed", - (char *)&blend->fmt_in.video.i_chroma, - (char *)&blend->fmt_out.video.i_chroma ); - else - done++; - } - return done; -} diff --git a/src/misc/subpicture.c b/src/misc/subpicture.c index 0eb9c47..300a7a0 100644 --- a/src/misc/subpicture.c +++ b/src/misc/subpicture.c @@ -272,3 +272,26 @@ void subpicture_region_ChainDelete( subpicture_region_t *p_head ) } } +#include <vlc_filter.h> + +unsigned picture_BlendSubpicture(picture_t *dst, + filter_t *blend, subpicture_t *src) +{ + unsigned done = 0; + + assert(src && !src->b_fade && src->b_absolute); + + for (subpicture_region_t *r = src->p_region; r != NULL; r = r->p_next) { + assert(r->p_picture && r->i_align == 0); + if (filter_ConfigureBlend(blend, dst->format.i_width, + dst->format.i_height, &r->fmt) + || filter_Blend(blend, dst, r->i_x, r->i_y, r->p_picture, + src->i_alpha * r->i_alpha / 255)) + msg_Err(blend, "blending %4.4s to %4.4s failed", + (char *)&blend->fmt_in.video.i_chroma, + (char *)&blend->fmt_out.video.i_chroma ); + else + done++; + } + return done; +} _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
