Re: [FFmpeg-devel] [PATCH] avfilter/acrossfade: allow skipping fade on inputs

2019-01-24 Thread Gyan



On 24-01-2019 02:22 PM, Gyan wrote:



On 23-01-2019 11:49 PM, Paul B Mahol wrote:

On 1/23/19, Gyan  wrote:


On 23-01-2019 07:40 PM, Paul B Mahol wrote:

On 1/23/19, Gyan  wrote:

On 23-01-2019 03:00 PM, Paul B Mahol wrote:

On 1/23/19, Gyan  wrote:
Why? afade needs change too.
If a user doesn't want to apply fade, then they can simply not add 
afade

filter. This change is meant for users who want to combine two audio
streams with overlap but don't want to apply fade to audio during
overlap.


I do not like such reasoning, also you changed afade too with this
approach.
That was to prevent an integer value of nb_curves-1 from being 
accepted.


Anyway, revised patch attached, although I don't see how afade=c=nofade
    is useful.

With previous patch it was hidden.


Gyan


Probably ok.


Plan to push tonight.


Pushed as 3224d6691cdc59ef0d31cdb35efac27494ff515b.

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


Re: [FFmpeg-devel] [PATCH] avfilter/acrossfade: allow skipping fade on inputs

2019-01-24 Thread Gyan



On 23-01-2019 11:49 PM, Paul B Mahol wrote:

On 1/23/19, Gyan  wrote:


On 23-01-2019 07:40 PM, Paul B Mahol wrote:

On 1/23/19, Gyan  wrote:

On 23-01-2019 03:00 PM, Paul B Mahol wrote:

On 1/23/19, Gyan  wrote:
Why? afade needs change too.

If a user doesn't want to apply fade, then they can simply not add afade
filter. This change is meant for users who want to combine two audio
streams with overlap but don't want to apply fade to audio during
overlap.


I do not like such reasoning, also you changed afade too with this
approach.

That was to prevent an integer value of nb_curves-1 from being accepted.

Anyway, revised patch attached, although I don't see how afade=c=nofade
is useful.

With previous patch it was hidden.


Gyan


Probably ok.


Plan to push tonight.

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


Re: [FFmpeg-devel] [PATCH] avfilter/acrossfade: allow skipping fade on inputs

2019-01-23 Thread Paul B Mahol
On 1/23/19, Gyan  wrote:
>
>
> On 23-01-2019 07:40 PM, Paul B Mahol wrote:
>> On 1/23/19, Gyan  wrote:
>>>
>>> On 23-01-2019 03:00 PM, Paul B Mahol wrote:
 On 1/23/19, Gyan  wrote:
 Why? afade needs change too.
>>> If a user doesn't want to apply fade, then they can simply not add afade
>>> filter. This change is meant for users who want to combine two audio
>>> streams with overlap but don't want to apply fade to audio during
>>> overlap.
>>>
>> I do not like such reasoning, also you changed afade too with this
>> approach.
>
> That was to prevent an integer value of nb_curves-1 from being accepted.
>
> Anyway, revised patch attached, although I don't see how afade=c=nofade
>is useful.

With previous patch it was hidden.

>
> Gyan
>

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


Re: [FFmpeg-devel] [PATCH] avfilter/acrossfade: allow skipping fade on inputs

2019-01-23 Thread Gyan



On 23-01-2019 07:40 PM, Paul B Mahol wrote:

On 1/23/19, Gyan  wrote:


On 23-01-2019 03:00 PM, Paul B Mahol wrote:

On 1/23/19, Gyan  wrote:
Why? afade needs change too.

If a user doesn't want to apply fade, then they can simply not add afade
filter. This change is meant for users who want to combine two audio
streams with overlap but don't want to apply fade to audio during overlap.


I do not like such reasoning, also you changed afade too with this approach.


That was to prevent an integer value of nb_curves-1 from being accepted.

Anyway, revised patch attached, although I don't see how afade=c=nofade 
  is useful.


Gyan
From e8ee422323eabad02ac4c2385c8d5a5997f6cab8 Mon Sep 17 00:00:00 2001
From: Gyan Doshi 
Date: Wed, 23 Jan 2019 13:35:23 +0530
Subject: [PATCH v2] avfilter/afade+acrossfade: allow skipping fade on inputs

New fade curve value 'nofade' passes audio samples as-is.
Primarily useful in carrying out acrossfade without fades.
---
 doc/filters.texi   | 2 ++
 libavfilter/af_afade.c | 7 ++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/doc/filters.texi b/doc/filters.texi
index d06dfe089f..fc98323af0 100644
--- a/doc/filters.texi
+++ b/doc/filters.texi
@@ -958,6 +958,8 @@ select double-exponential seat
 select double-exponential sigmoid
 @item losi
 select logistic sigmoid
+@item nofade
+no fade applied
 @end table
 @end table
 
diff --git a/libavfilter/af_afade.c b/libavfilter/af_afade.c
index 751db7da4d..195fb65ab5 100644
--- a/libavfilter/af_afade.c
+++ b/libavfilter/af_afade.c
@@ -51,7 +51,7 @@ typedef struct AudioFadeContext {
   int curve0, int curve1);
 } AudioFadeContext;
 
-enum CurveType { TRI, QSIN, ESIN, HSIN, LOG, IPAR, QUA, CUB, SQU, CBR, PAR, 
EXP, IQSIN, IHSIN, DESE, DESI, LOSI, NB_CURVES };
+enum CurveType { TRI, QSIN, ESIN, HSIN, LOG, IPAR, QUA, CUB, SQU, CBR, PAR, 
EXP, IQSIN, IHSIN, DESE, DESI, LOSI, NONE, NB_CURVES };
 
 #define OFFSET(x) offsetof(AudioFadeContext, x)
 #define FLAGS AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
@@ -153,6 +153,9 @@ static double fade_gain(int curve, int64_t index, int64_t 
range)
gain = (A - B) / (C - B);
}
 break;
+case NONE:
+gain = 1.0;
+break;
 }
 
 return gain;
@@ -260,6 +263,7 @@ static const AVOption afade_options[] = {
 { "dese", "double-exponential seat", 0,
AV_OPT_TYPE_CONST,  {.i64 = DESE }, 0, 0, FLAGS, "curve" },
 { "desi", "double-exponential sigmoid",  0,
AV_OPT_TYPE_CONST,  {.i64 = DESI }, 0, 0, FLAGS, "curve" },
 { "losi", "logistic sigmoid",0,
AV_OPT_TYPE_CONST,  {.i64 = LOSI }, 0, 0, FLAGS, "curve" },
+{ "nofade",   "no fade; keep audio as-is",   0,
AV_OPT_TYPE_CONST,  {.i64 = NONE }, 0, 0, FLAGS, "curve" },
 { NULL }
 };
 
@@ -380,6 +384,7 @@ static const AVOption acrossfade_options[] = {
 { "dese", "double-exponential seat",   0,  
  AV_OPT_TYPE_CONST,  {.i64 = DESE }, 0, 0, FLAGS, "curve" },
 { "desi", "double-exponential sigmoid",0,  
  AV_OPT_TYPE_CONST,  {.i64 = DESI }, 0, 0, FLAGS, "curve" },
 { "losi", "logistic sigmoid",  0,  
  AV_OPT_TYPE_CONST,  {.i64 = LOSI }, 0, 0, FLAGS, "curve" },
+{ "nofade",   "no fade; keep audio as-is", 0,  
  AV_OPT_TYPE_CONST,  {.i64 = NONE }, 0, 0, FLAGS, "curve" },
 { "curve2",   "set fade curve type for 2nd stream",
OFFSET(curve2),   AV_OPT_TYPE_INT,{.i64 = TRI  }, 0, NB_CURVES - 1, 
FLAGS, "curve" },
 { "c2",   "set fade curve type for 2nd stream",
OFFSET(curve2),   AV_OPT_TYPE_INT,{.i64 = TRI  }, 0, NB_CURVES - 1, 
FLAGS, "curve" },
 { NULL }
-- 
2.19.2___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avfilter/acrossfade: allow skipping fade on inputs

2019-01-23 Thread Paul B Mahol
On 1/23/19, Gyan  wrote:
>
>
> On 23-01-2019 03:00 PM, Paul B Mahol wrote:
>> On 1/23/19, Gyan  wrote:
>>>
>> Why? afade needs change too.
>
> If a user doesn't want to apply fade, then they can simply not add afade
> filter. This change is meant for users who want to combine two audio
> streams with overlap but don't want to apply fade to audio during overlap.
>

I do not like such reasoning, also you changed afade too with this approach.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avfilter/acrossfade: allow skipping fade on inputs

2019-01-23 Thread Gyan



On 23-01-2019 03:00 PM, Paul B Mahol wrote:

On 1/23/19, Gyan  wrote:



Why? afade needs change too.


If a user doesn't want to apply fade, then they can simply not add afade 
filter. This change is meant for users who want to combine two audio 
streams with overlap but don't want to apply fade to audio during overlap.


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


Re: [FFmpeg-devel] [PATCH] avfilter/acrossfade: allow skipping fade on inputs

2019-01-23 Thread Paul B Mahol
On 1/23/19, Gyan  wrote:
>
>

Why? afade needs change too.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel