This repository was archived by the owner on Nov 11, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathutilitypb.cc
More file actions
888 lines (873 loc) · 66.3 KB
/
Copy pathutilitypb.cc
File metadata and controls
888 lines (873 loc) · 66.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>
#include <pybind11/numpy.h>
#include "Utilities/TVideoIOYuv.h"
//#include "TLibCommon/TypeDef.h"
#include "TLibCommon/TComPicYuv.h"
#include "TLibEncoder/TEncCfg.h"
#include "TLibEncoder/TEncTop.h"
namespace py=pybind11;
PYBIND11_MODULE( PyUtilities, m ){
m.doc() = "PyUtilities";
pybind11::enum_<InputColourSpaceConversion>(m,"InputColourSpaceConversion")
.value("IPCOLOURSPACE_UNCHANGED",InputColourSpaceConversion::IPCOLOURSPACE_UNCHANGED)
.value("IPCOLOURSPACE_YCbCrtoYCrCb",InputColourSpaceConversion::IPCOLOURSPACE_YCbCrtoYCrCb)
.value("IPCOLOURSPACE_YCbCrtoYYY",InputColourSpaceConversion::IPCOLOURSPACE_YCbCrtoYYY)
.value("IPCOLOURSPACE_RGBtoGBR",InputColourSpaceConversion::IPCOLOURSPACE_RGBtoGBR)
.value("NUMBER_INPUT_COLOUR_SPACE_CONVERSIONS",InputColourSpaceConversion::NUMBER_INPUT_COLOUR_SPACE_CONVERSIONS)
.export_values();
pybind11::enum_<ChromaFormat>(m,"ChromaFormat")
.value("CHROMA_400",ChromaFormat::CHROMA_400)
.value("CHROMA_420",ChromaFormat::CHROMA_420)
.value("CHROMA_422",ChromaFormat::CHROMA_422)
.value("CHROMA_444",ChromaFormat::CHROMA_444)
.value("NUM_CHROMA_FORMAT",ChromaFormat::NUM_CHROMA_FORMAT)
.export_values();
pybind11::enum_<ComponentID>(m,"ComponentID")
.value("COMPONENT_Y",ComponentID::COMPONENT_Y)
.value("COMPONENT_Cb",ComponentID::COMPONENT_Cb)
.value("COMPONENT_Cr",ComponentID::COMPONENT_Cr)
.value("MAX_NUM_COMPONENT",ComponentID::MAX_NUM_COMPONENT)
.export_values();
pybind11::enum_<ChannelType>(m,"ChannelType")
.value("CHANNEL_TYPE_LUMA",ChannelType::CHANNEL_TYPE_LUMA)
.value("CHANNEL_TYPE_CHROMA",ChannelType::CHANNEL_TYPE_CHROMA)
.value("MAX_NUM_CHANNEL_TYPE",ChannelType::MAX_NUM_CHANNEL_TYPE)
.export_values();
pybind11::class_<TComPicYuv>(m, "TComPicYuv" )
.def(pybind11::init())
.def( "create", &TComPicYuv::create )
.def( "createWithoutCUInfo", &TComPicYuv::createWithoutCUInfo )
.def( "destroy", &TComPicYuv::destroy )
.def( "getWidth", &TComPicYuv::getWidth )
.def( "getHeight", &TComPicYuv::getHeight )
.def( "getChromaFormat", &TComPicYuv::getChromaFormat )
.def( "getNumberValidComponents", &TComPicYuv::getNumberValidComponents )
//.def( "getStride", py::overload_cast<const ComponentID>(&TComPicYuv::getStride) )//不知道为什么识别不了const ComponentID,底下的都能识别。查资料看起来是不能识别这个overload_cast不能识别不同枚举类型
//解决办法是将getStride换成不同的整数,暂时先不看
// .def( "getStride", py::overload_cast<const ChannelType>(&TComPicYuv::getStride) )
.def( "getTotalHeight", &TComPicYuv::getTotalHeight )
.def( "getMarginX", &TComPicYuv::getMarginX )
.def( "getMarginY", &TComPicYuv::getMarginY )
.def( "getBuf", py::overload_cast<const ComponentID>(&TComPicYuv::getBuf) )
.def( "getAddr", py::overload_cast<const ComponentID>(&TComPicYuv::getAddr) )
.def( "getAddr", py::overload_cast<const ComponentID, const Int>(&TComPicYuv::getAddr) )
.def( "getAddr", py::overload_cast<const ComponentID, const Int, const Int>(&TComPicYuv::getAddr) )
.def( "getComponentScaleX", &TComPicYuv::getComponentScaleX )
.def( "getComponentScaleY", &TComPicYuv::getComponentScaleY )
.def( "getChannelTypeScaleX", &TComPicYuv::getChannelTypeScaleX )
.def( "getChannelTypeScaleY", &TComPicYuv::getChannelTypeScaleY )
.def( "copyToPic", &TComPicYuv::copyToPic )
.def( "extendPicBorder", &TComPicYuv::extendPicBorder )
.def( "dump", &TComPicYuv::dump )
.def( "setBorderExtension", &TComPicYuv::setBorderExtension )
.def( "pbtest", &TComPicYuv::pbtest );
pybind11::class_<TVideoIOYuv>(m, "TVideoIOYuv" )
.def(pybind11::init()) //构造器的模版参数列表中需要按照构造函数的参数类型填入才能调用对应的参数
.def( "open", &TVideoIOYuv::open )
.def( "close", &TVideoIOYuv::close )
.def( "skipFrames", &TVideoIOYuv::skipFrames )
.def( "read", &TVideoIOYuv::read )
.def( "write", py::overload_cast<TComPicYuv*, TComPicYuv*, const InputColourSpaceConversion, Int, Int, Int, Int, ChromaFormat, const Bool, const Bool>(&TVideoIOYuv::write))
.def( "write", py::overload_cast<TComPicYuv*, const InputColourSpaceConversion, Int, Int, Int, Int, ChromaFormat, const Bool>(&TVideoIOYuv::write) )
.def( "read", &TVideoIOYuv::read )
.def( "isEof", &TVideoIOYuv::isEof )
.def( "isFail", &TVideoIOYuv::isFail )
.def( "pbtest", &TVideoIOYuv::pbtest );
//.def_property("m_fileBitdepth",&TVideoIOYuv::m_fileBitdepth)
//.def_readwrite("m_MSBExtendedBitDepth",&TVideoIOYuv::m_MSBExtendedBitDepth)
// .def_readwrite("m_bitdepthShift",&TVideoIOYuv::m_bitdepthShift);
py::class_<TEncCfg> encCfg(m, "TEncCfg");
encCfg.def(py::init<>())
.def("pbtest", &TEncCfg::pbtest )
.def("setProfile", &TEncCfg::setProfile)
.def("setLevel", &TEncCfg::setLevel)
.def("setFrameRate", &TEncCfg::setFrameRate)
.def("setFrameSkip", &TEncCfg::setFrameSkip)
.def("setTemporalSubsampleRatio", &TEncCfg::setTemporalSubsampleRatio)
.def("setSourceWidth", &TEncCfg::setSourceWidth)
.def("setSourceHeight", &TEncCfg::setSourceHeight)
.def("getConformanceWindow", &TEncCfg::getConformanceWindow, py::return_value_policy::reference)
.def("setConformanceWindow", &TEncCfg::setConformanceWindow)
.def("setFramesToBeEncoded", &TEncCfg::setFramesToBeEncoded)
.def("getPrintMSEBasedSequencePSNR", &TEncCfg::getPrintMSEBasedSequencePSNR)
.def("setPrintMSEBasedSequencePSNR", &TEncCfg::setPrintMSEBasedSequencePSNR)
.def("getPrintHexPsnr", &TEncCfg::getPrintHexPsnr)
.def("setPrintHexPsnr", &TEncCfg::setPrintHexPsnr)
.def("getPrintFrameMSE", &TEncCfg::getPrintFrameMSE)
.def("setPrintFrameMSE", &TEncCfg::setPrintFrameMSE)
.def("getPrintSequenceMSE", &TEncCfg::getPrintSequenceMSE)
.def("setPrintSequenceMSE", &TEncCfg::setPrintSequenceMSE)
.def("getPrintMSSSIM", &TEncCfg::getPrintMSSSIM)
.def("setPrintMSSSIM", &TEncCfg::setPrintMSSSIM)
.def("getXPSNREnableFlag", &TEncCfg::getXPSNREnableFlag)
.def("getXPSNRWeight", &TEncCfg::getXPSNRWeight )
.def("setXPSNREnableFlag", &TEncCfg::setXPSNREnableFlag )
.def("setXPSNRWeight", &TEncCfg::setXPSNRWeight )
.def("getCabacZeroWordPaddingEnabled", &TEncCfg::getCabacZeroWordPaddingEnabled )
.def("setCabacZeroWordPaddingEnabled", &TEncCfg::setCabacZeroWordPaddingEnabled )
.def("getShutterFilterFlag", &TEncCfg::getShutterFilterFlag )
.def("setShutterFilterFlag", &TEncCfg::setShutterFilterFlag )
.def("setIntraPeriod", &TEncCfg::setIntraPeriod )
.def("setDecodingRefreshType", &TEncCfg::setDecodingRefreshType )
.def("setReWriteParamSetsFlag", &TEncCfg::setReWriteParamSetsFlag )
.def("setGOPSize", &TEncCfg::setGOPSize )
.def("setGopList", &TEncCfg::setGopList )
.def("setExtraRPSs", &TEncCfg::setExtraRPSs )
.def("getGOPEntry", &TEncCfg::getGOPEntry,py::return_value_policy::reference )
.def("setEncodedFlag", &TEncCfg::setEncodedFlag )
.def("setMaxDecPicBuffering", &TEncCfg::setMaxDecPicBuffering )
.def("setNumReorderPics", &TEncCfg::setNumReorderPics )
.def("setQP", &TEncCfg::setQP )
.def("setIntraQPOffset", &TEncCfg::setIntraQPOffset )
.def("setLambdaFromQPEnable", &TEncCfg::setLambdaFromQPEnable )
.def("setSourcePadding", &TEncCfg::setSourcePadding )
.def("getMaxRefPicNum", &TEncCfg::getMaxRefPicNum )
.def("setMaxRefPicNum", &TEncCfg::setMaxRefPicNum )
.def("getMaxTempLayer", &TEncCfg::getMaxTempLayer )
.def("setMaxTempLayer", &TEncCfg::setMaxTempLayer )
.def("setMaxCUWidth", &TEncCfg::setMaxCUWidth )
.def("setMaxCUHeight", &TEncCfg::setMaxCUHeight )
.def("setMaxTotalCUDepth", &TEncCfg::setMaxTotalCUDepth )
.def("setLog2DiffMaxMinCodingBlockSize", &TEncCfg::setLog2DiffMaxMinCodingBlockSize )
.def("setQuadtreeTULog2MaxSize", &TEncCfg::setQuadtreeTULog2MaxSize )
.def("setQuadtreeTULog2MinSize", &TEncCfg::setQuadtreeTULog2MinSize )
.def("setQuadtreeTUMaxDepthInter", &TEncCfg::setQuadtreeTUMaxDepthInter )
.def("setQuadtreeTUMaxDepthIntra", &TEncCfg::setQuadtreeTUMaxDepthIntra )
.def("setUseAMP", &TEncCfg::setUseAMP )
.def("setLoopFilterDisable", &TEncCfg::setLoopFilterDisable )
.def("setLoopFilterOffsetInPPS", &TEncCfg::setLoopFilterOffsetInPPS )
.def("setLoopFilterBetaOffset", &TEncCfg::setLoopFilterBetaOffset )
.def("setLoopFilterTcOffset", &TEncCfg::setLoopFilterTcOffset )
.def("setDeblockingFilterMetric", &TEncCfg::setDeblockingFilterMetric )
.def("setDisableIntraPUsInInterSlices", &TEncCfg::setDisableIntraPUsInInterSlices )
.def("setMotionEstimationSearchMethod", &TEncCfg::setMotionEstimationSearchMethod )
.def("setSearchRange", &TEncCfg::setSearchRange )
.def("setBipredSearchRange", &TEncCfg::setBipredSearchRange )
.def("setClipForBiPredMeEnabled", &TEncCfg::setClipForBiPredMeEnabled )
.def("setFastMEAssumingSmootherMVEnabled", &TEncCfg::setFastMEAssumingSmootherMVEnabled )
.def("setMinSearchWindow", &TEncCfg::setMinSearchWindow )
.def("setRestrictMESampling", &TEncCfg::setRestrictMESampling )
.def("setMaxDeltaQP", &TEncCfg::setMaxDeltaQP )
.def("setMaxCuDQPDepth", &TEncCfg::setMaxCuDQPDepth )
.def("getDiffCuChromaQpOffsetDepth", &TEncCfg::getDiffCuChromaQpOffsetDepth )
.def("setDiffCuChromaQpOffsetDepth", &TEncCfg::setDiffCuChromaQpOffsetDepth )
.def("setChromaCbQpOffset", &TEncCfg::setChromaCbQpOffset )
.def("setChromaCrQpOffset", &TEncCfg::setChromaCrQpOffset )
.def("setWCGChromaQpControl", &TEncCfg::setWCGChromaQpControl )
.def("getWCGChromaQPControl", &TEncCfg::getWCGChromaQPControl,py::return_value_policy::reference )
.def("setSliceChromaOffsetQpIntraOrPeriodic", &TEncCfg::setSliceChromaOffsetQpIntraOrPeriodic )
.def("getSliceChromaOffsetQpIntraOrPeriodic", &TEncCfg::getSliceChromaOffsetQpIntraOrPeriodic )
.def("getSliceChromaOffsetQpPeriodicity", &TEncCfg::getSliceChromaOffsetQpPeriodicity )
.def("setChromaFormatIdc", &TEncCfg::setChromaFormatIdc )
.def("getChromaFormatIdc", &TEncCfg::getChromaFormatIdc )
.def("setLumaLevelToDeltaQPControls", &TEncCfg::setLumaLevelToDeltaQPControls )
.def("getLumaLevelToDeltaQPMapping", &TEncCfg::getLumaLevelToDeltaQPMapping,py::return_value_policy::reference )
.def("setUseAdaptQpSelect", &TEncCfg::setUseAdaptQpSelect )
.def("getUseAdaptQpSelect", &TEncCfg::getUseAdaptQpSelect )
.def("getSmoothQPReductionEnable", &TEncCfg::getSmoothQPReductionEnable )
.def("setSmoothQPReductionEnable", &TEncCfg::setSmoothQPReductionEnable )
.def("getSmoothQPReductionThreshold", &TEncCfg::getSmoothQPReductionThreshold )
.def("setSmoothQPReductionThreshold", &TEncCfg::setSmoothQPReductionThreshold )
.def("getSmoothQPReductionModelScale", &TEncCfg::getSmoothQPReductionModelScale )
.def("setSmoothQPReductionModelScale", &TEncCfg::setSmoothQPReductionModelScale )
.def("getSmoothQPReductionModelOffset", &TEncCfg::getSmoothQPReductionModelOffset )
.def("setSmoothQPReductionModelOffset", &TEncCfg::setSmoothQPReductionModelOffset )
.def("getSmoothQPReductionLimit", &TEncCfg::getSmoothQPReductionLimit )
.def("setSmoothQPReductionLimit", &TEncCfg::setSmoothQPReductionLimit )
.def("getSmoothQPReductionPeriodicity", &TEncCfg::getSmoothQPReductionPeriodicity )
.def("setSmoothQPReductionPeriodicity", &TEncCfg::setSmoothQPReductionPeriodicity )
.def("getExtendedPrecisionProcessingFlag", &TEncCfg::getExtendedPrecisionProcessingFlag )
.def("setExtendedPrecisionProcessingFlag", &TEncCfg::setExtendedPrecisionProcessingFlag )
.def("getHighPrecisionOffsetsEnabledFlag", &TEncCfg::getHighPrecisionOffsetsEnabledFlag )
.def("setHighPrecisionOffsetsEnabledFlag", &TEncCfg::setHighPrecisionOffsetsEnabledFlag )
.def("setUseAdaptiveQP", &TEncCfg::setUseAdaptiveQP )
.def("setQPAdaptationRange", &TEncCfg::setQPAdaptationRange )
.def("getFrameRate", &TEncCfg::getFrameRate )
.def("getFrameSkip", &TEncCfg::getFrameSkip )
.def("getTemporalSubsampleRatio", &TEncCfg::getTemporalSubsampleRatio )
.def("getSourceWidth", &TEncCfg::getSourceWidth )
.def("getSourceHeight", &TEncCfg::getSourceHeight )
.def("getFramesToBeEncoded", &TEncCfg::getFramesToBeEncoded )
.def("setLambdaModifier", &TEncCfg::setLambdaModifier )
.def("getLambdaModifier", &TEncCfg::getLambdaModifier )
.def("setIntraLambdaModifier", &TEncCfg::setIntraLambdaModifier )
.def("getIntraLambdaModifier", &TEncCfg::getIntraLambdaModifier,py::return_value_policy::reference )
.def("setIntraQpFactor", &TEncCfg::setIntraQpFactor )
.def("getIntraQpFactor", &TEncCfg::getIntraQpFactor )
.def("getIntraPeriod", &TEncCfg::getIntraPeriod )
.def("getDecodingRefreshType", &TEncCfg::getDecodingRefreshType )
.def("getReWriteParamSetsFlag", &TEncCfg::getReWriteParamSetsFlag )
.def("getGOPSize", &TEncCfg::getGOPSize )
.def("getMaxDecPicBuffering", &TEncCfg::getMaxDecPicBuffering )
.def("getNumReorderPics", &TEncCfg::getNumReorderPics )
.def("getIntraQPOffset", &TEncCfg::getIntraQPOffset )
.def("getLambdaFromQPEnable", &TEncCfg::getLambdaFromQPEnable )
.def("getQPForPicture", &TEncCfg::getQPForPicture )
.def("getSourcePadding", &TEncCfg::getSourcePadding )
.def("getAccessUnitDelimiter", &TEncCfg::getAccessUnitDelimiter )
.def("setAccessUnitDelimiter", &TEncCfg::setAccessUnitDelimiter )
.def("getQuadtreeTULog2MaxSize", &TEncCfg::getQuadtreeTULog2MaxSize )
.def("getQuadtreeTULog2MinSize", &TEncCfg::getQuadtreeTULog2MinSize )
.def("getQuadtreeTUMaxDepthInter", &TEncCfg::getQuadtreeTUMaxDepthInter )
.def("getQuadtreeTUMaxDepthIntra", &TEncCfg::getQuadtreeTUMaxDepthIntra )
.def("getLoopFilterDisable", &TEncCfg::getLoopFilterDisable )
.def("getLoopFilterOffsetInPPS", &TEncCfg::getLoopFilterOffsetInPPS )
.def("getLoopFilterBetaOffset", &TEncCfg::getLoopFilterBetaOffset )
.def("getLoopFilterTcOffset", &TEncCfg::getLoopFilterTcOffset )
.def("getDeblockingFilterMetric", &TEncCfg::getDeblockingFilterMetric )
.def("getDisableIntraPUsInInterSlices", &TEncCfg::getDisableIntraPUsInInterSlices )
.def("getMotionEstimationSearchMethod", &TEncCfg::getMotionEstimationSearchMethod )
.def("getSearchRange", &TEncCfg::getSearchRange )
.def("getClipForBiPredMeEnabled", &TEncCfg::getClipForBiPredMeEnabled )
.def("getFastMEAssumingSmootherMVEnabled", &TEncCfg::getFastMEAssumingSmootherMVEnabled )
.def("getMinSearchWindow", &TEncCfg::getMinSearchWindow )
.def("getRestrictMESampling", &TEncCfg::getRestrictMESampling )
.def("getMaxDeltaQP", &TEncCfg::getMaxDeltaQP )
.def("getMaxCuDQPDepth", &TEncCfg::getMaxCuDQPDepth )
.def("getUseAdaptiveQP", &TEncCfg::getUseAdaptiveQP )
.def("getQPAdaptationRange", &TEncCfg::getQPAdaptationRange )
#if JVET_X0048_X0103_FILM_GRAIN
.def("getBitDepth", py::overload_cast<const ChannelType>(&TEncCfg::getBitDepth) )
.def("getBitDepth", py::overload_cast<>(&TEncCfg::getBitDepth) )
.def("getBitDepthInput", py::overload_cast<const ChannelType>(&TEncCfg::getBitDepthInput) )
.def("getBitDepthInput",py::overload_cast<>(&TEncCfg::getBitDepthInput) )
.def("setBitDepthInput", &TEncCfg::setBitDepthInput )
.def("setBitDepth", &TEncCfg::setBitDepth )
#endif
.def("setUseASR", &TEncCfg::setUseASR )
.def("setUseHADME", &TEncCfg::setUseHADME )
.def("setUseRDOQ", &TEncCfg::setUseRDOQ )
.def("setUseRDOQTS", &TEncCfg::setUseRDOQTS )
.def("setUseSelectiveRDOQ", &TEncCfg::setUseSelectiveRDOQ )
.def("setRDpenalty", &TEncCfg::setRDpenalty )
.def("setFastInterSearchMode", &TEncCfg::setFastInterSearchMode )
.def("setUseEarlyCU", &TEncCfg::setUseEarlyCU )
.def("setUseFastDecisionForMerge", &TEncCfg::setUseFastDecisionForMerge )
.def("setUseCbfFastMode", &TEncCfg::setUseCbfFastMode )
.def("setUseEarlySkipDetection", &TEncCfg::setUseEarlySkipDetection )
.def("setUseConstrainedIntraPred", &TEncCfg::setUseConstrainedIntraPred )
.def("setFastUDIUseMPMEnabled", &TEncCfg::setFastUDIUseMPMEnabled )
.def("setFastMEForGenBLowDelayEnabled", &TEncCfg::setFastMEForGenBLowDelayEnabled )
.def("setUseBLambdaForNonKeyLowDelayPictures", &TEncCfg::setUseBLambdaForNonKeyLowDelayPictures )
.def("setPCMInputBitDepthFlag", &TEncCfg::setPCMInputBitDepthFlag )
.def("setPCMFilterDisableFlag", &TEncCfg::setPCMFilterDisableFlag )
.def("setUsePCM", &TEncCfg::setUsePCM )
.def("setPCMBitDepth", &TEncCfg::setPCMBitDepth )
.def("setPCMLog2MaxSize", &TEncCfg::setPCMLog2MaxSize )
.def("setPCMLog2MinSize", &TEncCfg::setPCMLog2MinSize )
.def("setdQPs", &TEncCfg::setdQPs )
.def("setDeltaQpRD", &TEncCfg::setDeltaQpRD )
.def("setFastDeltaQp", &TEncCfg::setFastDeltaQp )
.def("getUseASR", &TEncCfg::getUseASR )
.def("getUseHADME", &TEncCfg::getUseHADME )
.def("getUseRDOQ", &TEncCfg::getUseRDOQ )
.def("getUseRDOQTS", &TEncCfg::getUseRDOQTS )
.def("getUseSelectiveRDOQ", &TEncCfg::getUseSelectiveRDOQ )
.def("getRDpenalty", &TEncCfg::getRDpenalty )
.def("getFastInterSearchMode", &TEncCfg::getFastInterSearchMode )
.def("getUseEarlyCU", &TEncCfg::getUseEarlyCU )
.def("getUseFastDecisionForMerge", &TEncCfg::getUseFastDecisionForMerge )
.def("getUseCbfFastMode", &TEncCfg::getUseCbfFastMode )
.def("getUseEarlySkipDetection", &TEncCfg::getUseEarlySkipDetection )
.def("getUseConstrainedIntraPred", &TEncCfg::getUseConstrainedIntraPred )
.def("getFastUDIUseMPMEnabled", &TEncCfg::getFastUDIUseMPMEnabled )
.def("getFastMEForGenBLowDelayEnabled", &TEncCfg::getFastMEForGenBLowDelayEnabled )
.def("getUseBLambdaForNonKeyLowDelayPictures", &TEncCfg::getUseBLambdaForNonKeyLowDelayPictures )
.def("getPCMInputBitDepthFlag", &TEncCfg::getPCMInputBitDepthFlag )
.def("getPCMFilterDisableFlag", &TEncCfg::getPCMFilterDisableFlag )
.def("getUsePCM", &TEncCfg::getUsePCM )
.def("getPCMLog2MaxSize", &TEncCfg::getPCMLog2MaxSize )
.def("getPCMLog2MinSize", &TEncCfg::getPCMLog2MinSize )
.def("getCrossComponentPredictionEnabledFlag", &TEncCfg::getCrossComponentPredictionEnabledFlag )
.def("setCrossComponentPredictionEnabledFlag", &TEncCfg::setCrossComponentPredictionEnabledFlag )
.def("getUseReconBasedCrossCPredictionEstimate", &TEncCfg::getUseReconBasedCrossCPredictionEstimate )
.def("setUseReconBasedCrossCPredictionEstimate", &TEncCfg::setUseReconBasedCrossCPredictionEstimate )
.def("setLog2SaoOffsetScale", &TEncCfg::setLog2SaoOffsetScale )
.def("getUseTransformSkip", &TEncCfg::getUseTransformSkip )
.def("setUseTransformSkip", &TEncCfg::setUseTransformSkip )
.def("getTransformSkipRotationEnabledFlag", &TEncCfg::getTransformSkipRotationEnabledFlag )
.def("setTransformSkipRotationEnabledFlag", &TEncCfg::setTransformSkipRotationEnabledFlag )
.def("getTransformSkipContextEnabledFlag", &TEncCfg::getTransformSkipContextEnabledFlag )
.def("setTransformSkipContextEnabledFlag", &TEncCfg::setTransformSkipContextEnabledFlag )
.def("getPersistentRiceAdaptationEnabledFlag", &TEncCfg::getPersistentRiceAdaptationEnabledFlag )
.def("setPersistentRiceAdaptationEnabledFlag", &TEncCfg::setPersistentRiceAdaptationEnabledFlag )
.def("getCabacBypassAlignmentEnabledFlag", &TEncCfg::getCabacBypassAlignmentEnabledFlag )
.def("setCabacBypassAlignmentEnabledFlag", &TEncCfg::setCabacBypassAlignmentEnabledFlag )
.def("getRdpcmEnabledFlag", &TEncCfg::getRdpcmEnabledFlag )
.def("setRdpcmEnabledFlag", &TEncCfg::setRdpcmEnabledFlag )
.def("getUseTransformSkipFast", &TEncCfg::getUseTransformSkipFast )
.def("setUseTransformSkipFast", &TEncCfg::setUseTransformSkipFast )
.def("getLog2MaxTransformSkipBlockSize", &TEncCfg::getLog2MaxTransformSkipBlockSize )
.def("setLog2MaxTransformSkipBlockSize", &TEncCfg::setLog2MaxTransformSkipBlockSize )
.def("getIntraSmoothingDisabledFlag", &TEncCfg::getIntraSmoothingDisabledFlag )
.def("setIntraSmoothingDisabledFlag", &TEncCfg::setIntraSmoothingDisabledFlag )
.def("getdQPs", &TEncCfg::getdQPs )
.def("getDeltaQpRD", &TEncCfg::getDeltaQpRD )
.def("getFastDeltaQp", &TEncCfg::getFastDeltaQp )
.def("setSliceMode", &TEncCfg::setSliceMode )
.def("setSliceArgument", &TEncCfg::setSliceArgument )
.def("getSliceMode", &TEncCfg::getSliceMode )
.def("getSliceArgument", &TEncCfg::getSliceArgument )
.def("setSliceSegmentMode", &TEncCfg::setSliceSegmentMode )
.def("setSliceSegmentArgument", &TEncCfg::setSliceSegmentArgument )
.def("getSliceSegmentMode", &TEncCfg::getSliceSegmentMode )
.def("getSliceSegmentArgument", &TEncCfg::getSliceSegmentArgument )
.def("setLFCrossSliceBoundaryFlag", &TEncCfg::setLFCrossSliceBoundaryFlag )
.def("getLFCrossSliceBoundaryFlag", &TEncCfg::getLFCrossSliceBoundaryFlag )
.def("setUseSAO", &TEncCfg::setUseSAO )
.def("getUseSAO", &TEncCfg::getUseSAO )
.def("setTestSAODisableAtPictureLevel", &TEncCfg::setTestSAODisableAtPictureLevel )
.def("getTestSAODisableAtPictureLevel", &TEncCfg::getTestSAODisableAtPictureLevel )
.def("setSaoEncodingRate", &TEncCfg::setSaoEncodingRate )
.def("getSaoEncodingRate", &TEncCfg::getSaoEncodingRate )
.def("setSaoEncodingRateChroma", &TEncCfg::setSaoEncodingRateChroma )
.def("getSaoEncodingRateChroma", &TEncCfg::getSaoEncodingRateChroma )
.def("setMaxNumOffsetsPerPic", &TEncCfg::setMaxNumOffsetsPerPic )
.def("getMaxNumOffsetsPerPic", &TEncCfg::getMaxNumOffsetsPerPic )
.def("setSaoCtuBoundary", &TEncCfg::setSaoCtuBoundary )
.def("getSaoCtuBoundary", &TEncCfg::getSaoCtuBoundary )
.def("setResetEncoderStateAfterIRAP", &TEncCfg::setResetEncoderStateAfterIRAP )
.def("getResetEncoderStateAfterIRAP", &TEncCfg::getResetEncoderStateAfterIRAP )
.def("setLFCrossTileBoundaryFlag", &TEncCfg::setLFCrossTileBoundaryFlag )
.def("getLFCrossTileBoundaryFlag", &TEncCfg::getLFCrossTileBoundaryFlag )
.def("setTileUniformSpacingFlag", &TEncCfg::setTileUniformSpacingFlag )
.def("getTileUniformSpacingFlag", &TEncCfg::getTileUniformSpacingFlag )
.def("setNumColumnsMinus1", &TEncCfg::setNumColumnsMinus1 )
.def("getNumColumnsMinus1", &TEncCfg::getNumColumnsMinus1 )
.def("setColumnWidth", &TEncCfg::setColumnWidth )
.def("getColumnWidth", &TEncCfg::getColumnWidth )
.def("setNumRowsMinus1", &TEncCfg::setNumRowsMinus1 )
.def("getNumRowsMinus1", &TEncCfg::getNumRowsMinus1 )
.def("setRowHeight", &TEncCfg::setRowHeight )
.def("getRowHeight", &TEncCfg::getRowHeight )
.def("xCheckGSParameters", &TEncCfg::xCheckGSParameters )
.def("setEntropyCodingSyncEnabledFlag", &TEncCfg::setEntropyCodingSyncEnabledFlag )
.def("getEntropyCodingSyncEnabledFlag", &TEncCfg::getEntropyCodingSyncEnabledFlag )
.def("setDecodedPictureHashSEIType", &TEncCfg::setDecodedPictureHashSEIType )
.def("getDecodedPictureHashSEIType", &TEncCfg::getDecodedPictureHashSEIType )
.def("setBufferingPeriodSEIEnabled", &TEncCfg::setBufferingPeriodSEIEnabled )
.def("getBufferingPeriodSEIEnabled", &TEncCfg::getBufferingPeriodSEIEnabled )
.def("setPictureTimingSEIEnabled", &TEncCfg::setPictureTimingSEIEnabled )
.def("getPictureTimingSEIEnabled", &TEncCfg::getPictureTimingSEIEnabled )
.def("setRecoveryPointSEIEnabled", &TEncCfg::setRecoveryPointSEIEnabled )
.def("getRecoveryPointSEIEnabled", &TEncCfg::getRecoveryPointSEIEnabled )
.def("setToneMappingInfoSEIEnabled", &TEncCfg::setToneMappingInfoSEIEnabled )
.def("getToneMappingInfoSEIEnabled", &TEncCfg::getToneMappingInfoSEIEnabled )
.def("setTMISEIToneMapId", &TEncCfg::setTMISEIToneMapId )
.def("getTMISEIToneMapId", &TEncCfg::getTMISEIToneMapId )
.def("setTMISEIToneMapCancelFlag", &TEncCfg::setTMISEIToneMapCancelFlag )
.def("getTMISEIToneMapCancelFlag", &TEncCfg::getTMISEIToneMapCancelFlag )
.def("setTMISEIToneMapPersistenceFlag", &TEncCfg::setTMISEIToneMapPersistenceFlag )
.def("getTMISEIToneMapPersistenceFlag", &TEncCfg::getTMISEIToneMapPersistenceFlag )
.def("setTMISEICodedDataBitDepth", &TEncCfg::setTMISEICodedDataBitDepth )
.def("getTMISEICodedDataBitDepth", &TEncCfg::getTMISEICodedDataBitDepth )
.def("setTMISEITargetBitDepth", &TEncCfg::setTMISEITargetBitDepth )
.def("getTMISEITargetBitDepth", &TEncCfg::getTMISEITargetBitDepth )
.def("setTMISEIModelID", &TEncCfg::setTMISEIModelID )
.def("getTMISEIModelID", &TEncCfg::getTMISEIModelID )
.def("setTMISEIMinValue", &TEncCfg::setTMISEIMinValue )
.def("getTMISEIMinValue", &TEncCfg::getTMISEIMinValue )
.def("setTMISEIMaxValue", &TEncCfg::setTMISEIMaxValue )
.def("getTMISEIMaxValue", &TEncCfg::getTMISEIMaxValue )
.def("setTMISEISigmoidMidpoint", &TEncCfg::setTMISEISigmoidMidpoint )
.def("getTMISEISigmoidMidpoint", &TEncCfg::getTMISEISigmoidMidpoint )
.def("setTMISEISigmoidWidth", &TEncCfg::setTMISEISigmoidWidth )
.def("getTMISEISigmoidWidth", &TEncCfg::getTMISEISigmoidWidth )
.def("setTMISEIStartOfCodedInterva", &TEncCfg::setTMISEIStartOfCodedInterva )
.def("getTMISEIStartOfCodedInterva", &TEncCfg::getTMISEIStartOfCodedInterva )
.def("setTMISEINumPivots", &TEncCfg::setTMISEINumPivots )
.def("getTMISEINumPivots", &TEncCfg::getTMISEINumPivots )
.def("setTMISEICodedPivotValue", &TEncCfg::setTMISEICodedPivotValue )
.def("getTMISEICodedPivotValue", &TEncCfg::getTMISEICodedPivotValue )
.def("setTMISEITargetPivotValue", &TEncCfg::setTMISEITargetPivotValue )
.def("getTMISEITargetPivotValue", &TEncCfg::getTMISEITargetPivotValue )
.def("setTMISEICameraIsoSpeedIdc", &TEncCfg::setTMISEICameraIsoSpeedIdc )
.def("getTMISEICameraIsoSpeedIdc", &TEncCfg::getTMISEICameraIsoSpeedIdc )
.def("setTMISEICameraIsoSpeedValue", &TEncCfg::setTMISEICameraIsoSpeedValue )
.def("getTMISEICameraIsoSpeedValue", &TEncCfg::getTMISEICameraIsoSpeedValue )
.def("setTMISEIExposureIndexIdc", &TEncCfg::setTMISEIExposureIndexIdc )
.def("getTMISEIExposurIndexIdc", &TEncCfg::getTMISEIExposurIndexIdc )
.def("setTMISEIExposureIndexValue", &TEncCfg::setTMISEIExposureIndexValue )
.def("getTMISEIExposurIndexValue", &TEncCfg::getTMISEIExposurIndexValue )
.def("setTMISEIExposureCompensationValueSignFlag", &TEncCfg::setTMISEIExposureCompensationValueSignFlag )
.def("getTMISEIExposureCompensationValueSignFlag", &TEncCfg::getTMISEIExposureCompensationValueSignFlag )
.def("setTMISEIExposureCompensationValueNumerator", &TEncCfg::setTMISEIExposureCompensationValueNumerator )
.def("getTMISEIExposureCompensationValueNumerator", &TEncCfg::getTMISEIExposureCompensationValueNumerator )
.def("setTMISEIExposureCompensationValueDenomIdc", &TEncCfg::setTMISEIExposureCompensationValueDenomIdc )
.def("getTMISEIExposureCompensationValueDenomIdc", &TEncCfg::getTMISEIExposureCompensationValueDenomIdc )
.def("setTMISEIRefScreenLuminanceWhite", &TEncCfg::setTMISEIRefScreenLuminanceWhite )
.def("getTMISEIRefScreenLuminanceWhite", &TEncCfg::getTMISEIRefScreenLuminanceWhite )
.def("setTMISEIExtendedRangeWhiteLevel", &TEncCfg::setTMISEIExtendedRangeWhiteLevel )
.def("getTMISEIExtendedRangeWhiteLevel", &TEncCfg::getTMISEIExtendedRangeWhiteLevel )
.def("setTMISEINominalBlackLevelLumaCodeValue", &TEncCfg::setTMISEINominalBlackLevelLumaCodeValue )
.def("getTMISEINominalBlackLevelLumaCodeValue", &TEncCfg::getTMISEINominalBlackLevelLumaCodeValue )
.def("setTMISEINominalWhiteLevelLumaCodeValue", &TEncCfg::setTMISEINominalWhiteLevelLumaCodeValue )
.def("getTMISEINominalWhiteLevelLumaCodeValue", &TEncCfg::getTMISEINominalWhiteLevelLumaCodeValue )
.def("setTMISEIExtendedWhiteLevelLumaCodeValue", &TEncCfg::setTMISEIExtendedWhiteLevelLumaCodeValue )
.def("getTMISEIExtendedWhiteLevelLumaCodeValue", &TEncCfg::getTMISEIExtendedWhiteLevelLumaCodeValue )
.def("setFramePackingArrangementSEIEnabled", &TEncCfg::setFramePackingArrangementSEIEnabled )
.def("getFramePackingArrangementSEIEnabled", &TEncCfg::getFramePackingArrangementSEIEnabled )
.def("setFramePackingArrangementSEIType", &TEncCfg::setFramePackingArrangementSEIType )
.def("getFramePackingArrangementSEIType", &TEncCfg::getFramePackingArrangementSEIType )
.def("setFramePackingArrangementSEIId", &TEncCfg::setFramePackingArrangementSEIId )
.def("getFramePackingArrangementSEIId", &TEncCfg::getFramePackingArrangementSEIId )
.def("setFramePackingArrangementSEIQuincunx", &TEncCfg::setFramePackingArrangementSEIQuincunx )
.def("getFramePackingArrangementSEIQuincunx", &TEncCfg::getFramePackingArrangementSEIQuincunx )
.def("setFramePackingArrangementSEIInterpretation", &TEncCfg::setFramePackingArrangementSEIInterpretation )
.def("getFramePackingArrangementSEIInterpretation", &TEncCfg::getFramePackingArrangementSEIInterpretation )
.def("setSegmentedRectFramePackingArrangementSEIEnabled", &TEncCfg::setSegmentedRectFramePackingArrangementSEIEnabled )
.def("getSegmentedRectFramePackingArrangementSEIEnabled", &TEncCfg::getSegmentedRectFramePackingArrangementSEIEnabled )
.def("setSegmentedRectFramePackingArrangementSEICancel", &TEncCfg::setSegmentedRectFramePackingArrangementSEICancel )
.def("getSegmentedRectFramePackingArrangementSEICancel", &TEncCfg::getSegmentedRectFramePackingArrangementSEICancel )
.def("setSegmentedRectFramePackingArrangementSEIType", &TEncCfg::setSegmentedRectFramePackingArrangementSEIType )
.def("getSegmentedRectFramePackingArrangementSEIType", &TEncCfg::getSegmentedRectFramePackingArrangementSEIType )
.def("setSegmentedRectFramePackingArrangementSEIPersistence", &TEncCfg::setSegmentedRectFramePackingArrangementSEIPersistence )
.def("getSegmentedRectFramePackingArrangementSEIPersistence", &TEncCfg::getSegmentedRectFramePackingArrangementSEIPersistence )
.def("setDisplayOrientationSEIAngle", &TEncCfg::setDisplayOrientationSEIAngle )
.def("getDisplayOrientationSEIAngle", &TEncCfg::getDisplayOrientationSEIAngle )
.def("setTemporalLevel0IndexSEIEnabled", &TEncCfg::setTemporalLevel0IndexSEIEnabled )
.def("getTemporalLevel0IndexSEIEnabled", &TEncCfg::getTemporalLevel0IndexSEIEnabled )
.def("setGradualDecodingRefreshInfoEnabled", &TEncCfg::setGradualDecodingRefreshInfoEnabled )
.def("getGradualDecodingRefreshInfoEnabled", &TEncCfg::getGradualDecodingRefreshInfoEnabled )
.def("setNoDisplaySEITLayer", &TEncCfg::setNoDisplaySEITLayer )
.def("getNoDisplaySEITLayer", &TEncCfg::getNoDisplaySEITLayer )
.def("setDecodingUnitInfoSEIEnabled", &TEncCfg::setDecodingUnitInfoSEIEnabled )
.def("getDecodingUnitInfoSEIEnabled", &TEncCfg::getDecodingUnitInfoSEIEnabled )
.def("setSOPDescriptionSEIEnabled", &TEncCfg::setSOPDescriptionSEIEnabled )
.def("getSOPDescriptionSEIEnabled", &TEncCfg::getSOPDescriptionSEIEnabled )
.def("setScalableNestingSEIEnabled", &TEncCfg::setScalableNestingSEIEnabled )
.def("getScalableNestingSEIEnabled", &TEncCfg::getScalableNestingSEIEnabled )
.def("setTMCTSSEIEnabled", &TEncCfg::setTMCTSSEIEnabled )
.def("getTMCTSSEIEnabled", &TEncCfg::getTMCTSSEIEnabled )
.def("setTMCTSSEITileConstraint", &TEncCfg::setTMCTSSEITileConstraint )
.def("getTMCTSSEITileConstraint", &TEncCfg::getTMCTSSEITileConstraint )
.def("setTMCTSExtractionSEIEnabled", &TEncCfg::setTMCTSExtractionSEIEnabled )
.def("getTMCTSExtractionSEIEnabled", &TEncCfg::getTMCTSExtractionSEIEnabled )
.def("setTimeCodeSEIEnabled", &TEncCfg::setTimeCodeSEIEnabled )
.def("getTimeCodeSEIEnabled", &TEncCfg::getTimeCodeSEIEnabled )
.def("setNumberOfTimeSets", &TEncCfg::setNumberOfTimeSets )
.def("getNumberOfTimesets", &TEncCfg::getNumberOfTimesets )
.def("setTimeSet", &TEncCfg::setTimeSet )
// .def("getTimeSet", &TEncCfg::getTimeSet,py::return_value_policy::reference ) //Error: no matching function for call
.def("setKneeSEIEnabled", &TEncCfg::setKneeSEIEnabled )
.def("getKneeSEIEnabled", &TEncCfg::getKneeSEIEnabled )
.def("setKneeFunctionInformationSEI", &TEncCfg::setKneeFunctionInformationSEI )
.def("getKneeFunctionInformationSEI", &TEncCfg::getKneeFunctionInformationSEI,py::return_value_policy::reference )
.def("setCcvSEIEnabled", &TEncCfg::setCcvSEIEnabled )
.def("getCcvSEIEnabled", &TEncCfg::getCcvSEIEnabled )
.def("setCcvSEICancelFlag", &TEncCfg::setCcvSEICancelFlag )
.def("getCcvSEICancelFlag", &TEncCfg::getCcvSEICancelFlag )
.def("setCcvSEIPersistenceFlag", &TEncCfg::setCcvSEIPersistenceFlag )
.def("getCcvSEIPersistenceFlag", &TEncCfg::getCcvSEIPersistenceFlag )
.def("setCcvSEIPrimariesPresentFlag", &TEncCfg::setCcvSEIPrimariesPresentFlag )
.def("getCcvSEIPrimariesPresentFlag", &TEncCfg::getCcvSEIPrimariesPresentFlag )
.def("setCcvSEIMinLuminanceValuePresentFlag", &TEncCfg::setCcvSEIMinLuminanceValuePresentFlag )
.def("getCcvSEIMinLuminanceValuePresentFlag", &TEncCfg::getCcvSEIMinLuminanceValuePresentFlag )
.def("setCcvSEIMaxLuminanceValuePresentFlag", &TEncCfg::setCcvSEIMaxLuminanceValuePresentFlag )
.def("getCcvSEIMaxLuminanceValuePresentFlag", &TEncCfg::getCcvSEIMaxLuminanceValuePresentFlag )
.def("setCcvSEIAvgLuminanceValuePresentFlag", &TEncCfg::setCcvSEIAvgLuminanceValuePresentFlag )
.def("getCcvSEIAvgLuminanceValuePresentFlag", &TEncCfg::getCcvSEIAvgLuminanceValuePresentFlag )
.def("setCcvSEIPrimariesX", &TEncCfg::setCcvSEIPrimariesX )
.def("getCcvSEIPrimariesX", &TEncCfg::getCcvSEIPrimariesX )
.def("setCcvSEIPrimariesY", &TEncCfg::setCcvSEIPrimariesY )
.def("getCcvSEIPrimariesY", &TEncCfg::getCcvSEIPrimariesY )
.def("setCcvSEIMinLuminanceValue", &TEncCfg::setCcvSEIMinLuminanceValue )
.def("getCcvSEIMinLuminanceValue", &TEncCfg::getCcvSEIMinLuminanceValue )
.def("setCcvSEIMaxLuminanceValue", &TEncCfg::setCcvSEIMaxLuminanceValue )
.def("getCcvSEIMaxLuminanceValue", &TEncCfg::getCcvSEIMaxLuminanceValue )
.def("setCcvSEIAvgLuminanceValue", &TEncCfg::setCcvSEIAvgLuminanceValue )
.def("getCcvSEIAvgLuminanceValue", &TEncCfg::getCcvSEIAvgLuminanceValue )
.def("setSiiSEIEnabled", &TEncCfg::setSiiSEIEnabled )
.def("getSiiSEIEnabled", &TEncCfg::getSiiSEIEnabled )
.def("setSiiSEINumUnitsInShutterInterval", &TEncCfg::setSiiSEINumUnitsInShutterInterval )
.def("getSiiSEINumUnitsInShutterInterval", &TEncCfg::getSiiSEINumUnitsInShutterInterval )
.def("setSiiSEITimeScale", &TEncCfg::setSiiSEITimeScale )
.def("getSiiSEITimeScale", &TEncCfg::getSiiSEITimeScale )
.def("getSiiSEIMaxSubLayersMinus1", &TEncCfg::getSiiSEIMaxSubLayersMinus1 )
.def("getSiiSEIFixedSIwithinCLVS", &TEncCfg::getSiiSEIFixedSIwithinCLVS )
.def("setSiiSEISubLayerNumUnitsInSI", &TEncCfg::setSiiSEISubLayerNumUnitsInSI )
.def("getSiiSEISubLayerNumUnitsInSI", &TEncCfg::getSiiSEISubLayerNumUnitsInSI )
.def("setFilmGrainCharactersticsSEIEnabled", &TEncCfg::setFilmGrainCharactersticsSEIEnabled )
.def("getFilmGrainCharactersticsSEIEnabled", &TEncCfg::getFilmGrainCharactersticsSEIEnabled )
.def("setFilmGrainCharactersticsSEICancelFlag", &TEncCfg::setFilmGrainCharactersticsSEICancelFlag )
.def("getFilmGrainCharactersticsSEICancelFlag", &TEncCfg::getFilmGrainCharactersticsSEICancelFlag )
.def("setFilmGrainCharactersticsSEIPersistenceFlag", &TEncCfg::setFilmGrainCharactersticsSEIPersistenceFlag )
.def("getFilmGrainCharactersticsSEIPersistenceFlag", &TEncCfg::getFilmGrainCharactersticsSEIPersistenceFlag )
.def("setFilmGrainCharactersticsSEIModelID", &TEncCfg::setFilmGrainCharactersticsSEIModelID )
.def("getFilmGrainCharactersticsSEIModelID", &TEncCfg::getFilmGrainCharactersticsSEIModelID )
.def("setFilmGrainCharactersticsSEISepColourDescPresent", &TEncCfg::setFilmGrainCharactersticsSEISepColourDescPresent )
.def("getFilmGrainCharactersticsSEISepColourDescPresent", &TEncCfg::getFilmGrainCharactersticsSEISepColourDescPresent )
.def("setFilmGrainCharactersticsSEIBlendingModeID", &TEncCfg::setFilmGrainCharactersticsSEIBlendingModeID )
.def("getFilmGrainCharactersticsSEIBlendingModeID", &TEncCfg::getFilmGrainCharactersticsSEIBlendingModeID )
.def("setFilmGrainCharactersticsSEILog2ScaleFactor", &TEncCfg::setFilmGrainCharactersticsSEILog2ScaleFactor )
.def("getFilmGrainCharactersticsSEILog2ScaleFactor", &TEncCfg::getFilmGrainCharactersticsSEILog2ScaleFactor )
#if JVET_X0048_X0103_FILM_GRAIN
.def("setFGCSEICompModelPresent", &TEncCfg::setFGCSEICompModelPresent )
.def("getFGCSEICompModelPresent", &TEncCfg::getFGCSEICompModelPresent )
.def("getFGCSEICompModelPresent", &TEncCfg::getFGCSEICompModelPresent )
.def("setFilmGrainAnalysisEnabled", &TEncCfg::setFilmGrainAnalysisEnabled )
.def("getFilmGrainAnalysisEnabled", &TEncCfg::getFilmGrainAnalysisEnabled )
.def("setFilmGrainExternalMask", &TEncCfg::setFilmGrainExternalMask )
.def("setFilmGrainExternalDenoised", &TEncCfg::setFilmGrainExternalDenoised )
.def("getFilmGrainExternalMask", &TEncCfg::getFilmGrainExternalMask )
.def("getFilmGrainExternalDenoised", &TEncCfg::getFilmGrainExternalDenoised )
.def("setFilmGrainCharactersticsSEIPerPictureSEI", &TEncCfg::setFilmGrainCharactersticsSEIPerPictureSEI )
.def("getFilmGrainCharactersticsSEIPerPictureSEI", &TEncCfg::getFilmGrainCharactersticsSEIPerPictureSEI )
.def("setFGCSEINumIntensityIntervalMinus1", &TEncCfg::setFGCSEINumIntensityIntervalMinus1 )
.def("getFGCSEINumIntensityIntervalMinus1", &TEncCfg::getFGCSEINumIntensityIntervalMinus1 )
.def("setFGCSEINumModelValuesMinus1", &TEncCfg::setFGCSEINumModelValuesMinus1 )
.def("getFGCSEINumModelValuesMinus1", &TEncCfg::getFGCSEINumModelValuesMinus1 )
.def("setFGCSEIIntensityIntervalLowerBound", &TEncCfg::setFGCSEIIntensityIntervalLowerBound )
.def("getFGCSEIIntensityIntervalLowerBound", &TEncCfg::getFGCSEIIntensityIntervalLowerBound )
.def("setFGCSEIIntensityIntervalUpperBound", &TEncCfg::setFGCSEIIntensityIntervalUpperBound )
.def("getFGCSEIIntensityIntervalUpperBound", &TEncCfg::getFGCSEIIntensityIntervalUpperBound )
.def("setFGCSEICompModelValue", &TEncCfg::setFGCSEICompModelValue )
.def("getFGCSEICompModelValue", &TEncCfg::getFGCSEICompModelValue )
#endif
.def("setCLLSEIEnabled", &TEncCfg::setCLLSEIEnabled )
.def("getCLLSEIEnabled", &TEncCfg::getCLLSEIEnabled )
.def("setCLLSEIMaxContentLightLevel", &TEncCfg::setCLLSEIMaxContentLightLevel )
.def("getCLLSEIMaxContentLightLevel", &TEncCfg::getCLLSEIMaxContentLightLevel )
.def("setCLLSEIMaxPicAvgLightLevel", &TEncCfg::setCLLSEIMaxPicAvgLightLevel )
.def("getCLLSEIMaxPicAvgLightLevel", &TEncCfg::getCLLSEIMaxPicAvgLightLevel )
.def("setAmbientViewingEnvironmentSEIEnabled", &TEncCfg::setAmbientViewingEnvironmentSEIEnabled )
.def("getAmbientViewingEnvironmentSEIEnabled", &TEncCfg::getAmbientViewingEnvironmentSEIEnabled )
.def("setAmbientViewingEnvironmentSEIIlluminance", &TEncCfg::setAmbientViewingEnvironmentSEIIlluminance )
.def("getAmbientViewingEnvironmentSEIIlluminance", &TEncCfg::getAmbientViewingEnvironmentSEIIlluminance )
.def("setAmbientViewingEnvironmentSEIAmbientLightX", &TEncCfg::setAmbientViewingEnvironmentSEIAmbientLightX )
.def("getAmbientViewingEnvironmentSEIAmbientLightX", &TEncCfg::getAmbientViewingEnvironmentSEIAmbientLightX )
.def("setAmbientViewingEnvironmentSEIAmbientLightY", &TEncCfg::setAmbientViewingEnvironmentSEIAmbientLightY )
.def("getAmbientViewingEnvironmentSEIAmbientLightY", &TEncCfg::getAmbientViewingEnvironmentSEIAmbientLightY )
.def("setErpSEIEnabled", &TEncCfg::setErpSEIEnabled )
.def("getErpSEIEnabled", &TEncCfg::getErpSEIEnabled )
.def("setErpSEICancelFlag", &TEncCfg::setErpSEICancelFlag )
.def("getErpSEICancelFlag", &TEncCfg::getErpSEICancelFlag )
.def("setErpSEIPersistenceFlag", &TEncCfg::setErpSEIPersistenceFlag )
.def("getErpSEIPersistenceFlag", &TEncCfg::getErpSEIPersistenceFlag )
.def("setErpSEIGuardBandFlag", &TEncCfg::setErpSEIGuardBandFlag )
.def("getErpSEIGuardBandFlag", &TEncCfg::getErpSEIGuardBandFlag )
.def("setErpSEIGuardBandType", &TEncCfg::setErpSEIGuardBandType )
.def("getErpSEIGuardBandType", &TEncCfg::getErpSEIGuardBandType )
.def("setErpSEILeftGuardBandWidth", &TEncCfg::setErpSEILeftGuardBandWidth )
.def("getErpSEILeftGuardBandWidth", &TEncCfg::getErpSEILeftGuardBandWidth )
.def("setErpSEIRightGuardBandWidth", &TEncCfg::setErpSEIRightGuardBandWidth )
.def("getErpSEIRightGuardBandWidth", &TEncCfg::getErpSEIRightGuardBandWidth )
.def("setSphereRotationSEIEnabled", &TEncCfg::setSphereRotationSEIEnabled )
.def("getSphereRotationSEIEnabled", &TEncCfg::getSphereRotationSEIEnabled )
.def("setSphereRotationSEICancelFlag", &TEncCfg::setSphereRotationSEICancelFlag )
.def("getSphereRotationSEICancelFlag", &TEncCfg::getSphereRotationSEICancelFlag )
.def("setSphereRotationSEIPersistenceFlag", &TEncCfg::setSphereRotationSEIPersistenceFlag )
.def("getSphereRotationSEIPersistenceFlag", &TEncCfg::getSphereRotationSEIPersistenceFlag )
.def("setSphereRotationSEIYaw", &TEncCfg::setSphereRotationSEIYaw )
.def("getSphereRotationSEIYaw", &TEncCfg::getSphereRotationSEIYaw )
.def("setSphereRotationSEIPitch", &TEncCfg::setSphereRotationSEIPitch )
.def("getSphereRotationSEIPitch", &TEncCfg::getSphereRotationSEIPitch )
.def("setSphereRotationSEIRoll", &TEncCfg::setSphereRotationSEIRoll )
.def("getSphereRotationSEIRoll", &TEncCfg::getSphereRotationSEIRoll )
.def("setOmniViewportSEIEnabled", &TEncCfg::setOmniViewportSEIEnabled )
.def("getOmniViewportSEIEnabled", &TEncCfg::getOmniViewportSEIEnabled )
.def("setOmniViewportSEIId", &TEncCfg::setOmniViewportSEIId )
.def("getOmniViewportSEIId", &TEncCfg::getOmniViewportSEIId )
.def("setOmniViewportSEICancelFlag", &TEncCfg::setOmniViewportSEICancelFlag )
.def("getOmniViewportSEICancelFlag", &TEncCfg::getOmniViewportSEICancelFlag )
.def("setOmniViewportSEIPersistenceFlag", &TEncCfg::setOmniViewportSEIPersistenceFlag )
.def("getOmniViewportSEIPersistenceFlag", &TEncCfg::getOmniViewportSEIPersistenceFlag )
.def("setOmniViewportSEICntMinus1", &TEncCfg::setOmniViewportSEICntMinus1 )
.def("getOmniViewportSEICntMinus1", &TEncCfg::getOmniViewportSEICntMinus1 )
.def("setOmniViewportSEIAzimuthCentre", &TEncCfg::setOmniViewportSEIAzimuthCentre )
.def("getOmniViewportSEIAzimuthCentre", &TEncCfg::getOmniViewportSEIAzimuthCentre )
.def("setOmniViewportSEIElevationCentre", &TEncCfg::setOmniViewportSEIElevationCentre )
.def("getOmniViewportSEIElevationCentre", &TEncCfg::getOmniViewportSEIElevationCentre )
.def("setOmniViewportSEITiltCentre", &TEncCfg::setOmniViewportSEITiltCentre )
.def("getOmniViewportSEITiltCentre", &TEncCfg::getOmniViewportSEITiltCentre )
.def("setOmniViewportSEIHorRange", &TEncCfg::setOmniViewportSEIHorRange )
.def("getOmniViewportSEIHorRange", &TEncCfg::getOmniViewportSEIHorRange )
.def("setOmniViewportSEIVerRange", &TEncCfg::setOmniViewportSEIVerRange )
.def("getOmniViewportSEIVerRange", &TEncCfg::getOmniViewportSEIVerRange )
.def("setGopBasedTemporalFilterEnabled", &TEncCfg::setGopBasedTemporalFilterEnabled )
.def("getGopBasedTemporalFilterEnabled", &TEncCfg::getGopBasedTemporalFilterEnabled )
.def("setBIM", &TEncCfg::setBIM )
.def("getBIM", &TEncCfg::getBIM )
.def("setAdaptQPmap", &TEncCfg::setAdaptQPmap )
.def("getAdaptQPmap", py::overload_cast<Int>(&TEncCfg::getAdaptQPmap),py::return_value_policy::reference)
.def("getAdaptQPmap", py::overload_cast<>(&TEncCfg::getAdaptQPmap),py::return_value_policy::reference)
.def("setCmpSEIEnabled", &TEncCfg::setCmpSEIEnabled )
.def("getCmpSEIEnabled", &TEncCfg::getCmpSEIEnabled )
.def("setCmpSEICmpCancelFlag", &TEncCfg::setCmpSEICmpCancelFlag )
.def("getCmpSEICmpCancelFlag", &TEncCfg::getCmpSEICmpCancelFlag )
.def("setCmpSEICmpPersistenceFlag", &TEncCfg::setCmpSEICmpPersistenceFlag )
.def("getCmpSEICmpPersistenceFlag", &TEncCfg::getCmpSEICmpPersistenceFlag )
.def("setRwpSEIEnabled", &TEncCfg::setRwpSEIEnabled )
.def("getRwpSEIEnabled", &TEncCfg::getRwpSEIEnabled )
.def("setRwpSEIRwpCancelFlag", &TEncCfg::setRwpSEIRwpCancelFlag )
.def("getRwpSEIRwpCancelFlag", &TEncCfg::getRwpSEIRwpCancelFlag )
.def("setRwpSEIRwpPersistenceFlag", &TEncCfg::setRwpSEIRwpPersistenceFlag )
.def("getRwpSEIRwpPersistenceFlag", &TEncCfg::getRwpSEIRwpPersistenceFlag )
.def("setRwpSEIConstituentPictureMatchingFlag", &TEncCfg::setRwpSEIConstituentPictureMatchingFlag )
.def("getRwpSEIConstituentPictureMatchingFlag", &TEncCfg::getRwpSEIConstituentPictureMatchingFlag )
.def("setRwpSEINumPackedRegions", &TEncCfg::setRwpSEINumPackedRegions )
.def("getRwpSEINumPackedRegions", &TEncCfg::getRwpSEINumPackedRegions )
.def("setRwpSEIProjPictureWidth", &TEncCfg::setRwpSEIProjPictureWidth )
.def("getRwpSEIProjPictureWidth", &TEncCfg::getRwpSEIProjPictureWidth )
.def("setRwpSEIProjPictureHeight", &TEncCfg::setRwpSEIProjPictureHeight )
.def("getRwpSEIProjPictureHeight", &TEncCfg::getRwpSEIProjPictureHeight )
.def("setRwpSEIPackedPictureWidth", &TEncCfg::setRwpSEIPackedPictureWidth )
.def("getRwpSEIPackedPictureWidth", &TEncCfg::getRwpSEIPackedPictureWidth )
.def("setRwpSEIPackedPictureHeight", &TEncCfg::setRwpSEIPackedPictureHeight )
.def("getRwpSEIPackedPictureHeight", &TEncCfg::getRwpSEIPackedPictureHeight )
.def("setRwpSEIRwpTransformType", &TEncCfg::setRwpSEIRwpTransformType )
.def("getRwpSEIRwpTransformType", &TEncCfg::getRwpSEIRwpTransformType )
.def("setRwpSEIRwpGuardBandFlag", &TEncCfg::setRwpSEIRwpGuardBandFlag )
.def("getRwpSEIRwpGuardBandFlag", &TEncCfg::getRwpSEIRwpGuardBandFlag )
.def("setRwpSEIProjRegionWidth", &TEncCfg::setRwpSEIProjRegionWidth )
.def("getRwpSEIProjRegionWidth", &TEncCfg::getRwpSEIProjRegionWidth )
.def("setRwpSEIProjRegionHeight", &TEncCfg::setRwpSEIProjRegionHeight )
.def("getRwpSEIProjRegionHeight", &TEncCfg::getRwpSEIProjRegionHeight )
.def("setRwpSEIRwpSEIProjRegionTop", &TEncCfg::setRwpSEIRwpSEIProjRegionTop )
.def("getRwpSEIRwpSEIProjRegionTop", &TEncCfg::getRwpSEIRwpSEIProjRegionTop )
.def("setRwpSEIProjRegionLeft", &TEncCfg::setRwpSEIProjRegionLeft )
.def("getRwpSEIProjRegionLeft", &TEncCfg::getRwpSEIProjRegionLeft )
.def("setRwpSEIPackedRegionWidth", &TEncCfg::setRwpSEIPackedRegionWidth )
.def("getRwpSEIPackedRegionWidth", &TEncCfg::getRwpSEIPackedRegionWidth )
.def("setRwpSEIPackedRegionHeight", &TEncCfg::setRwpSEIPackedRegionHeight )
.def("getRwpSEIPackedRegionHeight", &TEncCfg::getRwpSEIPackedRegionHeight )
.def("setRwpSEIPackedRegionTop", &TEncCfg::setRwpSEIPackedRegionTop )
.def("getRwpSEIPackedRegionTop", &TEncCfg::getRwpSEIPackedRegionTop )
.def("setRwpSEIPackedRegionLeft", &TEncCfg::setRwpSEIPackedRegionLeft )
.def("getRwpSEIPackedRegionLeft", &TEncCfg::getRwpSEIPackedRegionLeft )
.def("setRwpSEIRwpLeftGuardBandWidth", &TEncCfg::setRwpSEIRwpLeftGuardBandWidth )
.def("getRwpSEIRwpLeftGuardBandWidth", &TEncCfg::getRwpSEIRwpLeftGuardBandWidth )
.def("setRwpSEIRwpRightGuardBandWidth", &TEncCfg::setRwpSEIRwpRightGuardBandWidth )
.def("getRwpSEIRwpRightGuardBandWidth", &TEncCfg::getRwpSEIRwpRightGuardBandWidth )
.def("setRwpSEIRwpTopGuardBandHeight", &TEncCfg::setRwpSEIRwpTopGuardBandHeight )
.def("getRwpSEIRwpTopGuardBandHeight", &TEncCfg::getRwpSEIRwpTopGuardBandHeight )
.def("setRwpSEIRwpBottomGuardBandHeight", &TEncCfg::setRwpSEIRwpBottomGuardBandHeight )
.def("getRwpSEIRwpBottomGuardBandHeight", &TEncCfg::getRwpSEIRwpBottomGuardBandHeight )
.def("setRwpSEIRwpGuardBandNotUsedForPredFlag", &TEncCfg::setRwpSEIRwpGuardBandNotUsedForPredFlag )
.def("getRwpSEIRwpGuardBandNotUsedForPredFlag", &TEncCfg::getRwpSEIRwpGuardBandNotUsedForPredFlag )
.def("setRwpSEIRwpGuardBandType", &TEncCfg::setRwpSEIRwpGuardBandType )
.def("getRwpSEIRwpGuardBandType", &TEncCfg::getRwpSEIRwpGuardBandType )
.def("setFviSEIDisabled", &TEncCfg::setFviSEIDisabled )
.def("setFviSEIEnabled", &TEncCfg::setFviSEIEnabled )
.def("getFviSEIEnabled", &TEncCfg::getFviSEIEnabled )
.def("getFviSEIData", &TEncCfg::getFviSEIData,py::return_value_policy::reference )
.def("setColourRemapInfoSEIFileRoot", &TEncCfg::setColourRemapInfoSEIFileRoot )
.def("getColourRemapInfoSEIFileRoot", &TEncCfg::getColourRemapInfoSEIFileRoot,py::return_value_policy::reference )
.def("setMasteringDisplaySEI", &TEncCfg::setMasteringDisplaySEI )
.def("setSEIAlternativeTransferCharacteristicsSEIEnable", &TEncCfg::setSEIAlternativeTransferCharacteristicsSEIEnable )
.def("getSEIAlternativeTransferCharacteristicsSEIEnable", &TEncCfg::getSEIAlternativeTransferCharacteristicsSEIEnable )
.def("setSEIPreferredTransferCharacteristics", &TEncCfg::setSEIPreferredTransferCharacteristics )
.def("getSEIPreferredTransferCharacteristics", &TEncCfg::getSEIPreferredTransferCharacteristics )
.def("setSEIGreenMetadataInfoSEIEnable", &TEncCfg::setSEIGreenMetadataInfoSEIEnable )
.def("getSEIGreenMetadataInfoSEIEnable", &TEncCfg::getSEIGreenMetadataInfoSEIEnable )
.def("setSEIGreenMetadataType", &TEncCfg::setSEIGreenMetadataType )
.def("getSEIGreenMetadataType", &TEncCfg::getSEIGreenMetadataType )
.def("setSEIXSDMetricType", &TEncCfg::setSEIXSDMetricType )
.def("getSEIXSDMetricType", &TEncCfg::getSEIXSDMetricType )
.def("setRegionalNestingSEIFileRoot", &TEncCfg::setRegionalNestingSEIFileRoot )
.def("getRegionalNestingSEIFileRoot", &TEncCfg::getRegionalNestingSEIFileRoot,py::return_value_policy::reference )
.def("setAnnotatedRegionSEIFileRoot", &TEncCfg::setAnnotatedRegionSEIFileRoot )
.def("getAnnotatedRegionSEIFileRoot", &TEncCfg::getAnnotatedRegionSEIFileRoot,py::return_value_policy::reference )
.def("getMasteringDisplaySEI", &TEncCfg::getMasteringDisplaySEI,py::return_value_policy::reference )
.def("setUseWP", &TEncCfg::setUseWP )
.def("setWPBiPred", &TEncCfg::setWPBiPred )
.def("getUseWP", &TEncCfg::getUseWP )
.def("getWPBiPred", &TEncCfg::getWPBiPred )
.def("setLog2ParallelMergeLevelMinus2", &TEncCfg::setLog2ParallelMergeLevelMinus2 )
.def("getLog2ParallelMergeLevelMinus2", &TEncCfg::getLog2ParallelMergeLevelMinus2 )
.def("setMaxNumMergeCand", &TEncCfg::setMaxNumMergeCand )
.def("getMaxNumMergeCand", &TEncCfg::getMaxNumMergeCand )
.def("setUseScalingListId", &TEncCfg::setUseScalingListId )
.def("getUseScalingListId", &TEncCfg::getUseScalingListId )
.def("setScalingListFileName", &TEncCfg::setScalingListFileName )
.def("getScalingListFileName", &TEncCfg:: getScalingListFileName,py::return_value_policy::reference )
.def("setTMVPModeId", &TEncCfg::setTMVPModeId )
.def("getTMVPModeId", &TEncCfg::getTMVPModeId )
.def("getWeightedPredictionMethod", &TEncCfg::getWeightedPredictionMethod )
.def("setWeightedPredictionMethod", &TEncCfg::setWeightedPredictionMethod )
.def("setSignDataHidingEnabledFlag", &TEncCfg::setSignDataHidingEnabledFlag )
.def("getSignDataHidingEnabledFlag", &TEncCfg::getSignDataHidingEnabledFlag )
.def("getUseRateCtrl", &TEncCfg::getUseRateCtrl )
.def("setUseRateCtrl", &TEncCfg::setUseRateCtrl )
.def("getTargetBitrate", &TEncCfg::getTargetBitrate )
.def("setTargetBitrate", &TEncCfg::setTargetBitrate )
.def("getKeepHierBit", &TEncCfg::getKeepHierBit )
.def("setKeepHierBit", &TEncCfg::setKeepHierBit )
.def("getLCULevelRC", &TEncCfg::getLCULevelRC )
.def("setLCULevelRC", &TEncCfg::setLCULevelRC )
.def("getUseLCUSeparateModel", &TEncCfg::getUseLCUSeparateModel )
.def("setUseLCUSeparateModel", &TEncCfg::setUseLCUSeparateModel )
.def("getInitialQP", &TEncCfg::getInitialQP )
.def("setInitialQP", &TEncCfg::setInitialQP )
.def("getForceIntraQP", &TEncCfg::getForceIntraQP )
.def("setForceIntraQP", &TEncCfg::setForceIntraQP )
.def("getCpbSaturationEnabled", &TEncCfg::getCpbSaturationEnabled )
.def("setCpbSaturationEnabled", &TEncCfg::setCpbSaturationEnabled )
.def("getCpbSize", &TEncCfg::getCpbSize )
.def("setCpbSize", &TEncCfg::setCpbSize )
.def("getInitialCpbFullness", &TEncCfg::getInitialCpbFullness )
.def("setInitialCpbFullness", &TEncCfg::setInitialCpbFullness )
.def("getTransquantBypassEnabledFlag", &TEncCfg::getTransquantBypassEnabledFlag )
.def("setTransquantBypassEnabledFlag", &TEncCfg::setTransquantBypassEnabledFlag )
.def("getCUTransquantBypassFlagForceValue", &TEncCfg::getCUTransquantBypassFlagForceValue )
.def("setCUTransquantBypassFlagForceValue", &TEncCfg::setCUTransquantBypassFlagForceValue )
.def("getCostMode", &TEncCfg::getCostMode )
.def("setCostMode", &TEncCfg::setCostMode )
.def("setVPS", &TEncCfg::setVPS )
.def("getVPS", &TEncCfg::getVPS,py::return_value_policy::reference)
.def("setUseRecalculateQPAccordingToLambda", &TEncCfg::setUseRecalculateQPAccordingToLambda )
.def("getUseRecalculateQPAccordingToLambda", &TEncCfg::getUseRecalculateQPAccordingToLambda )
.def("setUseStrongIntraSmoothing", &TEncCfg::setUseStrongIntraSmoothing )
.def("getUseStrongIntraSmoothing", &TEncCfg::getUseStrongIntraSmoothing )
.def("setEfficientFieldIRAPEnabled", &TEncCfg::setEfficientFieldIRAPEnabled )
.def("getEfficientFieldIRAPEnabled", &TEncCfg::getEfficientFieldIRAPEnabled )
.def("setHarmonizeGopFirstFieldCoupleEnabled", &TEncCfg::setHarmonizeGopFirstFieldCoupleEnabled )
.def("getHarmonizeGopFirstFieldCoupleEnabled", &TEncCfg::getHarmonizeGopFirstFieldCoupleEnabled )
.def("setActiveParameterSetsSEIEnabled", &TEncCfg::setActiveParameterSetsSEIEnabled )
.def("getActiveParameterSetsSEIEnabled", &TEncCfg::getActiveParameterSetsSEIEnabled )
.def("getVuiParametersPresentFlag", &TEncCfg::getVuiParametersPresentFlag )
.def("setVuiParametersPresentFlag", &TEncCfg::setVuiParametersPresentFlag )
.def("getAspectRatioInfoPresentFlag", &TEncCfg::getAspectRatioInfoPresentFlag )
.def("setAspectRatioInfoPresentFlag", &TEncCfg::setAspectRatioInfoPresentFlag )
.def("getAspectRatioIdc", &TEncCfg::getAspectRatioIdc )
.def("setAspectRatioIdc", &TEncCfg::setAspectRatioIdc )
.def("getSarWidth", &TEncCfg::getSarWidth )
.def("setSarWidth", &TEncCfg::setSarWidth )
.def("getSarHeight", &TEncCfg::getSarHeight )
.def("setSarHeight", &TEncCfg::setSarHeight )
.def("getOverscanInfoPresentFlag", &TEncCfg::getOverscanInfoPresentFlag )
.def("setOverscanInfoPresentFlag", &TEncCfg::setOverscanInfoPresentFlag )
.def("getOverscanAppropriateFlag", &TEncCfg::getOverscanAppropriateFlag )
.def("setOverscanAppropriateFlag", &TEncCfg::setOverscanAppropriateFlag )
.def("getVideoSignalTypePresentFlag", &TEncCfg::getVideoSignalTypePresentFlag )
.def("setVideoSignalTypePresentFlag", &TEncCfg::setVideoSignalTypePresentFlag )
.def("getVideoFormat", &TEncCfg::getVideoFormat )
.def("setVideoFormat", &TEncCfg::setVideoFormat )
.def("getVideoFullRangeFlag", &TEncCfg::getVideoFullRangeFlag )
.def("setVideoFullRangeFlag", &TEncCfg::setVideoFullRangeFlag )
.def("getColourDescriptionPresentFlag", &TEncCfg::getColourDescriptionPresentFlag )
.def("setColourDescriptionPresentFlag", &TEncCfg::setColourDescriptionPresentFlag )
.def("getColourPrimaries", &TEncCfg::getColourPrimaries )
.def("setColourPrimaries", &TEncCfg::setColourPrimaries )
.def("getTransferCharacteristics", &TEncCfg::getTransferCharacteristics )
.def("setTransferCharacteristics", &TEncCfg::setTransferCharacteristics )
.def("getMatrixCoefficients", &TEncCfg::getMatrixCoefficients )
.def("setMatrixCoefficients", &TEncCfg::setMatrixCoefficients )
.def("getChromaLocInfoPresentFlag", &TEncCfg::getChromaLocInfoPresentFlag )
.def("setChromaLocInfoPresentFlag", &TEncCfg::setChromaLocInfoPresentFlag )
.def("getChromaSampleLocTypeTopField", &TEncCfg::getChromaSampleLocTypeTopField )
.def("setChromaSampleLocTypeTopField", &TEncCfg::setChromaSampleLocTypeTopField )
.def("getChromaSampleLocTypeBottomField", &TEncCfg::getChromaSampleLocTypeBottomField )
.def("setChromaSampleLocTypeBottomField", &TEncCfg::setChromaSampleLocTypeBottomField )
.def("getNeutralChromaIndicationFlag", &TEncCfg::getNeutralChromaIndicationFlag )
.def("setNeutralChromaIndicationFlag", &TEncCfg::setNeutralChromaIndicationFlag )
.def("getDefaultDisplayWindow", &TEncCfg::getDefaultDisplayWindow,py::return_value_policy::reference )
.def("setDefaultDisplayWindow", &TEncCfg::setDefaultDisplayWindow )
.def("getFrameFieldInfoPresentFlag", &TEncCfg::getFrameFieldInfoPresentFlag )
.def("setFrameFieldInfoPresentFlag", &TEncCfg::setFrameFieldInfoPresentFlag )
.def("getPocProportionalToTimingFlag", &TEncCfg::getPocProportionalToTimingFlag )
.def("setPocProportionalToTimingFlag", &TEncCfg::setPocProportionalToTimingFlag )
.def("getNumTicksPocDiffOneMinus1", &TEncCfg::getNumTicksPocDiffOneMinus1 )
.def("setNumTicksPocDiffOneMinus1", &TEncCfg::setNumTicksPocDiffOneMinus1 )
.def("getBitstreamRestrictionFlag", &TEncCfg::getBitstreamRestrictionFlag )
.def("setBitstreamRestrictionFlag", &TEncCfg::setBitstreamRestrictionFlag )
.def("getTilesFixedStructureFlag", &TEncCfg::getTilesFixedStructureFlag )
.def("setTilesFixedStructureFlag", &TEncCfg::setTilesFixedStructureFlag )
.def("getMotionVectorsOverPicBoundariesFlag", &TEncCfg::getMotionVectorsOverPicBoundariesFlag )
.def("setMotionVectorsOverPicBoundariesFlag", &TEncCfg::setMotionVectorsOverPicBoundariesFlag )
.def("getMinSpatialSegmentationIdc", &TEncCfg::getMinSpatialSegmentationIdc )
.def("setMinSpatialSegmentationIdc", &TEncCfg::setMinSpatialSegmentationIdc )
.def("getMaxBytesPerPicDenom", &TEncCfg::getMaxBytesPerPicDenom )
.def("setMaxBytesPerPicDenom", &TEncCfg::setMaxBytesPerPicDenom )
.def("getMaxBitsPerMinCuDenom", &TEncCfg::getMaxBitsPerMinCuDenom )
.def("setMaxBitsPerMinCuDenom", &TEncCfg::setMaxBitsPerMinCuDenom )
.def("getLog2MaxMvLengthHorizontal", &TEncCfg::getLog2MaxMvLengthHorizontal )
.def("setLog2MaxMvLengthHorizontal", &TEncCfg::setLog2MaxMvLengthHorizontal )
.def("getLog2MaxMvLengthVertical", &TEncCfg::getLog2MaxMvLengthVertical )
.def("setLog2MaxMvLengthVertical", &TEncCfg::setLog2MaxMvLengthVertical )
.def("getProgressiveSourceFlag", &TEncCfg::getProgressiveSourceFlag )
.def("setProgressiveSourceFlag", &TEncCfg::setProgressiveSourceFlag )
.def("getInterlacedSourceFlag", &TEncCfg::getInterlacedSourceFlag )
.def("setInterlacedSourceFlag", &TEncCfg::setInterlacedSourceFlag )
.def("getNonPackedConstraintFlag", &TEncCfg::getNonPackedConstraintFlag )
.def("setNonPackedConstraintFlag", &TEncCfg::setNonPackedConstraintFlag )
.def("getFrameOnlyConstraintFlag", &TEncCfg::getFrameOnlyConstraintFlag )
.def("setFrameOnlyConstraintFlag", &TEncCfg::setFrameOnlyConstraintFlag )
.def("getBitDepthConstraintValue", &TEncCfg::getBitDepthConstraintValue )
.def("setBitDepthConstraintValue", &TEncCfg::setBitDepthConstraintValue )
.def("getChromaFormatConstraintValue", &TEncCfg::getChromaFormatConstraintValue )
.def("setChromaFormatConstraintValue", &TEncCfg::setChromaFormatConstraintValue )
.def("getIntraConstraintFlag", &TEncCfg::getIntraConstraintFlag )
.def("setIntraConstraintFlag", &TEncCfg::setIntraConstraintFlag )
.def("getOnePictureOnlyConstraintFlag", &TEncCfg::getOnePictureOnlyConstraintFlag )
.def("setOnePictureOnlyConstraintFlag", &TEncCfg::setOnePictureOnlyConstraintFlag )
.def("getLowerBitRateConstraintFlag", &TEncCfg::getLowerBitRateConstraintFlag )
.def("setLowerBitRateConstraintFlag", &TEncCfg::setLowerBitRateConstraintFlag )
.def("getChromaResamplingFilterHintEnabled", &TEncCfg::getChromaResamplingFilterHintEnabled )
.def("setChromaResamplingFilterHintEnabled", &TEncCfg::setChromaResamplingFilterHintEnabled )
.def("getChromaResamplingHorFilterIdc", &TEncCfg::getChromaResamplingHorFilterIdc )
.def("setChromaResamplingHorFilterIdc", &TEncCfg::setChromaResamplingHorFilterIdc )
.def("getChromaResamplingVerFilterIdc", &TEncCfg::getChromaResamplingVerFilterIdc )
.def("setChromaResamplingVerFilterIdc", &TEncCfg::setChromaResamplingVerFilterIdc )
.def("setSummaryOutFilename", &TEncCfg::setSummaryOutFilename )
.def("getSummaryOutFilename", &TEncCfg::getSummaryOutFilename,py::return_value_policy::reference )
.def("setSummaryPicFilenameBase", &TEncCfg::setSummaryPicFilenameBase )
.def("getSummaryPicFilenameBase", &TEncCfg::getSummaryPicFilenameBase,py::return_value_policy::reference )
.def("setSummaryVerboseness", &TEncCfg::setSummaryVerboseness )
.def("getSummaryVerboseness", &TEncCfg::getSummaryVerboseness )
.def("setSEIManifestSEIEnabled", &TEncCfg::setSEIManifestSEIEnabled )
.def("getSEIManifestSEIEnabled", &TEncCfg::getSEIManifestSEIEnabled )
.def("setSEIPrefixIndicationSEIEnabled", &TEncCfg::setSEIPrefixIndicationSEIEnabled )
.def("getSEIPrefixIndicationSEIEnabled", &TEncCfg::getSEIPrefixIndicationSEIEnabled );
py::class_<TEncCfg::TEncSEIKneeFunctionInformation> seikneeFI(encCfg, "TEncSEIKneeFunctionInformation");//类内有类型定义,可以用这种方式。
seikneeFI.def(py::init<>())
.def_readwrite("m_kneeFunctionId", &TEncCfg::TEncSEIKneeFunctionInformation::m_kneeFunctionId)
.def_readwrite("m_kneeFunctionCancelFlag", &TEncCfg::TEncSEIKneeFunctionInformation::m_kneeFunctionCancelFlag)
.def_readwrite("m_kneeFunctionPersistenceFlag", &TEncCfg::TEncSEIKneeFunctionInformation::m_kneeFunctionPersistenceFlag)
.def_readwrite("m_inputDRange", &TEncCfg::TEncSEIKneeFunctionInformation::m_inputDRange)
.def_readwrite("m_inputDispLuminance", &TEncCfg::TEncSEIKneeFunctionInformation::m_inputDispLuminance)
.def_readwrite("m_outputDRange", &TEncCfg::TEncSEIKneeFunctionInformation::m_outputDRange)
.def_readwrite("m_outputDispLuminance", &TEncCfg::TEncSEIKneeFunctionInformation::m_outputDispLuminance)
.def_readwrite("m_kneeSEIKneePointPairs", &TEncCfg::TEncSEIKneeFunctionInformation::m_kneeSEIKneePointPairs);
py::class_<TEncCfg::TEncSEIKneeFunctionInformation::KneePointPair>(seikneeFI, "KneePointPair")
.def(py::init<Int,Int>())
.def_readwrite("inputKneePoint", &TEncCfg::TEncSEIKneeFunctionInformation::KneePointPair::inputKneePoint)
.def_readwrite("outputKneePoint", &TEncCfg::TEncSEIKneeFunctionInformation::KneePointPair::outputKneePoint);
py::class_<TEncTop, TEncCfg>(m, "TEncTop")
.def(py::init<>())
.def("create", &TEncTop::create)
.def("destroy", &TEncTop::destroy)
.def("init", &TEncTop::init)
.def("deletePicBuffer", &TEncTop::deletePicBuffer)
.def("getListPic", &TEncTop::getListPic, py::return_value_policy::reference_internal)
.def("getPredSearch", &TEncTop::getPredSearch, py::return_value_policy::reference_internal)
.def("getTrQuant", &TEncTop::getTrQuant, py::return_value_policy::reference_internal)
.def("getLoopFilter", &TEncTop::getLoopFilter, py::return_value_policy::reference_internal)
.def("getSAO", &TEncTop::getSAO, py::return_value_policy::reference_internal)
.def("getGOPEncoder", &TEncTop::getGOPEncoder, py::return_value_policy::reference_internal)
.def("getSliceEncoder", &TEncTop::getSliceEncoder, py::return_value_policy::reference_internal)
.def("getCuEncoder", &TEncTop::getCuEncoder, py::return_value_policy::reference_internal)
.def("getEntropyCoder", &TEncTop::getEntropyCoder, py::return_value_policy::reference_internal)
.def("getCavlcCoder", &TEncTop::getCavlcCoder, py::return_value_policy::reference_internal)
.def("getSbacCoder", &TEncTop::getSbacCoder, py::return_value_policy::reference_internal)
.def("getBinCABAC", &TEncTop::getBinCABAC, py::return_value_policy::reference_internal)
.def("getRdCost", &TEncTop::getRdCost, py::return_value_policy::reference_internal)
//.def("getRDSbacCoder", &TEncTop::getRDSbacCoder, py::return_value_policy::reference_internal) //ERROR
.def("getRDGoOnSbacCoder", &TEncTop::getRDGoOnSbacCoder, py::return_value_policy::reference_internal)
.def("getRateCtrl", &TEncTop::getRateCtrl, py::return_value_policy::reference_internal)
.def("selectReferencePictureSet", &TEncTop::selectReferencePictureSet)
.def("getReferencePictureSetIdxForSOP", &TEncTop::getReferencePictureSetIdxForSOP)
.def("setParamSetChanged", &TEncTop::setParamSetChanged)
.def("PPSNeedsWriting", &TEncTop::PPSNeedsWriting)
.def("SPSNeedsWriting", &TEncTop::SPSNeedsWriting)
#if JVET_X0048_X0103_FILM_GRAIN
.def("encode", py::overload_cast<Bool, TComPicYuv*, TComPicYuv*,TComPicYuv*, const InputColourSpaceConversion, const InputColourSpaceConversion, TComList<TComPicYuv*>&, std::list<AccessUnit>&, Int&>(&TEncTop::encode))
#else
.def("encode", py::overload_cast<Bool, TComPicYuv*, TComPicYuv*, const InputColourSpaceConversion, const InputColourSpaceConversion, TComList<TComPicYuv*>&, std::list<AccessUnit>&, Int&>(&TEncTop::encode))
#endif
.def("encode", py::overload_cast<Bool, TComPicYuv*, TComPicYuv*, const InputColourSpaceConversion, const InputColourSpaceConversion, TComList<TComPicYuv*>&, std::list<AccessUnit>&, Int&, Bool>(&TEncTop::encode))
.def("getOutputLogControl", &TEncTop::getOutputLogControl)
.def("printSummary", &TEncTop::printSummary)
.def("pbtest", &TEncCfg::pbtest );
};