Re: [FFmpeg-devel] [PATCH 6/6] avformat/wtvdec: Check length of read mpeg2_descriptor

2024-08-06 Thread Peter Ross
On Wed, Aug 07, 2024 at 12:18:53AM +0200, Michael Niedermayer wrote: > Fixes: Use of uninitialized value > Fixes: > 70900/clusterfuzz-testcase-minimized-ffmpeg_dem_WTV_fuzzer-6286909377150976 > > Found-by: continuous fuzzing process > https://github.com/google/oss-fuzz/tree/master/projects/ffmpe

Re: [FFmpeg-devel] [PATCH 4/6] avformat/wtvdec: clear sectors

2024-08-06 Thread Peter Ross
On Wed, Aug 07, 2024 at 12:18:51AM +0200, Michael Niedermayer wrote: > The code can leave uninitialized holes in the array. > Fixes: use of uninitialized values > Fixes: > 70883/clusterfuzz-testcase-minimized-ffmpeg_dem_WTV_fuzzer-6698694567591936 > > Found-by: continuous fuzzing process > https

Re: [FFmpeg-devel] [PATCH 3/3] avcodec/adpcm: Remove setting min_channel to value it is already set to

2024-07-27 Thread Peter Ross
On Fri, Jul 26, 2024 at 11:08:32PM +0200, Michael Niedermayer wrote: > Signed-off-by: Michael Niedermayer > --- > libavcodec/adpcm.c | 4 > 1 file changed, 4 deletions(-) > > diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c > index 8f9a8a8c8e2..6c53d0bcf39 100644 > --- a/libavcodec/adpc

[FFmpeg-devel] [PATCH] avcodec/adpcm: only process right samples when decoding stereo

2024-07-23 Thread Peter Ross
Fixes Coverity issue #1610760. --- libavcodec/adpcm.c | 14 -- 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c index afdbeaa15e..58f2ef0dfb 100644 --- a/libavcodec/adpcm.c +++ b/libavcodec/adpcm.c @@ -1684,22 +1684,24 @@ static int

Re: [FFmpeg-devel] Mono ADPCM for EA WVE Files / Fix Framerate

2024-07-22 Thread Peter Ross
On Sat, Jul 20, 2024 at 10:19:18AM -0400, Aaron wrote: > On Fri, Jul 19, 2024 at 07:54:37PM -0400, Peter Ross wrote: > > > can you post a sample file somewhere > > Of course. Here are some you can try out: > > gm_us.wve: (Stereo - 15 FPS) https://0x0.st/X97A.wve >

Re: [FFmpeg-devel] Mono ADPCM for EA WVE Files / Fix Framerate

2024-07-19 Thread Peter Ross
On Fri, Jul 19, 2024 at 07:34:18AM -0400, redacted redacted wrote: > Hello there, > > The Sims 1: Unleashed makes use of WVE files for its intro videos. > Two of the files for the game use Mono ADPCM audio instead of Stereo. > However, FFmpeg's ADPCM_EA codec always expects the files to be in Ster

[FFmpeg-devel] [PATCHv2 4/4] avcodec/mm: decode raw chunk type and skip unknown audio chunk type

2024-06-26 Thread Peter Ross
--- libavcodec/mmvideo.c | 11 +++ libavformat/mm.c | 9 +++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/libavcodec/mmvideo.c b/libavcodec/mmvideo.c index d339967702..7313507deb 100644 --- a/libavcodec/mmvideo.c +++ b/libavcodec/mmvideo.c @@ -39,6 +39,7 @@

[FFmpeg-devel] [PATCHv2 3/4] avcodec/mm: don't fail if x offset exceeds frame width

2024-06-26 Thread Peter Ross
--- libavcodec/mmvideo.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/mmvideo.c b/libavcodec/mmvideo.c index 933d895f96..d339967702 100644 --- a/libavcodec/mmvideo.c +++ b/libavcodec/mmvideo.c @@ -161,7 +161,7 @@ static int mm_decode_inter(MmContext * s, int half_

[FFmpeg-devel] [PATCHv2 2/4] avcodec/mm: decode partial palette

2024-06-26 Thread Peter Ross
Reviewed-by: Andreas Rheinhardt --- libavcodec/mmvideo.c | 11 --- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/libavcodec/mmvideo.c b/libavcodec/mmvideo.c index 3038d9ea92..933d895f96 100644 --- a/libavcodec/mmvideo.c +++ b/libavcodec/mmvideo.c @@ -78,13 +78,10 @@ static

[FFmpeg-devel] [PATCHv2 1/4] avcodec/mm: set audio pts proportionally to audio offset

2024-06-26 Thread Peter Ross
--- libavformat/mm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/mm.c b/libavformat/mm.c index 23c025d852..a40b5c44bb 100644 --- a/libavformat/mm.c +++ b/libavformat/mm.c @@ -180,7 +180,8 @@ static int read_packet(AVFormatContext *s, if ((ret = av

[FFmpeg-devel] [PATCH 4/4] mm: decode raw chunk type and skip unknown audio chunk type

2024-06-08 Thread Peter Ross
--- libavcodec/mmvideo.c | 11 +++ libavformat/mm.c | 9 +++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/libavcodec/mmvideo.c b/libavcodec/mmvideo.c index 3b6b9ed580..2d006d58ba 100644 --- a/libavcodec/mmvideo.c +++ b/libavcodec/mmvideo.c @@ -39,6 +39,7 @@

[FFmpeg-devel] [PATCH 3/4] mm: don't fail if x offset exceeds frame width

2024-06-08 Thread Peter Ross
--- libavcodec/mmvideo.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/mmvideo.c b/libavcodec/mmvideo.c index b5b6ffd25b..3b6b9ed580 100644 --- a/libavcodec/mmvideo.c +++ b/libavcodec/mmvideo.c @@ -162,7 +162,7 @@ static int mm_decode_inter(MmContext * s, int half_

[FFmpeg-devel] [PATCH 2/4] mm: decode partial palette

2024-06-08 Thread Peter Ross
--- palette decoding now conforms to description at https://wiki.multimedia.cx/index.php/IBM_PhotoMotion libavcodec/mmvideo.c | 10 -- 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/libavcodec/mmvideo.c b/libavcodec/mmvideo.c index 3038d9ea92..b5b6ffd25b 100644 --- a/libav

[FFmpeg-devel] [PATCH 1/4] mm: set audio pts proportionally to audio offset

2024-06-08 Thread Peter Ross
--- libavformat/mm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/mm.c b/libavformat/mm.c index 23c025d852..a40b5c44bb 100644 --- a/libavformat/mm.c +++ b/libavformat/mm.c @@ -180,7 +180,8 @@ static int read_packet(AVFormatContext *s, if ((ret = av

Re: [FFmpeg-devel] [PATCH 1/9] avcodec/vqcdec: Check init_get_bits8() for failure

2024-05-18 Thread Peter Ross
On Sun, May 19, 2024 at 04:49:07AM +0200, Michael Niedermayer wrote: > Fixes: CID1516090 Unchecked return value > > Sponsored-by: Sovereign Tech Fund > Signed-off-by: Michael Niedermayer > --- > libavcodec/vqcdec.c | 5 - > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/lib

Re: [FFmpeg-devel] [PATCH 9/9] avcodec/vp3: Replace check by assert

2024-05-18 Thread Peter Ross
On Sat, May 18, 2024 at 05:57:43AM +0200, Michael Niedermayer wrote: > Fixes: CID1452425 Logically dead code > > Sponsored-by: Sovereign Tech Fund > Signed-off-by: Michael Niedermayer > --- > libavcodec/vp3.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/libavcodec/

Re: [FFmpeg-devel] [PATCH 5/7] avcodec/dsddec: Fix decoding LSBF samples

2024-04-02 Thread Peter Ross
On Tue, Apr 02, 2024 at 03:37:06AM +0200, Andreas Rheinhardt wrote: > ff_dsd2pcm_translate() works internally by converting LSBF input > to MSBF upon reading; its buffer is therefore always MSBF > and should therefore be initialized with MSBF silence; > but this is not true since e3d8963c3cb5b8cd31

[FFmpeg-devel] [PATCH 3/3] fate: rv60 test cases

2024-03-02 Thread Peter Ross
--- samples: https://pross.sdf.org/sandpit/test72x72.rmhd (32 KiB) https://pross.sdf.org/sandpit/test512x512.rmhd (64 KiB) tests/fate/video.mak| 8 tests/ref/fate/rv60-512x512 | 9 + tests/ref/fate/rv60-72x72 | 40 + 3 files chang

[FFmpeg-devel] [PATCH 1/3] avformat/rmdec: support RMHD file format

2024-03-02 Thread Peter Ross
Signed-off-by: Peter Ross --- libavformat/rmdec.c | 43 ++- 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c index 0f1534b582..e7f2480464 100644 --- a/libavformat/rmdec.c +++ b/libavformat/rmdec.c

Re: [FFmpeg-devel] [PATCH] avutil/tx: Use proper default scale for double MDCT/RDFT

2024-02-17 Thread Peter Ross
On Sat, Feb 17, 2024 at 08:44:47PM +0100, Andreas Rheinhardt wrote: > Fixes a bug and a Clang warning: > "use of logical '||' with constant operand [-Wconstant-logical-operand]" > > Signed-off-by: Andreas Rheinhardt > --- > libavutil/tx.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-)

Re: [FFmpeg-devel] [PATCH] lead: support format 0x0

2024-02-15 Thread Peter Ross
On Sun, Nov 12, 2023 at 11:41:23AM +1100, Peter Ross wrote: > Fixes ticket #10660. > --- > > thanks to the mysterious 'ami_stuff'. > > libavcodec/leaddec.c | 38 ++ > 1 file changed, 26 insertions(+), 12 deletions(-) > >

Re: [FFmpeg-devel] [PATCH] lead: support unaligned blocks

2024-02-15 Thread Peter Ross
On Sun, Nov 12, 2023 at 11:40:26AM +1100, Peter Ross wrote: > Fixed ticket #10656. > --- > libavcodec/leaddec.c | 8 > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/libavcodec/leaddec.c b/libavcodec/leaddec.c > index ede52fba5a..fd2018256d 1006

[FFmpeg-devel] [PATCH] av_tx_init: accept NULL scale for RDFT

2024-02-14 Thread Peter Ross
Make av_tx_init() agree with documentation: * Real to complex and complex to real DFTs. * For the float and int32 variants, the scale type is 'float', while for * the double variant, it's a 'double'. If scale is NULL, 1.0 will be used * as a default. --- libavutil/tx.c | 4 ++-

[FFmpeg-devel] [PATCH] lead: support format 0x0

2023-11-11 Thread Peter Ross
Fixes ticket #10660. --- thanks to the mysterious 'ami_stuff'. libavcodec/leaddec.c | 38 ++ 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/libavcodec/leaddec.c b/libavcodec/leaddec.c index fd2018256d..4f2cc03e65 100644 --- a/libavcodec/leadde

[FFmpeg-devel] [PATCH] lead: support unaligned blocks

2023-11-11 Thread Peter Ross
Fixed ticket #10656. --- libavcodec/leaddec.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libavcodec/leaddec.c b/libavcodec/leaddec.c index ede52fba5a..fd2018256d 100644 --- a/libavcodec/leaddec.c +++ b/libavcodec/leaddec.c @@ -192,8 +192,8 @@ static int lead_decode

Re: [FFmpeg-devel] [PATCHv2 1/2] avcodec: LEAD MCMP decoder

2023-11-06 Thread Peter Ross
On Mon, Oct 16, 2023 at 08:43:30AM +1100, Peter Ross wrote: > Partially fixes ticket #798 > > Reviewed-by: James Almer > Reviewed-by: Michael Niedermayer > Signed-off-by: Peter Ross + Paul will push later tonight. thanks everyone for helping out. -- Peter (A907 E02F A6E5 0CD2

Re: [FFmpeg-devel] [PATCH 2/3] avcodec/rv60: RealVideo 6.0 decoder

2023-10-23 Thread Peter Ross
On Mon, Oct 23, 2023 at 12:14:52PM +0200, Anton Khirnov wrote: > Quoting Peter Ross (2023-10-22 01:31:32) > > On Wed, Oct 18, 2023 at 04:42:01PM +0200, Anton Khirnov wrote: > > > Quoting Peter Ross (2023-10-18 10:03:54) > > [..] > > > I think you can simplify this

Re: [FFmpeg-devel] [PATCH 2/3] avcodec/rv60: RealVideo 6.0 decoder

2023-10-23 Thread Peter Ross
On Sun, Oct 22, 2023 at 03:37:34PM +0200, Andreas Rheinhardt wrote: > Peter Ross: > > --- > > diff --git a/libavformat/matroska.c b/libavformat/matroska.c > > index 5878594e68..1674806f29 100644 > > --- a/libavformat/matroska.c > > +++ b/libavformat/matroska.c >

Re: [FFmpeg-devel] [PATCH 2/3] avcodec/rv60: RealVideo 6.0 decoder

2023-10-21 Thread Peter Ross
On Wed, Oct 18, 2023 at 04:42:01PM +0200, Anton Khirnov wrote: > Quoting Peter Ross (2023-10-18 10:03:54) [..] > I think you can simplify this into: > if (s->last_frame[NEXT_PIC]->data[0]) { > av_frame_move_ref(frame, s->last_frame[NEXT_PIC]); >

[FFmpeg-devel] [PATCH 3/3] fate: rv60 test cases

2023-10-18 Thread Peter Ross
--- samples: https://pross.sdf.org/sandpit/test72x72.rmhd (32 KiB) https://pross.sdf.org/sandpit/test512x512.rmhd (64 KiB) tests/fate/video.mak| 8 tests/ref/fate/rv60-512x512 | 9 + tests/ref/fate/rv60-72x72 | 40 + 3 files chang

[FFmpeg-devel] [PATCH 1/3] avformat/rmdec: support RMHD file format

2023-10-18 Thread Peter Ross
--- libavformat/rmdec.c | 42 +- 1 file changed, 29 insertions(+), 13 deletions(-) diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c index 0f1534b582..8e2ef7cc41 100644 --- a/libavformat/rmdec.c +++ b/libavformat/rmdec.c @@ -428,7 +428,8 @@ skip: stat

[FFmpeg-devel] [PATCHv2 2/2] fate: LEAD MCMP test case

2023-10-15 Thread Peter Ross
Signed-off-by: Peter Ross --- Files: https://trac.ffmpeg.org/raw-attachment/ticket/798/BeforeEmboss1.avi https://trac.ffmpeg.org/raw-attachment/ticket/798/DaDa_CMP1.avi https://trac.ffmpeg.org/raw-attachment/ticket/798/version320x240i1.avi tests/fate/video.mak | 9 + tests

[FFmpeg-devel] [PATCHv2 1/2] avcodec: LEAD MCMP decoder

2023-10-15 Thread Peter Ross
Partially fixes ticket #798 Reviewed-by: James Almer Reviewed-by: Michael Niedermayer Signed-off-by: Peter Ross --- configure | 1 + doc/general_contents.texi | 1 + libavcodec/Makefile | 1 + libavcodec/allcodecs.c| 1 + libavcodec/codec_desc.c | 7

[FFmpeg-devel] [PATCH] avradio/avdevice/sdrindev: -sdr_ant option

2023-09-21 Thread Peter Ross
Signed-off-by: Peter Ross --- For use with uhd device with run-time selectable antenna jack. libavdevice/sdrindev.c | 3 +++ libavformat/sdr.h | 1 + libavformat/sdrdemux.c | 1 + 3 files changed, 5 insertions(+) diff --git a/libavdevice/sdrindev.c b/libavdevice/sdrindev.c index

Re: [FFmpeg-devel] [PATCH 1/5] avformat/wtvdec: Don't truncate GUIDs

2023-09-12 Thread Peter Ross
On Tue, Sep 12, 2023 at 02:27:17PM +0200, Andreas Rheinhardt wrote: > Each of the 16 bytes of a GUID is written as a two-character > hex value and three hyphens, leading to a length of 35. > GCC 13 emits a -Wformat-truncation= warning because of this. > > Signed-off-by: Andreas Rheinhardt > --- >

Re: [FFmpeg-devel] Question about ffmpeg support of sph files with embedded-shorten-v2.00 coding

2023-08-29 Thread Peter Ross
On Tue, Aug 29, 2023 at 12:45:57PM -0400, Don Resnik wrote: > ffmpeg, > > I have a sph file that ffmpeg will not process. I am using ffmpeg 6.0, > which I believe is the latest version. I am actually running ffprobe on > the file. > > Here is the file header: ... > and here is the output: >

Re: [FFmpeg-devel] [PATCH 1/2] avradio/sdr: add Airband frequencies

2023-08-14 Thread Peter Ross
On Mon, Aug 14, 2023 at 03:42:53PM +0200, Michael Niedermayer wrote: > On Sat, Jul 29, 2023 at 11:46:56AM +1000, Peter Ross wrote: > > --- > > libavradio/sdrdemux.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/libavradio/sdrdemux.c b/libavradi

[FFmpeg-devel] [PATCH 2/2] avradio/sdr: ident band_descs

2023-07-28 Thread Peter Ross
--- libavradio/sdrdemux.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libavradio/sdrdemux.c b/libavradio/sdrdemux.c index 0bd9222e6d..6a74a6ee2a 100644 --- a/libavradio/sdrdemux.c +++ b/libavradio/sdrdemux.c @@ -1156,9 +1156,9 @@ static int demodulate_fm(SDRContext *s

[FFmpeg-devel] [PATCH 1/2] avradio/sdr: add Airband frequencies

2023-07-28 Thread Peter Ross
--- libavradio/sdrdemux.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavradio/sdrdemux.c b/libavradio/sdrdemux.c index 3b24cfedef..0bd9222e6d 100644 --- a/libavradio/sdrdemux.c +++ b/libavradio/sdrdemux.c @@ -1159,6 +1159,7 @@ BandDescriptor band_descs[] = { {"Mediumwave band" , "

Re: [FFmpeg-devel] [PATCH] libavcodec/ansi: fix ECMA-48 SGR parameter 49

2023-07-11 Thread Peter Ross
On Mon, Jul 10, 2023 at 12:06:33AM +0200, Jonas Lindner wrote: > As can be seen in man console_codes this parameter sets the default > background color > > Signed-off-by: Jonas Lindner > --- > libavcodec/ansi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavcodec/

Re: [FFmpeg-devel] [WIP] [PATCH v5 0/1] add Software Defined Radio support

2023-06-26 Thread Peter Ross
On Tue, Jun 27, 2023 at 01:53:01AM +0200, Michael Niedermayer wrote: > Changes since v4: > * vissualization shows modulation and frequency > * limit station search to AM shortwave and FM broadcast band > * enable FM Probing with some minor adjustments, it seems good enough > * FM Mono demodulation

Re: [FFmpeg-devel] [PATCH 1/2] avcodec/utils: use 32pixel alignment for bink

2023-01-26 Thread Peter Ross
On Sun, Jan 22, 2023 at 01:02:21AM +0100, Michael Niedermayer wrote: > bink supports 16x16 blocks in chroma planes thus we need to allocate enough. > Fixes: out of array access > Fixes: > 55026/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_BINK_fuzzer-6013915371012096 > > Found-by: continuous

Re: [FFmpeg-devel] [PATCH 1/6] avcodec/eatgq: : Check index increments in tgq_decode_block()

2023-01-14 Thread Peter Ross
On Thu, Jan 12, 2023 at 12:54:27AM +0100, Michael Niedermayer wrote: > Fixes: out of array access > Fixes: > 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_EATGQ_fuzzer-6743211456724992 > > Found-by: continuous fuzzing process > https://github.com/google/oss-fuzz/tree/master/projects/ff

Re: [FFmpeg-devel] [PATCH 1/5] avcodec/wbmpdec: use remaining size not whole size

2023-01-14 Thread Peter Ross
On Fri, Jan 13, 2023 at 01:01:34AM +0100, Michael Niedermayer wrote: > Fixes: out of array access > Fixes: > 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_WBMP_fuzzer-6652634692190208 > Fixes: > 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_WBMP_fuzzer-6653703453278208 > Fixes

Re: [FFmpeg-devel] [PATCH 2/3] avcodec/vqcdec: Check width & 15

2022-12-07 Thread Peter Ross
On Sun, Nov 27, 2022 at 11:34:34PM +0100, Michael Niedermayer wrote: > Various parts of the code assume that width can be divided by various powers > of 2 > without rounding > > Fixes: out of array access > Fixes: > 53623/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VQC_fuzzer-6209269924233

Re: [FFmpeg-devel] [PATCH] avcodec/pictordec: Remove mid exit branch

2022-11-25 Thread Peter Ross
On Fri, Nov 25, 2022 at 09:18:33PM +0100, Michael Niedermayer wrote: > This causes the RLE decoder to exit before applying the last RLE run > All images i tested with are unchanged, this makes the special case > for handling the last run unused for non truncated images. > > Signed-off-by: Michael

Re: [FFmpeg-devel] [PATCH 1/2] avcodec/pictordec: Check that the image fits in the input

2022-11-25 Thread Peter Ross
On Fri, Nov 25, 2022 at 03:11:32PM +0100, Anton Khirnov wrote: > Quoting Michael Niedermayer (2022-11-25 14:38:46) > > t On Fri, Nov 25, 2022 at 05:45:29PM +1100, Peter Ross wrote: > > > On Tue, Nov 22, 2022 at 11:56:51PM +0100, Michael Niedermayer wrote: > > > >

Re: [FFmpeg-devel] [PATCH 1/2] avcodec/pictordec: Check that the image fits in the input

2022-11-24 Thread Peter Ross
On Tue, Nov 22, 2022 at 11:56:51PM +0100, Michael Niedermayer wrote: > Fixes: Timeout > Fixes: > 53438/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PICTOR_fuzzer-5458939919859712 > > Found-by: continuous fuzzing process > https://github.com/google/oss-fuzz/tree/master/projects/ffmpe > Signe

Re: [FFmpeg-devel] [PATCH 4/4] avcodec/vqcdec: Check for end of input in decode_vectors()

2022-11-18 Thread Peter Ross
On Fri, Nov 18, 2022 at 10:09:18PM +0100, Michael Niedermayer wrote: > Fixes: Timeout > Fixes: > 52695/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VQC_fuzzer-4882310386548736 > > Found-by: continuous fuzzing process > https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg > Signed-

Re: [FFmpeg-devel] [PATCH 3/3] avformat/electronicarts: add option to return alpha channel in the main video stream in VP6A codec

2022-11-16 Thread Peter Ross
On Mon, Nov 14, 2022 at 11:05:44PM +0100, Marton Balint wrote: > > > On Mon, 14 Nov 2022, Anton Khirnov wrote: > > > Quoting Marton Balint (2022-11-13 19:44:41) > > > Signed-off-by: Marton Balint > > > --- > > > doc/demuxers.texi| 18 > > > libavformat/electronicar

Re: [FFmpeg-devel] [PATCH 2/3] avformat/electronicarts: set packet_read in one place

2022-11-16 Thread Peter Ross
On Sun, Nov 13, 2022 at 07:44:40PM +0100, Marton Balint wrote: > Signed-off-by: Marton Balint > --- > libavformat/electronicarts.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/libavformat/electronicarts.c b/libavformat/electronicarts.c > index 0a0d6249e8..0532264f

Re: [FFmpeg-devel] [PATCH 1/3] avformat/electronicarts: fix EOF check

2022-11-16 Thread Peter Ross
On Sun, Nov 13, 2022 at 07:44:39PM +0100, Marton Balint wrote: > Similar to feof(), avio_feof() is only true after an actual overread. > > Signed-off-by: Marton Balint > --- > libavformat/electronicarts.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavformat/elect

[FFmpeg-devel] [PATCH] avcodec: LEAD MCMP decoder

2022-11-11 Thread Peter Ross
Partially fixes ticket #798 --- sample: https://trac.ffmpeg.org/raw-attachment/ticket/798/DaDa_CMP.avi configure | 1 + doc/general_contents.texi | 1 + libavcodec/Makefile | 1 + libavcodec/allcodecs.c| 1 + libavcodec/codec_desc.c | 7 + libavcodec/codec_i

[FFmpeg-devel] [PATCH 1/3] fate/microsoft: add mss2 region test case

2022-11-05 Thread Peter Ross
--- posting here to test against patchwork tests/fate/microsoft.mak | 3 ++- tests/ref/fate/mss2-region | 7 +++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 tests/ref/fate/mss2-region diff --git a/tests/fate/microsoft.mak b/tests/fate/microsoft.mak index ee1a062425

[FFmpeg-devel] [PATCH 3/3] fate/video: vqc testcase

2022-11-05 Thread Peter Ross
--- tests/fate/video.mak | 3 +++ tests/ref/fate/vqc | 6 ++ 2 files changed, 9 insertions(+) create mode 100644 tests/ref/fate/vqc diff --git a/tests/fate/video.mak b/tests/fate/video.mak index 40cdd9e3b6..af7e77e814 100644 --- a/tests/fate/video.mak +++ b/tests/fate/video.mak @@ -374,6 +

[FFmpeg-devel] [PATCH 2/3] fate/audio: msnsiren test case

2022-11-05 Thread Peter Ross
--- tests/fate/audio.mak | 5 + 1 file changed, 5 insertions(+) diff --git a/tests/fate/audio.mak b/tests/fate/audio.mak index 9d39eeace3..c733d8b7f4 100644 --- a/tests/fate/audio.mak +++ b/tests/fate/audio.mak @@ -45,6 +45,11 @@ fate-imc: CMD = pcm -i $(TARGET_SAMPLES)/imc/imc.avi fate-imc:

Re: [FFmpeg-devel] [PATCHv3 1/4] avcodec/svq1enc: do not use ambiguous interframe mean symbols

2022-10-30 Thread Peter Ross
On Tue, Oct 25, 2022 at 08:17:04PM +1100, Peter Ross wrote: > Don't emit interframe mean symbols -128 and 128. > --- > > v3 patch set changes: > - reordered patchset > - add stds fields around extradata codec ident > - use Lavc codec ident when operating in bite

[FFmpeg-devel] [PATCH] avcodec/svq3: perform residual slice copy before xor'ing watermark key

2022-10-27 Thread Peter Ross
Fixes ticket #5387 --- libavcodec/svq3.c | 7 --- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libavcodec/svq3.c b/libavcodec/svq3.c index 7e8f16cc72..b96c4f61f6 100644 --- a/libavcodec/svq3.c +++ b/libavcodec/svq3.c @@ -1037,15 +1037,16 @@ static int svq3_decode_slice_header(

[FFmpeg-devel] [PATCH] avcodec/mss2: initialise wmv9_mask variable

2022-10-27 Thread Peter Ross
initialised to -1 which indicates wmv9 codec not present --- libavcodec/mss2.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/mss2.c b/libavcodec/mss2.c index 69494d8c44..14746505f4 100644 --- a/libavcodec/mss2.c +++ b/libavcodec/mss2.c @@ -519,7 +519,7 @@ static in

Re: [FFmpeg-devel] [PATCH] avcodec/eatgq: prevent out of bounds memory access and endless loop

2022-10-26 Thread Peter Ross
On Wed, Oct 26, 2022 at 01:41:57PM +0200, Andreas Rheinhardt wrote: > Peter Ross: > > --- > > libavcodec/eatgq.c | 10 +++--- > > 1 file changed, 7 insertions(+), 3 deletions(-) > > > > diff --git a/libavcodec/eatgq.c b/libavcodec/eatgq.c > > index

[FFmpeg-devel] [PATCHv2] fate/microsoft: add mss2 region test case

2022-10-26 Thread Peter Ross
--- test file: https://trac.ffmpeg.org/attachment/ticket/3255/mss2_2.wmv (30 KiB) tests/fate/microsoft.mak | 3 ++- tests/ref/fate/mss2-region | 7 +++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 tests/ref/fate/mss2-region diff --git a/tests/fate/microsoft.mak b/te

[FFmpeg-devel] [PATCH] avcodec/eatgq: prevent out of bounds memory access and endless loop

2022-10-26 Thread Peter Ross
--- libavcodec/eatgq.c | 10 +++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/libavcodec/eatgq.c b/libavcodec/eatgq.c index 89e9f20880..fdda8286ef 100644 --- a/libavcodec/eatgq.c +++ b/libavcodec/eatgq.c @@ -56,7 +56,7 @@ static av_cold int tgq_decode_init(AVCodecContext *a

[FFmpeg-devel] [PATCH] fate/microsoft: add mss2 region test case

2022-10-25 Thread Peter Ross
--- please copy https://trac.ffmpeg.org/raw-attachment/ticket/4043/fail.wmv to $FATE_SAMPLES/mss2 tests/fate/microsoft.mak | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/fate/microsoft.mak b/tests/fate/microsoft.mak index ee1a062425..edd42df8b3 100644 --- a/tests

[FFmpeg-devel] [PATCHv3 4/4] avcodec/svq1dec: detect buggy FFmpeg encoder and apply correction to interframe mean symbols

2022-10-25 Thread Peter Ross
--- libavcodec/svq1dec.c | 32 +++- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/libavcodec/svq1dec.c b/libavcodec/svq1dec.c index 828b38b93d..c7269456e2 100644 --- a/libavcodec/svq1dec.c +++ b/libavcodec/svq1dec.c @@ -73,6 +73,8 @@ typedef struct SVQ1

[FFmpeg-devel] [PATCHv3 3/4] avcodec/svq1: fix interframe mean VLC symbols

2022-10-25 Thread Peter Ross
Fixes ticket #128. The SVQ1 interframe mean VLC symbols -128 and 128 are incorrectly swapped in our SVQ1 implementation, resulting in visible artifacts for some videos. This patch unswaps the order of these two symbols. The most noticable example of the artiacts caused by this error can be observ

[FFmpeg-devel] [PATCHv3 2/4] avcodec/svq1enc: output ident string in extradata field

2022-10-25 Thread Peter Ross
This will enable the acurate identification of FFmpeg produced SVQ1 streams, should there be new bugs found in the encoder. --- libavcodec/svq1enc.c | 16 +++- tests/ref/vsynth/vsynth1-svq1 | 4 ++-- tests/ref/vsynth/vsynth2-svq1 | 4 ++-- tests/ref/vsynth/vsynth

[FFmpeg-devel] [PATCHv3 1/4] avcodec/svq1enc: do not use ambiguous interframe mean symbols

2022-10-25 Thread Peter Ross
Don't emit interframe mean symbols -128 and 128. --- v3 patch set changes: - reordered patchset - add stds fields around extradata codec ident - use Lavc codec ident when operating in bitexact mode libavcodec/svq1enc.c | 5 + tests/ref/seek/vsynth_lena-svq1 | 28 +

Re: [FFmpeg-devel] [PATCH] avcodec/mss2: calculate draw region and revise split position

2022-10-24 Thread Peter Ross
On Thu, Oct 20, 2022 at 07:59:25PM +1100, Peter Ross wrote: > for videos with wmv9 rectangles, the region drawn by ff_mss12_decode_rect > may be less than the entire video area. the wmv9 rectangles are used to > calculate the ff_mss12_decode_rect draw region. > > Fixes tickets

Re: [FFmpeg-devel] [PATCHv3] avcodec/jpegtables: remove duplicate luma and chroma quantization tables

2022-10-24 Thread Peter Ross
On Tue, Oct 18, 2022 at 08:06:02PM +1100, Peter Ross wrote: > Duplicates of the standard JPEG quantization tables were found in the > AGM, MSS34(dsp), NUV and VP31 codecs. This patch elimates those duplicates, > placing a single copy in jpegquanttables.c. > --- > added FF_VISIBI

Re: [FFmpeg-devel] [PATCH v2 02/24] avcodec/eamad: Don't use IDCTDSP-API unnecessarily

2022-10-21 Thread Peter Ross
On Fri, Oct 21, 2022 at 10:12:38PM +0200, Andreas Rheinhardt wrote: > The eamad decoder uses a custom IDCT and actually does not > use the IDCTDSP API at all. Somehow it was nevertheless > used to simply apply the identity permutation on ff_zigzag_direct. > This commit stops doing so. i think this

[FFmpeg-devel] [PATCH] avcodec/mss2: calculate draw region and revise split position

2022-10-20 Thread Peter Ross
for videos with wmv9 rectangles, the region drawn by ff_mss12_decode_rect may be less than the entire video area. the wmv9 rectangles are used to calculate the ff_mss12_decode_rect draw region. Fixes tickets #3255 and #4043 --- (will also fix identation as seperate commit on push) libavcodec/ms

Re: [FFmpeg-devel] [PATCHv2 3/4] avcodec/svq1enc: output ident string in extradata field

2022-10-20 Thread Peter Ross
On Wed, Oct 19, 2022 at 10:42:39PM -0300, James Almer wrote: > On 10/19/2022 10:30 PM, Peter Ross wrote: > > This will enable the acurate identification of FFmpeg produced > > SVQ1 streams, should there be new bugs found in the encoder. > > --- > > libavcodec/svq1enc.c

[FFmpeg-devel] [PATCHv2 4/4] avcodec/svq1dec: detect buggy FFmpeg encoder and apply correction to interframe mean symbols

2022-10-19 Thread Peter Ross
--- libavcodec/svq1dec.c | 32 +++- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/libavcodec/svq1dec.c b/libavcodec/svq1dec.c index 828b38b93d..c7269456e2 100644 --- a/libavcodec/svq1dec.c +++ b/libavcodec/svq1dec.c @@ -73,6 +73,8 @@ typedef struct SVQ1

[FFmpeg-devel] [PATCHv2 3/4] avcodec/svq1enc: output ident string in extradata field

2022-10-19 Thread Peter Ross
This will enable the acurate identification of FFmpeg produced SVQ1 streams, should there be new bugs found in the encoder. --- libavcodec/svq1enc.c | 9 + 1 file changed, 9 insertions(+) diff --git a/libavcodec/svq1enc.c b/libavcodec/svq1enc.c index 9bd5a04368..6aacaef88d 100644 --- a/li

[FFmpeg-devel] [PATCHv2 2/4] avcodec/svq1enc: do not use ambiguous interframe mean symbols

2022-10-19 Thread Peter Ross
Don't emit interframe mean symbols -128 and 128 to maintain compatibility with older versions of FFmpeg that incorrectly interpret these symbols. --- libavcodec/svq1enc.c | 5 + tests/ref/seek/vsynth_lena-svq1 | 28 ++-- tests/ref/vsynth/vsynth1-svq1

[FFmpeg-devel] [PATCHv2 1/4] avcodec/svq1: fix interframe mean VLC symbols

2022-10-19 Thread Peter Ross
Fixes ticket #128. The SVQ1 interframe mean VLC symbols -128 and 128 are incorrectly swapped in our SVQ1 implementation, resulting in visible artifacts for some videos. This patch unswaps the order of these two symbols. The most noticable example of the artiacts caused by this error can be observ

Re: [FFmpeg-devel] [PATCHv2] avcodec: ViewQuest VQC decoder

2022-10-18 Thread Peter Ross
On Tue, Oct 18, 2022 at 12:05:05PM +0200, Tomas Härdin wrote: > sön 2022-10-09 klockan 11:36 +1100 skrev Peter Ross: > > > > +    gamma = buf[0] >> 4; > > +    contrast = AV_RL16(buf + 2) >> 1; > > +    if (gamma || contrast) > > +    avpriv_reque

[FFmpeg-devel] [PATCHv3] avcodec/jpegtables: remove duplicate luma and chroma quantization tables

2022-10-18 Thread Peter Ross
Duplicates of the standard JPEG quantization tables were found in the AGM, MSS34(dsp), NUV and VP31 codecs. This patch elimates those duplicates, placing a single copy in jpegquanttables.c. --- added FF_VISIBILITY_xxx_HIDDEN statements and removed suplus copyright text. libavcodec/Makefile

Re: [FFmpeg-devel] [PATCH] avcodec/svq1: fix interframe mean VLC symbols

2022-10-17 Thread Peter Ross
On Mon, Oct 17, 2022 at 10:38:53PM +0200, Michael Niedermayer wrote: > On Mon, Oct 17, 2022 at 08:33:28PM +1100, Peter Ross wrote: > > On Mon, Oct 17, 2022 at 05:04:29AM +0200, Andreas Rheinhardt wrote: > > > Peter Ross: > > > > Fixes ticket #128. > > >

Re: [FFmpeg-devel] [PATCH] avcodec/svq1: fix interframe mean VLC symbols

2022-10-17 Thread Peter Ross
On Mon, Oct 17, 2022 at 05:04:29AM +0200, Andreas Rheinhardt wrote: > Peter Ross: > > Fixes ticket #128. > > > > The SVQ1 interframe mean VLC symbols -128 and 128 are incorrectly swapped > > in our SVQ1 implementation, resulting in visible artifacts for some videos.

[FFmpeg-devel] [PATCH] avcodec/svq1: fix interframe mean VLC symbols

2022-10-16 Thread Peter Ross
Fixes ticket #128. The SVQ1 interframe mean VLC symbols -128 and 128 are incorrectly swapped in our SVQ1 implementation, resulting in visible artifacts for some videos. This patch unswaps the order of these two symbols. The most noticable example of the artiacts caused by this error can be observ

Re: [FFmpeg-devel] [PATCHv2] avcodec: ViewQuest VQC decoder

2022-10-16 Thread Peter Ross
On Sun, Oct 09, 2022 at 11:36:09AM +1100, Peter Ross wrote: > Reviewed-by: Andreas Rheinhardt > Reviewed-by: Tomas Härdin > --- > > Thanks for reviews. All suggestions implemented. > > Changelog | 1 + > doc/general_contents.texi | 1 + > liba

[FFmpeg-devel] [PATCHv2] avcodec/jpegtables: remove duplicate luma and chroma quantization tables

2022-10-14 Thread Peter Ross
Duplicates of the standard JPEG quantization tables were found in the AGM, MSS34(dsp), NUV and VP31 codecs. This patch elimates those duplicates, placing a single copy in jpegquanttables.c. --- libavcodec/Makefile | 8 ++--- libavcodec/agm.c | 27 - libavcodec

Re: [FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: remove duplicate luma and chroma quantization tables

2022-10-14 Thread Peter Ross
On Fri, Oct 14, 2022 at 05:19:44PM +0200, Andreas Rheinhardt wrote: > Peter Ross: > > Duplicates of the standard JPEG quantization tables were found in the > > AGM, MSS34(dsp), NUV and VP31 codecs. This patch elimates those duplicates, > > placing a single copy in jpe

[FFmpeg-devel] [PATCH 2/2] avcodec/vp3data: rectify comment

2022-10-13 Thread Peter Ross
--- they're actually one byte different. libavcodec/vp3data.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/vp3data.h b/libavcodec/vp3data.h index 317797a697..a347f492ad 100644 --- a/libavcodec/vp3data.h +++ b/libavcodec/vp3data.h @@ -25,7 +25,7 @@ #include

[FFmpeg-devel] [PATCH 1/2] avcodec/jpegtables: remove duplicate luma and chroma quantization tables

2022-10-13 Thread Peter Ross
Duplicates of the standard JPEG quantization tables were found in the AGM, MSS34(dsp), NUV and VP31 codecs. This patch elimates those duplicates, placing a single copy in jpegtables. --- configure | 6 -- libavcodec/agm.c| 27 +-- libavcodec/jpegt

[FFmpeg-devel] [PATCH] fate: vqc testcase

2022-10-08 Thread Peter Ross
--- please copy https://trac.ffmpeg.org/attachment/ticket/5601/samp1.avi to $FATE_SAMPLES/vqc/ tests/fate/video.mak | 3 +++ tests/ref/fate/vqc | 6 ++ 2 files changed, 9 insertions(+) create mode 100644 tests/ref/fate/vqc diff --git a/tests/fate/video.mak b/tests/fate/video.mak index

[FFmpeg-devel] [PATCHv2] avcodec: ViewQuest VQC decoder

2022-10-08 Thread Peter Ross
c/vqcdec.c b/libavcodec/vqcdec.c new file mode 100644 index 00..5d1a03158c --- /dev/null +++ b/libavcodec/vqcdec.c @@ -0,0 +1,430 @@ +/* + * ViewQuest VQC decoder + * Copyright (C) 2022 Peter Ross + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it a

[FFmpeg-devel] [PATCH] avcodec: ViewQuest VQC decoder

2022-10-06 Thread Peter Ross
1387d --- /dev/null +++ b/libavcodec/vqcdec.c @@ -0,0 +1,443 @@ +/* + * ViewQuest VQC decoder + * Copyright (C) 2022 Peter Ross + * + * 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 + *

Re: [FFmpeg-devel] [PATCH 8/9] avformat/icodec: Check nb_pal

2022-09-17 Thread Peter Ross
On Sat, Sep 17, 2022 at 11:15:56PM +0200, Michael Niedermayer wrote: > Fixes: signed integer overflow: 538976288 * 4 cannot be represented in type > 'int' > Fixes: > 50993/clusterfuzz-testcase-minimized-ffmpeg_dem_ICO_fuzzer-6690068904935424 > > Found-by: continuous fuzzing process > https://gi

Re: [FFmpeg-devel] [PATCH 02/18] avcodec/vp8: Disable lf_delta for VP7

2022-09-11 Thread Peter Ross
On Sun, Sep 11, 2022 at 06:38:39AM +0200, Andreas Rheinhardt wrote: > Peter Ross: > > On Sat, Sep 10, 2022 at 03:07:13AM +0200, Andreas Rheinhardt wrote: > >> It is a VP8-only feature. > >> > >> Signed-off-by: Andreas Rheinhardt > >> --- > >

Re: [FFmpeg-devel] [PATCH 02/18] avcodec/vp8: Disable lf_delta for VP7

2022-09-10 Thread Peter Ross
On Sat, Sep 10, 2022 at 03:07:13AM +0200, Andreas Rheinhardt wrote: > It is a VP8-only feature. > > Signed-off-by: Andreas Rheinhardt > --- > libavcodec/vp8.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/libavcodec/vp8.c b/libavcodec/vp8.c > index c00c5c975e..04a21

[FFmpeg-devel] [PATCH 2/2] avcodec/ildadec: ILDA Image Data Transfer Format decoder

2022-08-22 Thread Peter Ross
Signed-off-by: Peter Ross --- libavcodec/Makefile | 1 + libavcodec/allcodecs.c | 1 + libavcodec/codec_desc.c | 7 + libavcodec/codec_id.h | 1 + libavcodec/ildadec.c| 297 5 files changed, 307 insertions(+) create mode 100644

[FFmpeg-devel] [PATCH 1/2] avformat/ildadec: ILDA Image Data Transfer Format demuxer

2022-08-22 Thread Peter Ross
Signed-off-by: Peter Ross --- sample: 'ftp://ftp.photonlexicon.com/public/Laser Shows/ILDA Frames/wim.ild' doc/general_contents.texi | 1 + libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/ildadec.c | 137 +

[FFmpeg-devel] [PATCHv3] avcodec: WBMP (Wireless Application Protocol Bitmap) image format

2022-08-07 Thread Peter Ross
Reviewed-by: Andreas Rheinhardt Signed-off-by: Peter Ross --- flipped fate ref file order, due to 4fb8741c4670965eaf1f78d6122c6bdfdf1f3358 submitting to patchwork before push Changelog | 1 + doc/general_contents.texi | 2 + libavcodec/Makefile | 2 + libavcodec

[FFmpeg-devel] [PATCHv2] avcodec: WBMP (Wireless Application Protocol Bitmap) image format

2022-07-29 Thread Peter Ross
--- v2 includes all of the Andreas Rheinhardt's suggestions. Changelog | 1 + doc/general_contents.texi | 2 + libavcodec/Makefile | 2 + libavcodec/allcodecs.c| 2 + libavcodec/codec_desc.c | 7 +++ libavcodec/codec_id.h | 1 + libavcodec/wbmpdec.c | 9

[FFmpeg-devel] [PATCH] WBMP (Wireless Application Protocol Bitmap) image format

2022-07-26 Thread Peter Ross
--- example: https://example-files.online-convert.com/raster%20image/wbmp/example.wbmp Changelog | 1 + doc/general_contents.texi | 2 + libavcodec/Makefile | 2 + libavcodec/allcodecs.c| 2 + libavcodec/codec_desc.c | 7 +++ libavcodec/codec_id.h | 1 + li

Re: [FFmpeg-devel] [PATCH 3/6] tools/target_dec_fuzzer: Adjust threshold for MMVIDEO

2022-07-20 Thread Peter Ross
On Tue, Jul 19, 2022 at 01:34:50PM +0200, Michael Niedermayer wrote: > Fixes: Timeout > Fixes: > 49003/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MMVIDEO_fuzzer-5550368423018496 > > Found-by: continuous fuzzing process > https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg > Sig

[FFmpeg-devel] [PATCH] doc: describe QOI image format

2022-06-15 Thread Peter Ross
--- doc/general_contents.texi | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/general_contents.texi b/doc/general_contents.texi index 93a90a5e52..987a2f82fb 100644 --- a/doc/general_contents.texi +++ b/doc/general_contents.texi @@ -785,6 +785,8 @@ following image formats are supported:

[FFmpeg-devel] [PATCH] avformat/codec2: remove surplus include 'memory.h' statement

2022-03-22 Thread Peter Ross
on glibc memory.h drags in string.h, but codec2 does not use any str* or mem* functions. additionally, memory.h is not part of the C99 or POSIX standards. --- libavformat/codec2.c | 1 - 1 file changed, 1 deletion(-) diff --git a/libavformat/codec2.c b/libavformat/codec2.c index cd0521299c..400c5

  1   2   3   4   >