pombreda / webm

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

vp9_spatial_svc_encoder crash at assert(tp_orig < *tp); in rd_pick_partition() #879

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Repro:
1. Add vpx_codec_control(codec_ctx, VP8E_SET_CPUUSED, 7); at the end of 
vpx_svc_init().
2. Run examples/vp9_spatial_svc_encoder --width=1280 --height=720 
--target-bitrate=1000 --spatial-layers=2 --scale-factors=640/1920,1920/1920 
--passes=1 --rc-end-usage=1 --lag-in-frames=0 xxx.yuv output.ivf

Findings:
1. It's not svc related issue.
2. It looks like there is a corner case that the search for a block is 
completely skipped.
3. What I've seen is in a 64x64 search, only split is allowed. Then in one 
32x32 search, only split is allowed, too. Then in one 16x16 search, somehow the 
min block size is set to BLOCK_16X32 in set_partition_range(). So this 16x16 
search is completely skipped, which causes the search of the 64x64 block cannot 
be finished.

Original issue reported on code.google.com by ming...@google.com on 13 Nov 2014 at 12:47

GoogleCodeExporter commented 9 years ago

Original comment by renganat...@google.com on 20 Nov 2014 at 11:17