[vlc-devel] [vlc-commits] filter_chain: uniform filter_chain_Append{Converter, Filter} return type
Thomas Guillem
thomas at gllm.fr
Sat Jul 1 20:01:21 CEST 2017
On Sat, Jul 1, 2017, at 19:30, Rémi Denis-Courmont wrote:
> Le 1 juillet 2017 18:24:48 GMT+02:00, Victorien Le Couviour--Tuffet
> <git at videolan.org> a écrit :>> vlc | branch: master | Victorien Le Couviour--Tuffet
>> <victorien.lecouviour.tuffet at gmail.com> | Fri Jun 23 10:24:16 2017
>> +0200| [40bd2515d996a4b9c47b2199fac61a9fdea310bb] | committer: Thomas
>> Guillem
>>>>
>>
>> filter_chain: uniform filter_chain_Append{Converter,Filter}
>> return type
>>>>
>>
>>> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=40bd2515d996a4b9c47b2199fac61a9fdea310bb>> ---
>>
>>
>>
>> include/vlc_filter.h | 5 ++---
>>
>> modules/stream_out/transcode/video.c | 2 +-
>>
>> modules/video_chroma/chain.c | 10 +++++-----
>>
>> src/misc/filter_chain.c | 4 ++--
>>
>> src/video_output/display.c | 3 ++-
>>
>> src/video_output/video_output.c | 4 ++--
>>
>> 6 files changed, 14 insertions(+), 14 deletions(-)
>>
>>
>>
>> diff --git a/include/vlc_filter.h b/include/vlc_filter.h
>>
>> index a3ecc2c1b3..3db7281671 100644
>>
>> --- a/include/vlc_filter.h
>>
>> +++ b/include/vlc_filter.h
>>
>> @@ -330,10 +330,9 @@ VLC_API filter_t
>> *filter_chain_AppendFilter(filter_chain_t *chain,
>>>> * \param chain filter chain to append a filter to
>>
>> * \param fmt_in filter input format
>>
>> * \param fmt_out filter output format
>>
>> - * \retval 0 on success
>>
>> - * \retval -1 on failure
>>
>> + * \return a pointer to the filter or NULL on error
>>
>> */
>>
>> -VLC_API int filter_chain_AppendConverter(filter_chain_t *chain,
>>>> +VLC_API filter_t *filter_chain_AppendConverter(filter_chain_t
>> *chain,
>>>> const es_format_t *fmt_in, const es_format_t *fmt_out);
>>
>>
>>
>> /**
>>
>> diff --git a/modules/stream_out/transcode/video.c
>> b/modules/stream_out/transcode/video.c
>>>> index 50b21bc0ff..b4bc000db3 100644
>>
>> --- a/modules/stream_out/transcode/video.c
>>
>> +++ b/modules/stream_out/transcode/video.c
>>
>> @@ -69,7 +69,7 @@ static int video_update_format_decoder( decoder_t
>> *p_dec )
>>>> filter_chain_Reset( test_chain, &p_dec->fmt_out, &p_dec->fmt_out
>> );
>>>>
>>
>> int chain_works = filter_chain_AppendConverter( test_chain, &p_dec-
>> >fmt_out,
>>>> - &id->p_encoder->fmt_in );
>>
>> + &id->p_encoder-
>> >fmt_in ) !=
>> NULL ? 0 : -1;
>>>> filter_chain_Delete( test_chain );
>>
>> msg_Dbg( stream, "Filter chain testing done, input chroma %4.4s
>> seems to be %s for transcode",
>>>> (char *)&p_dec->fmt_out.video.i_chroma,
>>
>> diff --git a/modules/video_chroma/chain.c
>> b/modules/video_chroma/chain.c
>>>> index be4c26e611..eb20daa817 100644
>>
>> --- a/modules/video_chroma/chain.c
>>
>> +++ b/modules/video_chroma/chain.c
>>
>> @@ -310,7 +310,7 @@ static int BuildFilterChain( filter_t *p_filter )
>>>> video_format_FixRgb(&fmt_mid.video);
>>
>>
>>
>> if( filter_chain_AppendConverter( p_filter->p_sys->p_chain,
>>>> - NULL, &fmt_mid ) ==
>> VLC_SUCCESS )
>>>> + NULL, &fmt_mid ) )
>>
>> {
>>
>> if( filter_chain_AppendFilter( p_filter->p_sys->p_chain,
>>>> p_filter->psz_name, p_filter-
>> >p_cfg,
>>>> @@ -355,8 +355,8 @@ static int CreateChain( filter_t *p_parent,
>> es_format_t *p_fmt_mid )
>>>> }
>>
>> else
>>
>> {
>>
>> - if( filter_chain_AppendConverter( p_parent->p_sys->p_chain,
>>>> - NULL, p_fmt_mid ) )
>>
>> + if( !filter_chain_AppendConverter( p_parent->p_sys->p_chain,
>>>> + NULL, p_fmt_mid ) )
>>
>> return VLC_EGENERIC;
>>
>> }
>>
>>
>>
>> @@ -368,8 +368,8 @@ static int CreateChain( filter_t *p_parent,
>> es_format_t *p_fmt_mid )
>>>> }
>>
>> else
>>
>> {
>>
>> - if( filter_chain_AppendConverter( p_parent->p_sys->p_chain,
>>>> - p_fmt_mid, NULL ) )
>>
>> + if( !filter_chain_AppendConverter( p_parent->p_sys->p_chain,
>>>> + p_fmt_mid, NULL ) )
>>
>> goto error;
>>
>> }
>>
>> return VLC_SUCCESS;
>>
>> diff --git a/src/misc/filter_chain.c b/src/misc/filter_chain.c
>>
>> index 741a63c9ad..7e038dbbb8 100644
>>
>> --- a/src/misc/filter_chain.c
>>
>> +++ b/src/misc/filter_chain.c
>>
>> @@ -274,11 +274,11 @@ filter_t *filter_chain_AppendFilter(
>> filter_chain_t *chain,
>>>> fmt_in, fmt_out );
>>
>> }
>>
>>
>>
>> -int filter_chain_AppendConverter( filter_chain_t *chain,
>>
>> +filter_t *filter_chain_AppendConverter( filter_chain_t *chain,
>>
>> const es_format_t *fmt_in, const es_format_t *fmt_out )
>>
>> {
>>
>> return filter_chain_AppendInner( chain, NULL, chain->conv_cap,
>> NULL,
>>>> - fmt_in, fmt_out ) != NULL ? 0 :
>> -1;
>>>> + fmt_in, fmt_out );
>>
>> }
>>
>>
>>
>> void filter_chain_DeleteFilter( filter_chain_t *chain, filter_t
>> *filter )
>>>> diff --git a/src/video_output/display.c b/src/video_output/display.c
>>>> index aaa24b053d..57210df5fd 100644
>>
>> --- a/src/video_output/display.c
>>
>> +++ b/src/video_output/display.c
>>
>> @@ -462,7 +462,8 @@ static int
>> VoutDisplayCreateRender(vout_display_t *vd)
>>>> es_format_InitFromVideo(&dst, i == 0 ? &v_dst : &v_dst_cmp);
>>>>
>>
>> filter_chain_Reset(osys->filters, &src, &dst);
>>
>> - ret = filter_chain_AppendConverter(osys->filters, &src,
>> &dst);
>>>> + ret = filter_chain_AppendConverter(osys->filters, &src,
>> &dst)
>>>> + != NULL ? 0 : -1;
>>
>> es_format_Clean(&dst);
>>
>> if (ret == 0)
>>
>> break;
>>
>> diff --git a/src/video_output/video_output.c
>> b/src/video_output/video_output.c
>>>> index c1ddc6a4d5..e46859ddd1 100644
>>
>> --- a/src/video_output/video_output.c
>>
>> +++ b/src/video_output/video_output.c
>>
>> @@ -854,8 +854,8 @@ static void
>> ThreadChangeFilters(vout_thread_t *vout,
>>>>
>>
>> if (!es_format_IsSimilar(&fmt_current, &fmt_target)) {
>>
>> msg_Dbg(vout, "Adding a filter to compensate for format
>> changes");
>>>> - if (filter_chain_AppendConverter(vout->p-
>> >filter.chain_interactive,
>>>> - &fmt_current, &fmt_target)
>> != 0) {
>>>> + if (!filter_chain_AppendConverter(vout->p-
>> >filter.chain_interactive,
>>>> + &fmt_current,
>> &fmt_target)) {
>>>> msg_Err(vout, "Failed to compensate for the format
>> changes, removing all filters");
>>>> ThreadDelAllFilterCallbacks(vout);
>>
>> filter_chain_Reset(vout->p->filter.chain_static,
>> &fmt_target, &fmt_target);
>>>>
>>
>>
>>
>> vlc-commits mailing list
>>
>> vlc-commits at videolan.org
>>
>> https://mailman.videolan.org/listinfo/vlc-commits
>>
>
> Repeating myself but WTF? This is counter-sensical.WTFF will you do
> with the conversion filter pointer, which can't have variables, and
> how the heck is this going to work with when the conversion chaining
> is fixed (like audio already was)?!
Language.
> --
> Rémi Denis-Courmont
> Typed on an inconvenient virtual keyboard
> _________________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20170701/d11503b4/attachment.html>
More information about the vlc-devel
mailing list