Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#6182 closed defect (fixed)

scpr: crash with 16bpp

Reported by: ami_stuff Owned by:
Priority: important Component: avcodec
Version: git-master Keywords: scpr crash
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

decodes correctly with original codec

(gdb) r -i '/media/sdb1/f/sp/sp_16bit_q100_o.avi'  -f null -
Starting program: /media/sdb1/ffmpeg/ffmpeg_g -i '/media/sdb1/f/sp/sp_16bit_q100_o.avi'  -f null -
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
ffmpeg version 3.2.git Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 5.3.0 (Ubuntu 5.3.0-3ubuntu1~14.04) 20151204
  configuration: --disable-ffprobe --disable-ffserver --disable-ffplay --enable-gpl
  libavutil      55. 47.100 / 55. 47.100
  libavcodec     57. 81.100 / 57. 81.100
  libavformat    57. 66.102 / 57. 66.102
  libavdevice    57.  2.100 / 57.  2.100
  libavfilter     6. 73.100 /  6. 73.100
  libswscale      4.  3.101 /  4.  3.101
  libswresample   2.  4.100 /  2.  4.100
  libpostproc    54.  2.100 / 54.  2.100
Input #0, avi, from '/media/sdb1/f/sp/sp_16bit_q100_o.avi':
  Metadata:
    encoder         : Lavf57.36.100
  Duration: 00:00:04.44, start: 0.000000, bitrate: 727 kb/s
    Stream #0:0: Video: scpr (SCPR / 0x52504353), rgb0, 318x198, 714 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc
[New Thread 0xb68c6b40 (LWP 14539)]
[New Thread 0xb60c5b40 (LWP 14540)]
[New Thread 0xb58c4b40 (LWP 14541)]
[New Thread 0xb50c3b40 (LWP 14542)]
[New Thread 0xb48c2b40 (LWP 14543)]
[New Thread 0xb40c1b40 (LWP 14544)]
[New Thread 0xb38c0b40 (LWP 14545)]
[New Thread 0xb30bfb40 (LWP 14546)]
[New Thread 0xb28beb40 (LWP 14547)]
Output #0, null, to 'pipe:':
  Metadata:
    encoder         : Lavf57.66.102
    Stream #0:0: Video: wrapped_avframe, rgb0, 318x198, q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
    Metadata:
      encoder         : Lavc57.81.100 wrapped_avframe
Stream mapping:
  Stream #0:0 -> #0:0 (scpr (native) -> wrapped_avframe (native))
Press [q] to stop, [?] for help

Program received signal SIGSEGV, Segmentation fault.
decode_unit (s=s@entry=0xb68c7020, pixel=pixel@entry=0xb76a08c8, 
    rval=rval@entry=0xbfffe710, step=400) at libavcodec/scpr.c:224
224	    pixel->freq[c] = cnt_c + step;
(gdb) bt
#0  decode_unit (s=s@entry=0xb68c7020, pixel=pixel@entry=0xb76a08c8, 
    rval=rval@entry=0xbfffe710, step=400) at libavcodec/scpr.c:224
#1  0x086add77 in decompress_i (linesize=320, dst=0xb2042020, avctx=0x9a29ca0)
    at libavcodec/scpr.c:307
#2  decode_frame (avctx=0x9a29ca0, data=0x9a2bf20, got_frame=0xbfffe81c, 
    avpkt=0xbfffe78c) at libavcodec/scpr.c:686
#3  0x08729a59 in avcodec_decode_video2 (avctx=0x9a29ca0, picture=0x9a2bf20, 
    got_picture_ptr=0xbfffe81c, avpkt=0xbfffe918) at libavcodec/utils.c:2263
#4  0x0872a9dd in do_decode (avctx=avctx@entry=0x9a29ca0, 
    pkt=pkt@entry=0xbfffe918) at libavcodec/utils.c:2796
#5  0x0872b7b0 in avcodec_send_packet (avctx=0x9a29ca0, avpkt=<optimized out>)
    at libavcodec/utils.c:2885
#6  0x080e8447 in decode (pkt=0xbfffe918, got_frame=0xbfffeab4, 
    frame=<optimized out>, avctx=0x9a29ca0) at ffmpeg.c:2052
#7  decode_video (ist=ist@entry=0x9a29940, pkt=pkt@entry=0xbfffeaf4, 
    got_output=got_output@entry=0xbfffeab4, eof=0) at ffmpeg.c:2248
#8  0x080e9806 in process_input_packet (ist=0x9a29940, pkt=0xbfffed24, 
    no_eof=0) at ffmpeg.c:2491
#9  0x080c78d6 in process_input (file_index=<optimized out>) at ffmpeg.c:4251
#10 transcode_step () at ffmpeg.c:4339
#11 transcode () at ffmpeg.c:4393
#12 main (argc=<optimized out>, argv=<optimized out>) at ffmpeg.c:4598
(gdb) 

Attachments (9)

sp_16bit_q100_o.avi (394.4 KB ) - added by ami_stuff 7 years ago.
16bpp_odd_q72.avi (134.9 KB ) - added by ami_stuff 7 years ago.
16bpp_odd_q62.avi (78.1 KB ) - added by ami_stuff 7 years ago.
16bpp_odd_q50.avi (44.8 KB ) - added by ami_stuff 7 years ago.
16bpp_odd_q87.avi (227.1 KB ) - added by ami_stuff 7 years ago.
500_500_q50.avi (139.1 KB ) - added by ami_stuff 7 years ago.
500_500_q100.avi (138.5 KB ) - added by ami_stuff 7 years ago.
502_500_q50.avi (255.3 KB ) - added by ami_stuff 7 years ago.
502_500_q100.avi (603.5 KB ) - added by ami_stuff 7 years ago.

Download all attachments as: .zip

Change History (18)

by ami_stuff, 7 years ago

Attachment: sp_16bit_q100_o.avi added

comment:1 by Elon Musk, 7 years ago

This decodes to green nonsense. What you used to encode this?

in reply to:  1 comment:2 by ami_stuff, 7 years ago

Replying to richardpl:

This decodes to green nonsense.

It decodes here just fine with 32bit codec.

What you used to encode this?

VirtualDub + original codec.

comment:3 by Elon Musk, 7 years ago

What version of "original codec"?

comment:4 by Elon Musk, 7 years ago

Also send picture of one decoded frame.

comment:5 by ami_stuff, 7 years ago

http://www.infognition.com/ScreenPressor/download.html

The original codec is buggy as well because it crashes with attached new files (when quality is lower than 72), so yes fixing the crash should be probably enough.

Last edited 7 years ago by ami_stuff (previous) (diff)

by ami_stuff, 7 years ago

Attachment: 16bpp_odd_q72.avi added

by ami_stuff, 7 years ago

Attachment: 16bpp_odd_q62.avi added

by ami_stuff, 7 years ago

Attachment: 16bpp_odd_q50.avi added

by ami_stuff, 7 years ago

Attachment: 16bpp_odd_q87.avi added

comment:6 by Elon Musk, 7 years ago

Resolution: fixed
Status: newclosed

comment:7 by Elon Musk, 7 years ago

Component: undeterminedavcodec
Reproduced by developer: set
Version: unspecifiedgit-master

comment:8 by Carl Eugen Hoyos, 7 years ago

Keywords: scpr crash added
Priority: normalimportant

by ami_stuff, 7 years ago

Attachment: 500_500_q50.avi added

by ami_stuff, 7 years ago

Attachment: 500_500_q100.avi added

by ami_stuff, 7 years ago

Attachment: 502_500_q50.avi added

by ami_stuff, 7 years ago

Attachment: 502_500_q100.avi added

comment:9 by ami_stuff, 7 years ago

It looks like for certain resolutions this codec is encoding video in lossy compression mode even if not asked to do so?

Last edited 7 years ago by ami_stuff (previous) (diff)
Note: See TracTickets for help on using tickets.