将图片组结构转换为适用于HEVC HM编码器的结构

时间:2017-05-29 14:05:44

标签: encoding hevc

我正在使用HM-16Scalable HM 12.3

我有这个GOP命令,如下所示。如您所见,我有每种切片类型的QP值。

Encode Order     Type    POC     QP
0    I-SLICE    0   23
1    P-SLICE    3   26
2    B-SLICE    2   27
3    b-SLICE    1   28
4    P-SLICE    6   26
5    B-SLICE    5   27
6    b-SLICE    4   28

我想将其转换为如下代码,我必须定义QPoffset CbQPoffset CrQPoffset QPfactor tcOffsetDiv2 betaOffsetDiv2 temporal_id #ref_pics_active #ref_pics reference pictures predict deltaRPS #ref_idcs reference idcs

#        Type POC QPoffset CbQPoffset CrQPoffset QPfactor tcOffsetDiv2 betaOffsetDiv2 temporal_id #ref_pics_active #ref_pics reference pictures     predict deltaRPS #ref_idcs reference idcs 
Frame1:  P   16   1        0          0          0.6      0            0              0           2                3         -16 -24 -32            0
Frame2:  B    8   2        0          0          0.2      0            0              1           2                3         -8  -16   8            1       8        4         1 1 0 1

你能帮我转换一下吗?

还有其他方法来定义GOP中的B帧或B帧数吗?

1 个答案:

答案 0 :(得分:0)

我找到了考虑HM reference manual的解决方案。

我只考虑一个参考帧,从module.exports = function (config) { config.set({ basePath: '', frameworks: ['jasmine', '@angular/cli'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), //require('karma-coverage-istanbul-reporter'), require('@angular/cli/plugins/karma') ], client: { clearContext: false // leave Jasmine Spec Runner output visible in browser }, // coverageIstanbulReporter: { // reports: ['html', 'lcovonly'], // fixWebpackSourcePaths: true // }, angularCli: { environment: 'dev' }, reporters: ['progress', 'kjhtml'], port: 9876, colors: true, browsers: ['Chrome'], logLevel: config.LOG_DEBUG, autoWatch: true, singleRun: false, sourceMaps: true, captureTimeout: 25000, browserDisconnectTolerance: 3, //this one helps browserDisconnectTimeout: 25000, browserNoActivityTimeout: 25000, skipFiles: [ "node_modules/**/*" ], webRoot: "${workspaceRoot}" }); }; 开始重新排序帧。所有B帧均引用之前的B-frameI-frame

新的GOP结构如下所示。

这里需要提一下的是,P-frames不能拥有稍后编码的B-frame。更明确地说,P-frame具有POC编号,例如1不能引用具有POC值的更高值的B-frame,例如3。

P-frame