Consolidate full svc structures in one source file
Keeping structures in the same file makes it clearer which are missing and makes it easier to see if structures are consistent with one another. No-Try: True Bug: None Change-Id: I4e5e6971054dd28dd326c68369ee57b6df62725e Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206987 Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org> Reviewed-by: Philip Eliasson <philipel@webrtc.org> Cr-Commit-Position: refs/heads/master@{#33256}
This commit is contained in:
committed by
Commit Bot
parent
8644f2b763
commit
f91f8b517a
@ -12,15 +12,9 @@
|
||||
#include <memory>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_full_svc.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_key_svc.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_l1t2.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_l1t3.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_l2t1.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_l2t1h.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_l2t2.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_l2t2_key_shift.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_l3t1.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_l3t3.h"
|
||||
#include "modules/video_coding/svc/scalability_structure_s2t1.h"
|
||||
#include "modules/video_coding/svc/scalable_video_controller.h"
|
||||
#include "modules/video_coding/svc/scalable_video_controller_no_layering.h"
|
||||
@ -41,12 +35,21 @@ std::unique_ptr<ScalableVideoController> Create() {
|
||||
return std::make_unique<T>();
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
std::unique_ptr<ScalableVideoController> CreateH() {
|
||||
// 1.5:1 scaling, see https://w3c.github.io/webrtc-svc/#scalabilitymodes*
|
||||
typename T::ScalingFactor factor;
|
||||
factor.num = 2;
|
||||
factor.den = 3;
|
||||
return std::make_unique<T>(factor);
|
||||
}
|
||||
|
||||
constexpr NamedStructureFactory kFactories[] = {
|
||||
{"NONE", Create<ScalableVideoControllerNoLayering>},
|
||||
{"L1T2", Create<ScalabilityStructureL1T2>},
|
||||
{"L1T3", Create<ScalabilityStructureL1T3>},
|
||||
{"L2T1", Create<ScalabilityStructureL2T1>},
|
||||
{"L2T1h", Create<ScalabilityStructureL2T1h>},
|
||||
{"L2T1h", CreateH<ScalabilityStructureL2T1>},
|
||||
{"L2T1_KEY", Create<ScalabilityStructureL2T1Key>},
|
||||
{"L2T2", Create<ScalabilityStructureL2T2>},
|
||||
{"L2T2_KEY", Create<ScalabilityStructureL2T2Key>},
|
||||
|
||||
Reference in New Issue
Block a user