Re: [FFmpeg-devel] [PATCH 4/4] wavpackenc: reset trailer info on block encoding

2014-08-22 Thread Paul B Mahol
On 8/22/14, Christophe Gisquet  wrote:
> In some cases, in particular if several blocks are needed because of
> the channel layout (e.g. 2.1), the information used to write the
> trailing bits terminating the sample data was not reset.
>
> This would cause potential desync on the decoder, although decoded
> samples were actually mostly fine.
>
> Fixes ticket #3879.
> ---
>  libavcodec/wavpackenc.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/libavcodec/wavpackenc.c b/libavcodec/wavpackenc.c
> index 299a035..63971c6 100644
> --- a/libavcodec/wavpackenc.c
> +++ b/libavcodec/wavpackenc.c
> @@ -2487,6 +2487,9 @@ static int wavpack_encode_block(WavPackEncodeContext
> *s,
>  struct Decorr *dpp;
>  PutByteContext pb;
>
> +if (s->flags & WV_MONO_DATA) {
> +CLEAR(s->w);
> +}
>  if (!(s->flags & WV_MONO) && s->optimize_mono) {
>  int32_t lor = 0, diff = 0;
>
> --
> 1.9.2.msysgit.0
>
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>

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


[FFmpeg-devel] [PATCH 4/4] wavpackenc: reset trailer info on block encoding

2014-08-22 Thread Christophe Gisquet
In some cases, in particular if several blocks are needed because of
the channel layout (e.g. 2.1), the information used to write the
trailing bits terminating the sample data was not reset.

This would cause potential desync on the decoder, although decoded
samples were actually mostly fine.

Fixes ticket #3879.
---
 libavcodec/wavpackenc.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/libavcodec/wavpackenc.c b/libavcodec/wavpackenc.c
index 299a035..63971c6 100644
--- a/libavcodec/wavpackenc.c
+++ b/libavcodec/wavpackenc.c
@@ -2487,6 +2487,9 @@ static int wavpack_encode_block(WavPackEncodeContext *s,
 struct Decorr *dpp;
 PutByteContext pb;
 
+if (s->flags & WV_MONO_DATA) {
+CLEAR(s->w);
+}
 if (!(s->flags & WV_MONO) && s->optimize_mono) {
 int32_t lor = 0, diff = 0;
 
-- 
1.9.2.msysgit.0

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