本文介绍了HEVC:编码器产生的每个NUL单元的NAL单元跟踪文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用HM 14.0作为参考.有没有办法获取有关NAL单位的某些特定信息,例如

I'm using HM 14.0 as a reference. Is there a way to get some specific information about NAL units like

(a) type
(b) num_bytes
(c) frame_no
(d) decode_time
(e) priority
(f) timestamp

前两个我可以通过annexBbytecount拥有它,但是其余的呢?

The first two I can have it through annexBbytecount, but what about the rest?

推荐答案

参考编解码器带有一个内置的跟踪器,功能非常强大!

The reference codec comes with a built in tracer which is quite powerful!

像这样启用它:

diff --git a/source/Lib/TLibCommon/TComRom.h b/source/Lib/TLibCommon/TComRom.h
index 5a59809..1930809 100644
--- a/source/Lib/TLibCommon/TComRom.h
+++ b/source/Lib/TLibCommon/TComRom.h
@@ -158,7 +158,7 @@ extern const UChar g_aucDCTDSTMode_Hor[NUM_INTRA_MODE];
 extern       Char   g_aucConvertToBit  [ MAX_CU_SIZE+1 ];   // from width to log2(width)-2

 #ifndef ENC_DEC_TRACE
-# define ENC_DEC_TRACE 0
+# define ENC_DEC_TRACE 1
 #endif

例如,我对BQMall_832x480_60.yuv的前20帧进行编码和解码启用了跟踪.

As an example, I encoded and decoded the first 20 frames of BQMall_832x480_60.yuvwith trace enabled.

使用以下代码进行编码/解码后

After encoding/decoding using:

./TAppEncoderStatic -c ../cfg/encoder_intra_main.cfg  -c ../cfg/per-sequence/BQMall.cfg
./TAppDecoderStatic -b str.bin

生成跟踪文件(相当大!)

trace-files are produced (rather huge ones!)

$ ll -rt
total 247100
drwxrwxr-x 12 xx xx      4096 jun 27 10:01 ../
-rwxrwxr-x  1 xx xx   2912618 jun 27 10:06 TAppDecoderStaticd*
-rwxrwxr-x  1 xx xx    627714 jun 27 10:06 TAppDecoderStatic*
-rwxrwxr-x  1 xx xx   4036611 jun 27 10:06 TAppEncoderStaticd*
-rwxrwxr-x  1 xx xx   1133295 jun 27 10:06 TAppEncoderStatic*
-rwxrwxr-x  1 xx xx     87319 jun 27 10:06 annexBbytecountStaticd*
-rwxrwxr-x  1 xx xx     29963 jun 27 10:06 annexBbytecountStatic*
-rwxrwxr-x  1 xx xx    369365 jun 27 10:06 convert_NtoMbit_YCbCrStaticd*
-rwxrwxr-x  1 xx xx    113252 jun 27 10:06 convert_NtoMbit_YCbCrStatic*
-rw-rw-r--  1 xx xx    442122 jun 28 21:29 str.bin
-rw-rw-r--  1 xx xx  11980800 jun 28 21:29 rec.yuv
-rw-rw-r--  1 xx xx 168288021 jun 28 21:29 TraceEnc.txt    <----
drwxrwxr-x  2 xx xx      4096 jun 28 21:31 ./
-rw-rw-r--  1 xx xx  62975377 jun 28 21:31 TraceDec.txt    <----

看看TraceEnc.txtTraceDec.txt它们包含您需要了解的所有内容!

Have a look at TraceEnc.txt and TraceDec.txt they contain everything you need to know!

这篇关于HEVC:编码器产生的每个NUL单元的NAL单元跟踪文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-05 00:00