1 #pragma once
2 
3 
4 
5 #ifdef __cplusplus
6 
7 #include <memory>
8 
9 namespace com::android::media::editing::flags {
10 
11 class flag_provider_interface {
12 public:
13     virtual ~flag_provider_interface() = default;
14     virtual bool add_media_metrics_editing() = 0;
15     virtual bool muxer_mp4_enable_apv() = 0;
16     virtual bool stagefrightrecorder_enable_b_frames() = 0;
17 };
18 
19 extern std::unique_ptr<flag_provider_interface> provider_;
20 
21 
add_media_metrics_editing()22 inline bool add_media_metrics_editing() {
23     return true;
24 }
muxer_mp4_enable_apv()25 inline bool muxer_mp4_enable_apv() {
26     return false;
27 }
stagefrightrecorder_enable_b_frames()28 inline bool stagefrightrecorder_enable_b_frames() {
29     return true;
30 }
31 
32 }
33 
34 extern "C" {
35 #endif // __cplusplus
36 
37 
38 bool com_android_media_editing_flags_add_media_metrics_editing();
39 bool com_android_media_editing_flags_muxer_mp4_enable_apv();
40 bool com_android_media_editing_flags_stagefrightrecorder_enable_b_frames();
41 
42 #ifdef __cplusplus
43 } // extern "C"
44 #endif
45 
46