OpenVisualCloud / SVT-HEVC

SVT HEVC encoder. Scalable Video Technology (SVT) is a software-based video coding technology that is highly optimized for Intel® Xeon® processors. Using the open source SVT-HEVC encoder, it is possible to spread video encoding processing across multiple Intel® Xeon® processors to achieve a real advantage of processing efficiency.
Other
516 stars 172 forks source link

Mediacodec decodec hevc file generated by SVT cost a long time #543

Closed leokinglong closed 4 years ago

leokinglong commented 4 years ago

1 . Encode command: SvtHevcEncApp -i 2_hd.yuv -w 7680 -h 3840 -fps 30 -pred-struct 0 -intra-period 4 -irefresh-type 0 -vid-info 1 -rc 1 -tbr 62914560 -umv 0 -tile_slice_mode 1 -tile_row_cnt 12 -tile_col_cnt 12 -b 2_hd.hevc

  1. Decode result: File encode by SVT : Use mediacodec to decode the hevc , it takes about 120ms per/frame. File encode by kvazaar : Use mediacodec to decode the hevc , it takes about 20ms per/frame.

  2. Question: Why decode same resolution file,file encoded by SVT takes so long time ? Is there any way to reduce the decode time ( maybe some param in encoding)?

Thanks

leokinglong commented 4 years ago

version : 1.4.3 release

tianjunwork commented 4 years ago

Hi @LeoKingLong, I see you are using 8k, 4-level hierarchy, IPPP structure, 12x12 tile settings with SVT encoder. Did you make sure that kvazaar also use similar settings that generate bitstream with same structure? Otherwise it doesn't make sense to compare. What decoder mediacodec launches on what platform(OS, HW)? Could you make sure both launched the same decoder? 120ms is very high for decode. Is the encoded file with similar size?

Generally speaking, enabling tiles makes parallel processing possible, which should speed up decoding. But it really depends on the implementation of the decoder itself.

leokinglong commented 4 years ago

Thanks tian~ I found the same issue :https://github.com/OpenVisualCloud/SVT-HEVC/issues/469 , I recompiled the encoder with the master branch code and the problem is resolved .