Re: [FFmpeg-devel] [RFC][PATCH] web: News about FFmpeg in Debian

2014-10-06 Thread Clément Bœsch
On Sun, Oct 05, 2014 at 09:19:34PM -0400, compn wrote:
> On Sun, 05 Oct 2014 21:55:51 -0300
> James Almer  wrote:
> 
> > On 05/10/14 9:47 PM, compn wrote:
> > > On Sun, 5 Oct 2014 22:58:34 +0200
> > > Alexander Strasser  wrote:
> > >> This is all RFC as marked in the subject. Please give me some
> > >>   feed back!
> > > 
> > > could someone please add a note about the deprecated message.
> > > 
> > > something like:
> > > 
> > > users on debian and ubuntu may have seen this message when using
> > > ffmpeg "*** THIS PROGRAM IS DEPRECATED *** 
> > >  This program is only provided for compatibility and will be
> > > removed in a future release. Please use avconv instead."
> > > 
> > > this message was in the libav.org version of the ffmpeg program.
> > > this message has confused many users and caused us a lot of user
> > > support issues. if you see this message it means you are using
> > > libav.org's ffmpeg and not our ffmpeg. please use "apt-get install
> > > ffmpeg" to use the correct ffmpeg program.
> > > 
> > 
> > Wasn't this fixed by now, anyway? Afaik it was only on libav 0.8
> 
> i havent checked, but i dont think the new message is any more helpful?
> 
[...]

commit 554fd5cd630073b8273aa044a6bdfd6f608209e9
Author: Diego Biurrun 
Date:   Wed Aug 20 10:50:33 2014 -0700

ffmpeg: Clarify wording of ffmpeg --> avconv deprecation message

diff --git a/ffmpeg.c b/ffmpeg.c
index f61de33..1069c3e 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -4376,9 +4376,11 @@ int main(int argc, char **argv)
 
 show_banner();
 
-av_log(NULL, AV_LOG_WARNING, "This program is not developed anymore and is 
only "
- "provided for compatibility. Use avconv 
instead "
- "(see Changelog for the list of incompatible 
changes).\n");
+av_log(NULL, AV_LOG_WARNING,
+   "The ffmpeg program is only provided for script compatibility and 
will be removed\n"
+   "in a future release. It has been deprecated in the Libav project 
to allow for\n"
+   "incompatible command line syntax improvements in its replacement 
called avconv\n"
+   "(see Changelog for details). Please use avconv instead.\n");
 
 /* parse options */
 parse_options(NULL, argc, argv, options, opt_output_file);

The new message is OK in my opinion. The "deprecated in the Libav project" is
the important point, as it suggests it is very specific to that project. I
don't know if it's been released already though.

Anyway, I don't think it's relevant to talk about that in that news. Let's
just move on. Libav fixed the message, it's cool, but it has nothing to do
with FFmpeg getting into Debian.

-- 
Clément B.


pgp3fBAy_3mOg.pgp
Description: PGP signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 02/14] libavcodec: Implementation of AAC_fixed_decoder (LC-module) [2/5]

2014-10-06 Thread Nedeljko Babic
Hi and sorry for such a late response.

It looks that I misplaced this mail...

> From: Djordje Pesut 
>> 
>> Add float emulation
>> 
>> Signed-off-by: Nedeljko Babic 
>> ---
>>  libavcodec/float_emu.h | 295 
>> +
>>  libavcodec/float_emu_tab.c | 293 
>> 
>>  2 files changed, 588 insertions(+)
>>  create mode 100644 libavcodec/float_emu.h
>>  create mode 100644 libavcodec/float_emu_tab.c
>
>theres libavutil/softfloat
>
>I dont see why this should be re implemented in each decoder
>If you can improve softfloat, please do
>
>[...]
>

If I am not mistaking, there is one (possibly two) more implementations of 
float emulation besides softfloat in ffmpeg (dca encoder and lagarith decoder),
but I do agree that it is more maintainable to have one float emulation and I
am willing to integrate our emulation in softfloat.

However, there is a difference in some conventions used (for example is it more
important to represent exactly 0.5 or 1, order of fields in struct that
represents emulated float, etc.) and our aac implementation is tailored to use
our float emulation.

Could I assume that in such cases I can change convention that is used in
softfloat with convection that we use, since I don't see that softfloat is used
anywhere in ffmpeg currently?

That way we could integrate our code without need to change aac implementation
and without need for changes in parts of float emulation that are not supported
in softfloat currently (sqrt and sincos).

Also, there is a question that Reimar initiated in his review of whether it's
more important to optimize the case where an operand is 0 or to reduce the
number of branches.
We have optimized cases when operands are zero for some operations. Should 
I include this in softfloat, or should this kind of optimizations be left for
architecture/codec specific optimizations?

>> +typedef struct aac_float_t {
>> +int mant;
>> +int expo;
>> +} aac_float_t;
>
>float "emulation" isnt aac specific and *_t are reserved in POSIX
>IIRC
>

This float emulation was sent as part of implementation of aac fixed point
decoder. It is currently used only here and we did not know if/when it will be
used in any other codec.
On the other hand, I do agree that it is not aac specific and it will be
renamed in the new patch (when we integrate it with softfloat).

>
>[...]
>> diff --git a/libavcodec/float_emu_tab.c b/libavcodec/float_emu_tab.c
>> new file mode 100644
>> index 000..396a7a3
>> --- /dev/null
>> +++ b/libavcodec/float_emu_tab.c
>> @@ -0,0 +1,293 @@
>> +/*
>> + * Copyright (c) 2012
>> + *  MIPS Technologies, Inc., California.
>> + *
>> + * Redistribution and use in source and binary forms, with or without
>> + * modification, are permitted provided that the following conditions
>> + * are met:
>> + * 1. Redistributions of source code must retain the above copyright
>> + *notice, this list of conditions and the following disclaimer.
>> + * 2. Redistributions in binary form must reproduce the above copyright
>> + *notice, this list of conditions and the following disclaimer in the
>> + *documentation and/or other materials provided with the distribution.
>> + * 3. Neither the name of the MIPS Technologies, Inc., nor the names of is
>> + *contributors may be used to endorse or promote products derived from
>> + *this software without specific prior written permission.
>> + *
>> + * THIS SOFTWARE IS PROVIDED BY THE MIPS TECHNOLOGIES, INC. ``AS IS'' AND
>> + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
>> + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 
>> PURPOSE
>> + * ARE DISCLAIMED.  IN NO EVENT SHALL THE MIPS TECHNOLOGIES, INC. BE LIABLE
>> + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
>> CONSEQUENTIAL
>> + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
>> + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
>> + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 
>> STRICT
>> + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
>> + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
>> + * SUCH DAMAGE.
>> + *
>> + * Author:  Stanislav Ocovaj (stanislav.ocovaj imgtec com)
>> + *
>> + * This file is part of FFmpeg.
>> + *
>> + * FFmpeg is free software; you can redistribute it and/or
>> + * modify it under the terms of the GNU Lesser General Public
>> + * License as published by the Free Software Foundation; either
>> + * version 2.1 of the License, or (at your option) any later version.
>> + *
>> + * FFmpeg is distributed in the hope that it will be useful,
>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
>> + * Lesser General Public License for more details.
>> + *
>> + * You should have r

[FFmpeg-devel] [PATCH] avfilter: add w/h parameters in timeline

2014-10-06 Thread Clément Bœsch
Fixes Ticket #4008.
---
 libavfilter/avfilter.c | 21 +++--
 1 file changed, 19 insertions(+), 2 deletions(-)

diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index 7b11467..3805912 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -381,8 +381,23 @@ int ff_poll_frame(AVFilterLink *link)
 return min;
 }
 
-static const char *const var_names[] = {   "t",   "n",   "pos",NULL };
-enum   { VAR_T, VAR_N, VAR_POS, VAR_VARS_NB };
+static const char *const var_names[] = {
+"t",
+"n",
+"pos",
+"w",
+"h",
+NULL
+};
+
+enum {
+VAR_T,
+VAR_N,
+VAR_POS,
+VAR_W,
+VAR_H,
+VAR_VARS_NB
+};
 
 static int set_enable_expr(AVFilterContext *ctx, const char *expr)
 {
@@ -1071,6 +1086,8 @@ static int ff_filter_frame_framed(AVFilterLink *link, 
AVFrame *frame)
 int64_t pos = av_frame_get_pkt_pos(out);
 dstctx->var_values[VAR_N] = link->frame_count;
 dstctx->var_values[VAR_T] = pts == AV_NOPTS_VALUE ? NAN : pts * 
av_q2d(link->time_base);
+dstctx->var_values[VAR_W] = link->w;
+dstctx->var_values[VAR_H] = link->h;
 dstctx->var_values[VAR_POS] = pos == -1 ? NAN : pos;
 
 dstctx->is_disabled = fabs(av_expr_eval(dstctx->enable, 
dstctx->var_values, NULL)) < 0.5;
-- 
2.1.2

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH] ffmpeg.texi examples: output opt -r -> -framerate

2014-10-06 Thread Ben Price
Novice users reading the documentation would expect the behaviour of
-framerate, not -r when 'creating a video from many images' or 'force
the frame rate of the output'
---
 doc/ffmpeg.texi | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index 4fc7682..059ae3e 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -58,14 +58,14 @@ ffmpeg -i input.avi -b:v 64k -bufsize 64k output.avi
 @item
 To force the frame rate of the output file to 24 fps:
 @example
-ffmpeg -i input.avi -r 24 output.avi
+ffmpeg -i input.avi -framerate 24 output.avi
 @end example
 
 @item
 To force the frame rate of the input file (valid for raw formats only)
 to 1 fps and the frame rate of the output file to 24 fps:
 @example
-ffmpeg -r 1 -i input.m2v -r 24 output.avi
+ffmpeg -r 1 -i input.m2v -framerate 24 output.avi
 @end example
 @end itemize
 
@@ -1436,7 +1436,7 @@ combination with -ss to start extracting from a certain 
point in time.
 
 For creating a video from many images:
 @example
-ffmpeg -f image2 -i foo-%03d.jpeg -r 12 -s WxH foo.avi
+ffmpeg -f image2 -i foo-%03d.jpeg -framerate 12 -s WxH foo.avi
 @end example
 
 The syntax @code{foo-%03d.jpeg} specifies to use a decimal number
@@ -1451,7 +1451,7 @@ image2-specific @code{-pattern_type glob} option.
 For example, for creating a video from filenames matching the glob pattern
 @code{foo-*.jpeg}:
 @example
-ffmpeg -f image2 -pattern_type glob -i 'foo-*.jpeg' -r 12 -s WxH foo.avi
+ffmpeg -f image2 -pattern_type glob -i 'foo-*.jpeg' -framerate 12 -s WxH 
foo.avi
 @end example
 
 @item
-- 
2.1.2

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] ffmpeg.texi examples: output opt -r -> -framerate

2014-10-06 Thread Carl Eugen Hoyos
Ben Price  gmail.com> writes:

> -ffmpeg -i input.avi -r 24 output.avi
> +ffmpeg -i input.avi -framerate 24 output.avi

I didn't really test but I don't think this is 
correct: As said on irc, there is an INPUT option 
-r that is different from the INPUT option 
-framerate but I wonder if there is an output 
option framerate at all.

Could you explain how I can reproduce the issue 
you see?

Carl Eugen

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [RFC][PATCH] web: News about FFmpeg in Debian

2014-10-06 Thread compn
On Mon, 6 Oct 2014 09:24:45 +0200
Clément Bœsch  wrote:

> Anyway, I don't think it's relevant to talk about that in that news.
> Let's just move on. Libav fixed the message, it's cool, but it has
> nothing to do with FFmpeg getting into Debian.

i brought it up because its debian (and ubuntu) users who saw the
message. because after searching for it in google, theres lots of
people explaining the deprecation message to each other and saying how
'they couldnt find anything about this on ffmpeg.org'.

if you dont think it belongs there, i wont push the issue further.

-compn
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [RFC][PATCH] web: News about FFmpeg in Debian

2014-10-06 Thread Tobias Rapp

On 06.10.2014 14:05, compn wrote:

On Mon, 6 Oct 2014 09:24:45 +0200
Clément Bœsch  wrote:


Anyway, I don't think it's relevant to talk about that in that news.
Let's just move on. Libav fixed the message, it's cool, but it has
nothing to do with FFmpeg getting into Debian.


i brought it up because its debian (and ubuntu) users who saw the
message. because after searching for it in google, theres lots of
people explaining the deprecation message to each other and saying how
'they couldnt find anything about this on ffmpeg.org'.

if you dont think it belongs there, i wont push the issue further.


Maybe put it in the FAQ (http://ffmpeg.org/faq.html) instead?


___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] FFmpeg IRC meeting October 4th 2014, UTC 16

2014-10-06 Thread Stefano Sabatini
On date Saturday 2014-10-04 17:45:32 +0200, Stefano Sabatini encoded:
[...]
> The meeting will happen in a few minutes, 16 UTC, on the freenode IRC
> channel #ffmpeg-meeting. Please join if interested.
> 
> Topics of the day:
> http://trac.ffmpeg.org/wiki/FFmeeting/2014-10

Full log published in this page of the wiki:
http://trac.ffmpeg.org/wiki/FFmeeting/2014-10

Next meeting should be scheduled in about 6 months unless there is an
urgent need for it before that period.

Thanks all for your participation.
-- 
FFmpeg = Fast and Faithless Most Portentous Ecumenical Generator
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avfilter: add w/h parameters in timeline

2014-10-06 Thread Stefano Sabatini
On date Monday 2014-10-06 13:11:03 +0200, Clément Bœsch encoded:
> Fixes Ticket #4008.
> ---
>  libavfilter/avfilter.c | 21 +++--
>  1 file changed, 19 insertions(+), 2 deletions(-)

Missing docs updates, and micro bump.
> 
> diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
> index 7b11467..3805912 100644
> --- a/libavfilter/avfilter.c
> +++ b/libavfilter/avfilter.c
> @@ -381,8 +381,23 @@ int ff_poll_frame(AVFilterLink *link)
>  return min;
>  }
>  
> -static const char *const var_names[] = {   "t",   "n",   "pos",NULL 
> };
> -enum   { VAR_T, VAR_N, VAR_POS, VAR_VARS_NB 
> };
> +static const char *const var_names[] = {
> +"t",
> +"n",
> +"pos",
> +"w",
> +"h",
> +NULL
> +};
> +
> +enum {
> +VAR_T,
> +VAR_N,
> +VAR_POS,
> +VAR_W,
> +VAR_H,
> +VAR_VARS_NB
> +};
>  
>  static int set_enable_expr(AVFilterContext *ctx, const char *expr)
>  {
> @@ -1071,6 +1086,8 @@ static int ff_filter_frame_framed(AVFilterLink *link, 
> AVFrame *frame)
>  int64_t pos = av_frame_get_pkt_pos(out);
>  dstctx->var_values[VAR_N] = link->frame_count;
>  dstctx->var_values[VAR_T] = pts == AV_NOPTS_VALUE ? NAN : pts * 
> av_q2d(link->time_base);
> +dstctx->var_values[VAR_W] = link->w;
> +dstctx->var_values[VAR_H] = link->h;
>  dstctx->var_values[VAR_POS] = pos == -1 ? NAN : pos;
>  
>  dstctx->is_disabled = fabs(av_expr_eval(dstctx->enable, 
> dstctx->var_values, NULL)) < 0.5;
> -- 

LGTM otherwise, thanks.
-- 
FFmpeg = Freak and Friendly Mortal Ponderous Extravagant Gospel
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] ffmpeg.texi examples: output opt -r -> -framerate

2014-10-06 Thread Ben Price
On Mon, Oct 06, 2014 at 11:29:56AM +, Carl Eugen Hoyos wrote:
> Ben Price  gmail.com> writes:
> 
> > -ffmpeg -i input.avi -r 24 output.avi
> > +ffmpeg -i input.avi -framerate 24 output.avi
> 
> I didn't really test but I don't think this is 
> correct: As said on irc, there is an INPUT option 
> -r that is different from the INPUT option 
> -framerate but I wonder if there is an output 
> option framerate at all.
> 
> Could you explain how I can reproduce the issue 
> you see?

Oh, wait, I think I'm wrong on all this. The output framerate actually
isn't set to 24 for the second. It appears that I don't actually
understand this very well.

Please ignore this, sorry for the noise.

Perhaps having (from man ffmpeg-all, image2)
 > ffmpeg -framerate 10 -i 'img-%03d.jpeg' out.mkv
instead of (from man ffmpeg, examples)
 > ffmpeg -f image2 -i foo-%03d.jpeg -r 12 -s WxH foo.avi
or a mixture (both -framerate input, and -r output) would be good in the
ffmpeg(1) page examples, to stop others just reading that and getting in
a mess as I did. I could do the patch if you think it's a good idea.

Ben
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH v2] avformat/mxfdec: read reel_name and source timecode from physical source package

2014-10-06 Thread Tomas Härdin
On Sat, 2014-10-04 at 17:42 -0700, Mark Reid wrote:
> ---
>  libavformat/mxfdec.c | 120 
> ++-
>  1 file changed, 99 insertions(+), 21 deletions(-)
> 
> diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
> index 7a4633f..ef4c4ec 100644
> --- a/libavformat/mxfdec.c
> +++ b/libavformat/mxfdec.c


Looks OK..

/Tomas


signature.asc
Description: This is a digitally signed message part
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [RFC][PATCH] web: News about FFmpeg in Debian

2014-10-06 Thread Alexander Strasser
On 2014-10-06 01:35 +, Carl Eugen Hoyos wrote:
> Timothy Gu  gmail.com> writes:
> 
> > The bad news is that the package probably won't migrate to Debian
> > testing in time for the upcoming release "Jessie". The Debian release
> > and security teams have made this decision because of concerns of
> > security and stability with interactions with other Debian packages.
> 
> I am mildly against this wording:
> Iirc, the security team said that they consider FFmpeg slightly 
> better in security issues but would still prefer avconv and I 
> am not sure anybody from the release team ever commented.

  I am against that wording too. The problem with Timothy's
wording is it contains way to much interpretation! My wording
only had "unfortunately" and "bad" because FFmpeg will very
likely not be part of the next Debian release; which I think
is fair enough. The *important* part in my version is that I
encourage people to read the discussion and directly give them
a means to do so by providing a link the relevant bug on the
Debian bug tracker.

TL;DR  I really think it is important people read the original
discussion at Debian and build up their own opinions about what
was said and done.

> Perhaps we should just omit the "bad news" paragraph.

  I am obviously against that.

  I have locally changed all other things requested by Timothy
and Carl Eugen. I do not think the Libav deprecation message
should be part of this news article. Probably putting it in the
FAQ/other place on the homepage or writing another news article
would be helpful. Though I am not volunteering for that ATM.

  I will wait another day or two. So if you do have objections
voice them soon please.

Thank you all for the feedback so far,
  Alexander


pgpoZMebEJ0GI.pgp
Description: PGP signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH v2] avformat/mxfdec: read reel_name and source timecode from physical source package

2014-10-06 Thread Michael Niedermayer
On Mon, Oct 06, 2014 at 11:17:21PM +0200, Tomas Härdin wrote:
> On Sat, 2014-10-04 at 17:42 -0700, Mark Reid wrote:
> > ---
> >  libavformat/mxfdec.c | 120 
> > ++-
> >  1 file changed, 99 insertions(+), 21 deletions(-)
> > 
> > diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
> > index 7a4633f..ef4c4ec 100644
> > --- a/libavformat/mxfdec.c
> > +++ b/libavformat/mxfdec.c
> 
> 
> Looks OK..

applied

thanks

[...]

-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The worst form of inequality is to try to make unequal things equal.
-- Aristotle


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [OPW 201412] Please help track ongoing qualification tasks

2014-10-06 Thread Reynaldo H. Verdejo Pinochet
Hi everyone

Also linked from our landing page, you will find qualification tasks
been tracked here:

https://trac.ffmpeg.org/wiki/SponsoringPrograms/OPW/2014-12-Qualis

Please help updating that. If you already helped an applicant
selecting a suitable qualification tasks, then you are "qualification
mentor" for it.

[bikesheding alert] Complexity index

We will need a way to measure the applicant's performance against some
kind of common complexity index. Quite humorously and naive, I stabbed
there a mmh unit, meaning "Median Michael Hours", or, how many days
would it take Michael to come up with a proper fix for the task at
hand. Pretty sure those who aren't laughing at this already will have a
better idea for a complexity index. If so, please discuss on a separate
thread and we can change it once something less LOLable has been
choosen.

Oh, almost forgot, it's the Qualification Mentor's task to suggest
that number, Guess Michael can have a run at them latter and correct
any wrongs.

Please do reserve some time to keep the table updated.

Thanks for all your help ppl!

Bests,


-- 
Reynaldo H. Verdejo Pinochet
Open Source Group
Samsung Research America / Silicon Valley
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [RFC] Direct Stream Transfer (DST) decoder

2014-10-06 Thread Peter Ross
Thanks for the review (also thanks compn).
I will address all your comments -- some further questions below:

On Tue, Sep 30, 2014 at 09:00:12PM +0200, Reimar Döffinger wrote:
> On Tue, Sep 30, 2014 at 11:42:20PM +1000, Peter Ross wrote:
> > +/**
> > + * Calculate FS44 ratio
> > + */
> > +#define DSD_FS44(sample_rate) (sample_rate / 44100)
> > +
> > +/**
> > + * Calculate DST frame size
> > + * @return samples per frame (1-bit samples)
> > + */
> > +#define DST_SAMPLES_PER_FRAME(sample_rate) (588 * DSD_FS44(sample_rate))
> 
> A header for just these seems a bit overkill.
> Also I'd prefer static inline functions over macros when there is no
> reason to use macros.

Agree. These are used by the DSDIFF/DST demuxer (and my experimental DST 
encoder.)

> > +for (k = 0; k < 256; k++) {
> > +int v = 0;
> > +for (l = 0; l < total; l++)
> > +v += (((k >> l) & 1) * 2 - 1) * fsets->coeff[i][j * 8 
> > + l];
> 
> Is this faster in a relevant way than something more readable like
> coeff = fsets->coeff[i][j * 8 + l];
> v += k & (1 << l) ? coeff : -coeff;
> ?

Faster!

> > +unsigned int half_prob[DST_MAX_CHANNELS];
> > +unsigned int map_ch_to_felem[DST_MAX_CHANNELS];
> > +unsigned int map_ch_to_pelem[DST_MAX_CHANNELS];
> > +DECLARE_ALIGNED(16, uint8_t, status)[DST_MAX_CHANNELS][16];
> > +DECLARE_ALIGNED(16, int16_t, filter)[DST_MAX_ELEMENTS][16][256];
> 
> At least the last one is quite large I think.

Other structures (not shown above) are also large, so I have moved these into 
the context.

> Please consider putting it in the context or so instead.
> That's also less problematic with alignment.

The 'filter' array is ~100 kilobytes ((6ch x 2) x 16 x 256 x sizeof(int16_t)).
It is a lookup table, and is used _a lot_.
When I move this into the context struct, decoder performance drops 15%.

What is a reasonable size for on-stack variables?

> > +if ((ret = init_get_bits8(&gb, avpkt->data, avpkt->size)) < 0)
> > +if ((ret = read_map(&gb, &fsets, map_ch_to_felem, avctx->channels)) < 
> > 0)
> > +if ((ret = read_map(&gb, &probs, map_ch_to_pelem, 
> > avctx->channels)) < 0)
> 
> I still think putting assignments into an if is really bad idea all
> around.

No exception for simple error return codes?

I will post the updated decoder soon, along with AV_SAMPLE_FMT_DSD patches :)

-- Peter
(A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel