iniwf / webm

Automatically exported from code.google.com/p/webm
0 stars 0 forks source link

libvpx crash in RD code when starting second pass #79

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What is the expected behavior? What do you see instead?

ivfenc should finish the second pass successfully. It crashes early, though.

What version are you using? On what operating system?

v0.9.0-71-g3245d46
Ubuntu 10.04, x86_64

Can you reproduce using the ivfdec or ivfenc tools? What command line are
you using?

ivfenc --passes=2 stream.yuv stream.webm

stream.yuv is generated from 
http://downloads.paramount.com/mp/startrek/Trlr2_internet_480p.mov using 
mplayer -vo yuv4mpeg -ao null

Not every file triggers this bug, thus I propose using the publicly available 
test vector from Paramount.

Please provide any additional information below.

Info from gdb:
(gdb) run --passes=2 stream.yuv stream.webm
Starting program: /usr/local/bin/ivfenc --passes=2 stream.yuv stream.webm
[Thread debugging using libthread_db enabled]
Pass 1/2 frame 3218/3219  412032B    1024b/f   24559b/s   24336 ms (132.23 fps)
Pass 2/2 frame    2/1        397B 
Program received signal SIGSEGV, Segmentation fault.
0x0000000000418bae in vp8_initialize_rd_consts (cpi=0x91cfc0, Qvalue=71)
    at vp8/encoder/rdopt.c:252
252             cpi->RDMULT += (cpi->RDMULT * rd_iifactor[cpi->next_iiratio]) 
>> 4;

(gdb) bt
#0  0x0000000000418bae in vp8_initialize_rd_consts (cpi=0x91cfc0, Qvalue=71)
    at vp8/encoder/rdopt.c:252
#1  0x0000000000441e51 in vp8_encode_frame (cpi=0x91cfc0)
    at vp8/encoder/encodeframe.c:505
#2  0x000000000040c5e0 in encode_frame_to_data_rate (cpi=0x91cfc0, 
    size=<value optimised out>, dest=<value optimised out>, 
    frame_flags=<value optimised out>) at vp8/encoder/onyx_if.c:4041
#3  0x0000000000410294 in Pass2Encode (ptr=<value optimised out>, 
    frame_flags=<value optimised out>, size=<value optimised out>, 
    dest=<value optimised out>, time_stamp=<value optimised out>, 
    time_end=<value optimised out>, flush=0) at vp8/encoder/onyx_if.c:4743
#4  vp8_get_compressed_data (ptr=<value optimised out>, 
    frame_flags=<value optimised out>, size=<value optimised out>, 
    dest=<value optimised out>, time_stamp=<value optimised out>, 
    time_end=<value optimised out>, flush=0) at vp8/encoder/onyx_if.c:5096
#5  0x00000000004093bd in vp8e_encode (ctx=0x87c6b0, img=0x7fffffffded0, 
    pts=<value optimised out>, duration=<value optimised out>, 
    flags=<value optimised out>, deadline=<value optimised out>)
    at vp8/vp8_cx_iface.c:728
#6  0x0000000000407438 in vpx_codec_encode (ctx=0x7fffffffdf90, img=0x47, 
    pts=-2147483648, duration=25411681, flags=9591104, deadline=9587008)
    at vpx/src/vpx_encoder.c:145
#7  0x00000000004059df in main (argc=<value optimised out>, 
---Type <return> to continue, or q <return> to quit---
    argv_=<value optimised out>) at ivfenc.c:1060

(gdb) p cpi->next_iiratio
$1 = -2147483648

Original issue reported on code.google.com by maikmer...@googlemail.com on 12 Jun 2010 at 8:13

GoogleCodeExporter commented 9 years ago
https://review.webmproject.org/146

Original comment by jkoles...@google.com on 12 Jun 2010 at 6:22

GoogleCodeExporter commented 9 years ago

Original comment by jkoles...@google.com on 14 Jun 2010 at 1:14

GoogleCodeExporter commented 9 years ago

Original comment by albe...@google.com on 8 Mar 2012 at 12:10