Re: [FFmpeg-devel] [PATCH 2/2] avcodec/nellymoser: Use avpriv_float_dsp_alloc()
On Fri, Nov 14, 2014 at 02:39:46PM +0100, Michael Niedermayer wrote: Signed-off-by: Michael Niedermayer michae...@gmx.at --- libavcodec/nellymoserdec.c |9 ++--- libavcodec/nellymoserenc.c | 17 +++-- 2 files changed, 17 insertions(+), 9 deletions(-) applied a while ago but forgot to reply [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Those who are too smart to engage in politics are punished by being governed by those who are dumber. -- Plato signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 2/2] avcodec/nellymoser: Use avpriv_float_dsp_alloc()
On Fri, Nov 14, 2014 at 08:45:43PM +0100, Reimar Döffinger wrote: On Fri, Nov 14, 2014 at 08:38:39PM +0100, Michael Niedermayer wrote: On Fri, Nov 14, 2014 at 07:59:17PM +0100, Reimar Döffinger wrote: On Fri, Nov 14, 2014 at 02:39:46PM +0100, Michael Niedermayer wrote: Signed-off-by: Michael Niedermayer michae...@gmx.at --- libavcodec/nellymoserdec.c |9 ++--- libavcodec/nellymoserenc.c | 17 +++-- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/libavcodec/nellymoserdec.c b/libavcodec/nellymoserdec.c index ef16fd6..2d8a594 100644 --- a/libavcodec/nellymoserdec.c +++ b/libavcodec/nellymoserdec.c @@ -51,7 +51,7 @@ typedef struct NellyMoserDecodeContext { AVLFG random_state; GetBitContext gb; float scale_bias; -AVFloatDSPContext fdsp; +AVFloatDSPContext *fdsp; Why, and why only for Nellymoser? I could see it from an ABI compatibility standpoint, but wouldn't this be fairly pointless unless all other uses are changed as well? it will be done for all uses after the API itself is pushed. nelly was just an example and for ensuring the API is tested works Ok, but I think then it would be good to mark avpriv_float_dsp_init as deprecated and for removal on next major bump, to both make the purpose of the patch more clearer and avoid adding more incorrect usages by accident later. yes, but ill wait with deprecation before theres no(t much) usage of it left otherwise it would spam with warnings [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB While the State exists there can be no freedom; when there is freedom there will be no State. -- Vladimir Lenin signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH 2/2] avcodec/nellymoser: Use avpriv_float_dsp_alloc()
Signed-off-by: Michael Niedermayer michae...@gmx.at --- libavcodec/nellymoserdec.c |9 ++--- libavcodec/nellymoserenc.c | 17 +++-- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/libavcodec/nellymoserdec.c b/libavcodec/nellymoserdec.c index ef16fd6..2d8a594 100644 --- a/libavcodec/nellymoserdec.c +++ b/libavcodec/nellymoserdec.c @@ -51,7 +51,7 @@ typedef struct NellyMoserDecodeContext { AVLFG random_state; GetBitContext gb; float scale_bias; -AVFloatDSPContext fdsp; +AVFloatDSPContext *fdsp; FFTContext imdct_ctx; DECLARE_ALIGNED(32, float, imdct_buf)[2][NELLY_BUF_LEN]; float *imdct_out; @@ -106,7 +106,7 @@ static void nelly_decode_block(NellyMoserDecodeContext *s, (NELLY_BUF_LEN - NELLY_FILL_LEN) * sizeof(float)); s-imdct_ctx.imdct_half(s-imdct_ctx, s-imdct_out, aptr); -s-fdsp.vector_fmul_window(aptr, s-imdct_prev + NELLY_BUF_LEN / 2, +s-fdsp-vector_fmul_window(aptr, s-imdct_prev + NELLY_BUF_LEN / 2, s-imdct_out, ff_sine_128, NELLY_BUF_LEN / 2); FFSWAP(float *, s-imdct_out, s-imdct_prev); @@ -122,7 +122,9 @@ static av_cold int decode_init(AVCodecContext * avctx) { av_lfg_init(s-random_state, 0); ff_mdct_init(s-imdct_ctx, 8, 1, 1.0); -avpriv_float_dsp_init(s-fdsp, avctx-flags CODEC_FLAG_BITEXACT); +s-fdsp = avpriv_float_dsp_alloc(avctx-flags CODEC_FLAG_BITEXACT); +if (!s-fdsp) +return AVERROR(ENOMEM); s-scale_bias = 1.0/(32768*8); avctx-sample_fmt = AV_SAMPLE_FMT_FLT; @@ -190,6 +192,7 @@ static av_cold int decode_end(AVCodecContext * avctx) { NellyMoserDecodeContext *s = avctx-priv_data; ff_mdct_end(s-imdct_ctx); +av_freep(s-fdsp); return 0; } diff --git a/libavcodec/nellymoserenc.c b/libavcodec/nellymoserenc.c index 78f1092..831abc0 100644 --- a/libavcodec/nellymoserenc.c +++ b/libavcodec/nellymoserenc.c @@ -56,7 +56,7 @@ typedef struct NellyMoserEncodeContext { AVCodecContext *avctx; int last_frame; -AVFloatDSPContext fdsp; +AVFloatDSPContext *fdsp; FFTContext mdct_ctx; AudioFrameQueue afq; DECLARE_ALIGNED(32, float, mdct_out)[NELLY_SAMPLES]; @@ -122,12 +122,12 @@ static void apply_mdct(NellyMoserEncodeContext *s) float *in1 = s-buf + NELLY_BUF_LEN; float *in2 = s-buf + 2 * NELLY_BUF_LEN; -s-fdsp.vector_fmul(s-in_buff, in0, ff_sine_128, NELLY_BUF_LEN); -s-fdsp.vector_fmul_reverse(s-in_buff + NELLY_BUF_LEN, in1, ff_sine_128, NELLY_BUF_LEN); +s-fdsp-vector_fmul(s-in_buff, in0, ff_sine_128, NELLY_BUF_LEN); +s-fdsp-vector_fmul_reverse(s-in_buff + NELLY_BUF_LEN, in1, ff_sine_128, NELLY_BUF_LEN); s-mdct_ctx.mdct_calc(s-mdct_ctx, s-mdct_out, s-in_buff); -s-fdsp.vector_fmul(s-in_buff, in1, ff_sine_128, NELLY_BUF_LEN); -s-fdsp.vector_fmul_reverse(s-in_buff + NELLY_BUF_LEN, in2, ff_sine_128, NELLY_BUF_LEN); +s-fdsp-vector_fmul(s-in_buff, in1, ff_sine_128, NELLY_BUF_LEN); +s-fdsp-vector_fmul_reverse(s-in_buff + NELLY_BUF_LEN, in2, ff_sine_128, NELLY_BUF_LEN); s-mdct_ctx.mdct_calc(s-mdct_ctx, s-mdct_out + NELLY_BUF_LEN, s-in_buff); } @@ -142,6 +142,7 @@ static av_cold int encode_end(AVCodecContext *avctx) av_freep(s-path); } ff_af_queue_close(s-afq); +av_freep(s-fdsp); return 0; } @@ -170,7 +171,11 @@ static av_cold int encode_init(AVCodecContext *avctx) s-avctx = avctx; if ((ret = ff_mdct_init(s-mdct_ctx, 8, 0, 32768.0)) 0) goto error; -avpriv_float_dsp_init(s-fdsp, avctx-flags CODEC_FLAG_BITEXACT); +s-fdsp = avpriv_float_dsp_alloc(avctx-flags CODEC_FLAG_BITEXACT); +if (!s-fdsp) { +ret = AVERROR(ENOMEM); +goto error; +} /* Generate overlap window */ ff_init_ff_sine_windows(7); -- 1.7.9.5 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 2/2] avcodec/nellymoser: Use avpriv_float_dsp_alloc()
On Fri, Nov 14, 2014 at 02:39:46PM +0100, Michael Niedermayer wrote: Signed-off-by: Michael Niedermayer michae...@gmx.at --- libavcodec/nellymoserdec.c |9 ++--- libavcodec/nellymoserenc.c | 17 +++-- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/libavcodec/nellymoserdec.c b/libavcodec/nellymoserdec.c index ef16fd6..2d8a594 100644 --- a/libavcodec/nellymoserdec.c +++ b/libavcodec/nellymoserdec.c @@ -51,7 +51,7 @@ typedef struct NellyMoserDecodeContext { AVLFG random_state; GetBitContext gb; float scale_bias; -AVFloatDSPContext fdsp; +AVFloatDSPContext *fdsp; Why, and why only for Nellymoser? I could see it from an ABI compatibility standpoint, but wouldn't this be fairly pointless unless all other uses are changed as well? ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 2/2] avcodec/nellymoser: Use avpriv_float_dsp_alloc()
On Fri, Nov 14, 2014 at 07:59:17PM +0100, Reimar Döffinger wrote: On Fri, Nov 14, 2014 at 02:39:46PM +0100, Michael Niedermayer wrote: Signed-off-by: Michael Niedermayer michae...@gmx.at --- libavcodec/nellymoserdec.c |9 ++--- libavcodec/nellymoserenc.c | 17 +++-- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/libavcodec/nellymoserdec.c b/libavcodec/nellymoserdec.c index ef16fd6..2d8a594 100644 --- a/libavcodec/nellymoserdec.c +++ b/libavcodec/nellymoserdec.c @@ -51,7 +51,7 @@ typedef struct NellyMoserDecodeContext { AVLFG random_state; GetBitContext gb; float scale_bias; -AVFloatDSPContext fdsp; +AVFloatDSPContext *fdsp; Why, and why only for Nellymoser? I could see it from an ABI compatibility standpoint, but wouldn't this be fairly pointless unless all other uses are changed as well? it will be done for all uses after the API itself is pushed. nelly was just an example and for ensuring the API is tested works [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB During times of universal deceit, telling the truth becomes a revolutionary act. -- George Orwell signature.asc Description: Digital signature ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 2/2] avcodec/nellymoser: Use avpriv_float_dsp_alloc()
On Fri, Nov 14, 2014 at 08:38:39PM +0100, Michael Niedermayer wrote: On Fri, Nov 14, 2014 at 07:59:17PM +0100, Reimar Döffinger wrote: On Fri, Nov 14, 2014 at 02:39:46PM +0100, Michael Niedermayer wrote: Signed-off-by: Michael Niedermayer michae...@gmx.at --- libavcodec/nellymoserdec.c |9 ++--- libavcodec/nellymoserenc.c | 17 +++-- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/libavcodec/nellymoserdec.c b/libavcodec/nellymoserdec.c index ef16fd6..2d8a594 100644 --- a/libavcodec/nellymoserdec.c +++ b/libavcodec/nellymoserdec.c @@ -51,7 +51,7 @@ typedef struct NellyMoserDecodeContext { AVLFG random_state; GetBitContext gb; float scale_bias; -AVFloatDSPContext fdsp; +AVFloatDSPContext *fdsp; Why, and why only for Nellymoser? I could see it from an ABI compatibility standpoint, but wouldn't this be fairly pointless unless all other uses are changed as well? it will be done for all uses after the API itself is pushed. nelly was just an example and for ensuring the API is tested works Ok, but I think then it would be good to mark avpriv_float_dsp_init as deprecated and for removal on next major bump, to both make the purpose of the patch more clearer and avoid adding more incorrect usages by accident later. ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel