View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000134 | JVT JM H.264/AVC reference software | encoder | public | 2008-09-14 15:38 | 2008-09-15 08:14 |
Reporter | evgenyk | Assigned To | Alexis Michael Tourapis | ||
Priority | normal | Severity | crash | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | JM 14.2 | ||||
Fixed in Version | JM 15.0 | ||||
Summary | 0000134: Encoder crashes when P or B inter MB's modes are forced to 4x8, 8x4 and 4x4 sub-partitions only | ||||
Description | Hello JVT JM experts, I should to force inter modes in P and B slices to 4x8, 8x4 and 4x4 only. However, encoder versions 14.0 and 14.2 were crashed when I modify a "cfg" file as follows: --------------------------------------------------------------------------- PSliceSkip = 0 # P-Slice Skip mode consideration (0=disable, 1=enable) PSliceSearch16x16 = 0 # P-Slice Inter block search 16x16 (0=disable, 1=enable) PSliceSearch16x8 = 0 # P-Slice Inter block search 16x8 (0=disable, 1=enable) PSliceSearch8x16 = 0 # P-Slice Inter block search 8x16 (0=disable, 1=enable) PSliceSearch8x8 = 0 # P-Slice Inter block search 8x8 (0=disable, 1=enable) PSliceSearch8x4 = 1 # P-Slice Inter block search 8x4 (0=disable, 1=enable) PSliceSearch4x8 = 1 # P-Slice Inter block search 4x8 (0=disable, 1=enable) PSliceSearch4x4 = 1 # P-Slice Inter block search 4x4 (0=disable, 1=enable) BSliceDirect = 0 # B-Slice Skip mode consideration (0=disable, 1=enable) BSliceSearch16x16 = 0 # B-Slice Inter block search 16x16 (0=disable, 1=enable) BSliceSearch16x8 = 0 # B-Slice Inter block search 16x8 (0=disable, 1=enable) BSliceSearch8x16 = 0 # B-Slice Inter block search 8x16 (0=disable, 1=enable) BSliceSearch8x8 = 0 # B-Slice Inter block search 8x8 (0=disable, 1=enable) BSliceSearch8x4 = 1 # B-Slice Inter block search 8x4 (0=disable, 1=enable) BSliceSearch4x8 = 1 # B-Slice Inter block search 4x8 (0=disable, 1=enable) BSliceSearch4x4 = 1 # B-Slice Inter block search 4x4 (0=disable, 1=enable) Sincerely yours, Evgeny | ||||
Tags | No tags attached. | ||||
|
This issue hapens when I allow using 8x8 transform additionally: So when => Transform8x8Mode=1 |
|
The problem seems to have existed in earlier versions also. |
|
In void submacroblock_mode_decision() add the following new variable: boolean stored_state_8x8 = FALSE; This variable needs to be set when setting best 8x8 coding state: //--- store best 8x8 coding state --- if (block < 3) { store_coding_state (currMB, cs_b8); stored_state_8x8 = TRUE; } Finally, the cs_b8 state needs to be restored at the end of the process, i.e. //===== set the coding state after current block ===== //if (transform8x8 == 0 || block < 3) //if (block < 3) // replace this line if (stored_state_8x8 == TRUE) // correct code reset_coding_state (currMB, cs_b8); |
Date Modified | Username | Field | Change |
---|---|---|---|
2008-09-14 15:38 | evgenyk | New Issue | |
2008-09-14 16:28 | evgenyk | Note Added: 0000233 | |
2008-09-14 16:29 | evgenyk | Note Edited: 0000233 | |
2008-09-14 19:52 | Alexis Michael Tourapis | Note Added: 0000235 | |
2008-09-15 08:14 | Alexis Michael Tourapis | Note Added: 0000236 | |
2008-09-15 08:14 | Alexis Michael Tourapis | Status | new => resolved |
2008-09-15 08:14 | Alexis Michael Tourapis | Fixed in Version | => JM 14.2-dev |
2008-09-15 08:14 | Alexis Michael Tourapis | Resolution | open => fixed |
2008-09-15 08:14 | Alexis Michael Tourapis | Assigned To | => Alexis Michael Tourapis |