[FFmpeg-devel] [PATCH] Move param initialization and colorspace details from sws_getContext() to sws_init_context().

Michael Niedermayer michaelni
Sat Oct 2 05:40:57 CEST 2010


On Fri, Oct 01, 2010 at 09:19:45PM +0200, Stefano Sabatini wrote:
> On date Thursday 2010-09-30 01:34:14 +0200, Michael Niedermayer encoded:
> > On Thu, Sep 30, 2010 at 12:56:20AM +0200, Stefano Sabatini wrote:
> > > On date Wednesday 2010-09-29 19:25:28 +0200, Michael Niedermayer encoded:
> > > > On Wed, Sep 29, 2010 at 06:00:27PM +0200, Stefano Sabatini wrote:
> > > > > Allow to automatically set the default parameters without explicitely
> > > > > set them, also simplify conversion to the new sws_init_context() API.
> > > > > ---
> > > > >  utils.c |   18 +++++++-----------
> > > > >  1 files changed, 7 insertions(+), 11 deletions(-)
> > > > > 
> > > > > diff --git a/utils.c b/utils.c
> > > > > index 938af9e..bee5a3a 100644
> > > > > --- a/utils.c
> > > > > +++ b/utils.c
> > > > > @@ -761,10 +761,17 @@ int sws_init_context(SwsContext *c, SwsFilter *srcFilter, SwsFilter *dstFilter)
> > > > >      int dstW= c->dstW;
> > > > >      int dstH= c->dstH;
> > > > >      int flags;
> > > > > +    c->srcRange = handle_jpeg(&c->srcFormat);
> > > > > +    c->dstRange = handle_jpeg(&c->dstFormat);
> > > > 
> > > > that breaks user setted *Range
> > > 
> > > I'm aware but I cannot see a simpler way. A possibility would be to
> > > introduce an hack external to this function, but then doesn't look
> > > that good as well.
> > > 
> > > The problem is: how should the new API deal with JPEG colorspaces?
> > > Currently when we want to use the JPEG colorspace we pass one of the
> > > YUVJ* pixel formats. Avoiding this hack would mean to make the various
> > > FFmpeg components (well, mainly codecs) explicitely define which
> > > colorspace/range to use.
> > 
> > YUVJ* is deprecated
> > so designing new code toward it doesnt feel very good at all
> > 
> > also i dont see a problem
> > if YUVJ set Range appropriately
> > if not dont touch Range and leave it at the default / what the usert did set
> 
> Currently this has to be done directly in the application (in this
> case ffmpeg.c, right?), so I was thinking about creating a copy of

no it can be done in sws afaics

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Complexity theory is the science of finding the exact solution to an
approximation. Benchmarking OTOH is finding an approximation of the exact
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20101002/5261ee6f/attachment.pgp>



More information about the ffmpeg-devel mailing list