AliVCSDK  6.0.0
阿里云音视频SDK,为视频开发者提供一站式接入服务
AlivcResolutionEnum.java
1 package com.alivc.live.pusher;
2 
11 @Visible
12 public enum AlivcResolutionEnum {
17 
22 
27 
32 
37 
42 
47 
52 
59 
60  public void setSelfDefineResolution(int width, int height) {
61  if(this.equals(RESOLUTION_SELF_DEFINE)) {
62  mSelfDefineWidth = width;
63  if(mSelfDefineWidth%16 != 0)
64  {
65  mSelfDefineWidth = (mSelfDefineWidth/16 + 1)*16;
66  }
67  mSelfDefineHeight = height;
68  if(mSelfDefineHeight%16 != 0)
69  {
70  mSelfDefineHeight = (mSelfDefineHeight/16 + 1)*16;
71  }
72  }
73  }
74 
75  public static int GetResolutionWidth(AlivcResolutionEnum definitionEnum) {
76  if(definitionEnum.equals(RESOLUTION_180P)) {
77  return 192;
78  } else if(definitionEnum.equals(RESOLUTION_240P)) {
79  return 240;
80  } else if(definitionEnum.equals(RESOLUTION_360P)){
81  return 368;
82  } else if(definitionEnum.equals(RESOLUTION_480P)) {
83  return 480;
84  } else if(definitionEnum.equals(RESOLUTION_540P)) {
85  return 544;
86  } else if(definitionEnum.equals(RESOLUTION_720P)) {
87  return 720;
88  } else if(definitionEnum.equals(RESOLUTION_1080P)) {
89  return 1088;
90  } else if(definitionEnum.equals(RESOLUTION_SELF_DEFINE)) {
91  return definitionEnum.mSelfDefineWidth;
92  }
93  return 192;
94  }
95  public static int GetResolutionHeight(AlivcResolutionEnum definitionEnum) {
96  if(definitionEnum.equals(RESOLUTION_180P)) {
97  return 320;
98  } else if(definitionEnum.equals(RESOLUTION_240P)) {
99  return 320;
100  } else if(definitionEnum.equals(RESOLUTION_360P)){
101  return 640;
102  } else if(definitionEnum.equals(RESOLUTION_480P)) {
103  return 640;
104  } else if(definitionEnum.equals(RESOLUTION_540P)) {
105  return 960;
106  } else if(definitionEnum.equals(RESOLUTION_720P)) {
107  return 1280;
108  } else if(definitionEnum.equals(RESOLUTION_1080P)) {
109  return 1920;
110  } else if(definitionEnum.equals(RESOLUTION_SELF_DEFINE)) {
111  return definitionEnum.mSelfDefineHeight;
112  }
113  return 320;
114  }
115 
116  public static int getInitBitrate(AlivcResolutionEnum definitionEnum) {
117  if(definitionEnum.equals(RESOLUTION_180P)) {
118  return AlivcLivePushConstants.BITRATE_180P.DEFAULT_VALUE_INT_INIT_BITRATE.getBitrate();
119  } else if(definitionEnum.equals(RESOLUTION_240P)) {
120  return AlivcLivePushConstants.BITRATE_240P.DEFAULT_VALUE_INT_INIT_BITRATE.getBitrate();
121  } else if(definitionEnum.equals(RESOLUTION_360P)){
122  return AlivcLivePushConstants.BITRATE_360P.DEFAULT_VALUE_INT_INIT_BITRATE.getBitrate();
123  } else if(definitionEnum.equals(RESOLUTION_480P)) {
124  return AlivcLivePushConstants.BITRATE_480P.DEFAULT_VALUE_INT_INIT_BITRATE.getBitrate();
125  } else if(definitionEnum.equals(RESOLUTION_540P)) {
126  return AlivcLivePushConstants.BITRATE_540P.DEFAULT_VALUE_INT_INIT_BITRATE.getBitrate();
127  } else if(definitionEnum.equals(RESOLUTION_720P)) {
128  return AlivcLivePushConstants.BITRATE_720P.DEFAULT_VALUE_INT_INIT_BITRATE.getBitrate();
129  } else if(definitionEnum.equals(RESOLUTION_1080P)) {
130  return AlivcLivePushConstants.BITRATE_1080P.DEFAULT_VALUE_INT_INIT_BITRATE.getBitrate();
131  }
132  return AlivcLivePushConstants.BITRATE_540P.DEFAULT_VALUE_INT_INIT_BITRATE.getBitrate();
133  }
134 
135  public static int getTargetBitrate(AlivcResolutionEnum definitionEnum) {
136  if(definitionEnum.equals(RESOLUTION_180P)) {
137  return AlivcLivePushConstants.BITRATE_180P.DEFAULT_VALUE_INT_TARGET_BITRATE.getBitrate();
138  } else if(definitionEnum.equals(RESOLUTION_240P)) {
139  return AlivcLivePushConstants.BITRATE_240P.DEFAULT_VALUE_INT_TARGET_BITRATE.getBitrate();
140  } else if(definitionEnum.equals(RESOLUTION_360P)){
141  return AlivcLivePushConstants.BITRATE_360P.DEFAULT_VALUE_INT_TARGET_BITRATE.getBitrate();
142  } else if(definitionEnum.equals(RESOLUTION_480P)) {
143  return AlivcLivePushConstants.BITRATE_480P.DEFAULT_VALUE_INT_TARGET_BITRATE.getBitrate();
144  } else if(definitionEnum.equals(RESOLUTION_540P)) {
145  return AlivcLivePushConstants.BITRATE_540P.DEFAULT_VALUE_INT_TARGET_BITRATE.getBitrate();
146  } else if(definitionEnum.equals(RESOLUTION_720P)) {
147  return AlivcLivePushConstants.BITRATE_720P.DEFAULT_VALUE_INT_TARGET_BITRATE.getBitrate();
148  } else if(definitionEnum.equals(RESOLUTION_1080P)) {
149  return AlivcLivePushConstants.BITRATE_1080P.DEFAULT_VALUE_INT_TARGET_BITRATE.getBitrate();
150  }
151  return AlivcLivePushConstants.BITRATE_540P.DEFAULT_VALUE_INT_TARGET_BITRATE.getBitrate();
152  }
153 
154  public static int getMinBitrate(AlivcResolutionEnum definitionEnum) {
155  if(definitionEnum.equals(RESOLUTION_180P)) {
156  return AlivcLivePushConstants.BITRATE_180P.DEFAULT_VALUE_INT_MIN_BITRATE.getBitrate();
157  } else if(definitionEnum.equals(RESOLUTION_240P)) {
158  return AlivcLivePushConstants.BITRATE_240P.DEFAULT_VALUE_INT_MIN_BITRATE.getBitrate();
159  } else if(definitionEnum.equals(RESOLUTION_360P)){
160  return AlivcLivePushConstants.BITRATE_360P.DEFAULT_VALUE_INT_MIN_BITRATE.getBitrate();
161  } else if(definitionEnum.equals(RESOLUTION_480P)) {
162  return AlivcLivePushConstants.BITRATE_480P.DEFAULT_VALUE_INT_MIN_BITRATE.getBitrate();
163  } else if(definitionEnum.equals(RESOLUTION_540P)) {
164  return AlivcLivePushConstants.BITRATE_540P.DEFAULT_VALUE_INT_MIN_BITRATE.getBitrate();
165  } else if(definitionEnum.equals(RESOLUTION_720P)) {
166  return AlivcLivePushConstants.BITRATE_720P.DEFAULT_VALUE_INT_MIN_BITRATE.getBitrate();
167  } else if(definitionEnum.equals((RESOLUTION_1080P))) {
168  return AlivcLivePushConstants.BITRATE_1080P.DEFAULT_VALUE_INT_MIN_BITRATE.getBitrate();
169  }
170  return AlivcLivePushConstants.BITRATE_540P.DEFAULT_VALUE_INT_MIN_BITRATE.getBitrate();
171  }
172 
173  public static int getInteractiveInitBitrate(AlivcResolutionEnum definitionEnum) {
174  if(definitionEnum.equals(RESOLUTION_180P)) {
175  return AlivcLivePushConstants.BITRATE_180P.INTERACTIVE_VALUE_INT_INIT_BITRATE.getBitrate();
176  } else if(definitionEnum.equals(RESOLUTION_240P)) {
177  return AlivcLivePushConstants.BITRATE_240P.INTERACTIVE_VALUE_INT_INIT_BITRATE.getBitrate();
178  } else if(definitionEnum.equals(RESOLUTION_360P)){
179  return AlivcLivePushConstants.BITRATE_360P.INTERACTIVE_VALUE_INT_INIT_BITRATE.getBitrate();
180  } else if(definitionEnum.equals(RESOLUTION_480P)) {
181  return AlivcLivePushConstants.BITRATE_480P.INTERACTIVE_VALUE_INT_INIT_BITRATE.getBitrate();
182  } else if(definitionEnum.equals(RESOLUTION_540P)) {
183  return AlivcLivePushConstants.BITRATE_540P.INTERACTIVE_VALUE_INT_INIT_BITRATE.getBitrate();
184  } else if(definitionEnum.equals(RESOLUTION_720P)) {
185  return AlivcLivePushConstants.BITRATE_720P.INTERACTIVE_VALUE_INT_INIT_BITRATE.getBitrate();
186  } else if(definitionEnum.equals(RESOLUTION_1080P)) {
187  return AlivcLivePushConstants.BITRATE_1080P.INTERACTIVE_VALUE_INT_INIT_BITRATE.getBitrate();
188  }
189  return AlivcLivePushConstants.BITRATE_540P.INTERACTIVE_VALUE_INT_INIT_BITRATE.getBitrate();
190  }
191 
192  public static int getInteractiveTargetBitrate(AlivcResolutionEnum definitionEnum) {
193  if(definitionEnum.equals(RESOLUTION_180P)) {
194  return AlivcLivePushConstants.BITRATE_180P.INTERACTIVE_VALUE_INT_TARGET_BITRATE.getBitrate();
195  } else if(definitionEnum.equals(RESOLUTION_240P)) {
196  return AlivcLivePushConstants.BITRATE_240P.INTERACTIVE_VALUE_INT_TARGET_BITRATE.getBitrate();
197  } else if(definitionEnum.equals(RESOLUTION_360P)){
198  return AlivcLivePushConstants.BITRATE_360P.INTERACTIVE_VALUE_INT_TARGET_BITRATE.getBitrate();
199  } else if(definitionEnum.equals(RESOLUTION_480P)) {
200  return AlivcLivePushConstants.BITRATE_480P.INTERACTIVE_VALUE_INT_TARGET_BITRATE.getBitrate();
201  } else if(definitionEnum.equals(RESOLUTION_540P)) {
202  return AlivcLivePushConstants.BITRATE_540P.INTERACTIVE_VALUE_INT_TARGET_BITRATE.getBitrate();
203  } else if(definitionEnum.equals(RESOLUTION_720P)) {
204  return AlivcLivePushConstants.BITRATE_720P.INTERACTIVE_VALUE_INT_TARGET_BITRATE.getBitrate();
205  } else if(definitionEnum.equals(RESOLUTION_1080P)) {
206  return AlivcLivePushConstants.BITRATE_1080P.INTERACTIVE_VALUE_INT_TARGET_BITRATE.getBitrate();
207  }
208  return AlivcLivePushConstants.BITRATE_540P.INTERACTIVE_VALUE_INT_TARGET_BITRATE.getBitrate();
209  }
210 
211  public static int getInteractiveMinBitrate(AlivcResolutionEnum definitionEnum) {
212  if(definitionEnum.equals(RESOLUTION_180P)) {
213  return AlivcLivePushConstants.BITRATE_180P.INTERACTIVE_VALUE_INT_MIN_BITRATE.getBitrate();
214  } else if(definitionEnum.equals(RESOLUTION_240P)) {
215  return AlivcLivePushConstants.BITRATE_240P.INTERACTIVE_VALUE_INT_MIN_BITRATE.getBitrate();
216  } else if(definitionEnum.equals(RESOLUTION_360P)){
217  return AlivcLivePushConstants.BITRATE_360P.INTERACTIVE_VALUE_INT_MIN_BITRATE.getBitrate();
218  } else if(definitionEnum.equals(RESOLUTION_480P)) {
219  return AlivcLivePushConstants.BITRATE_480P.INTERACTIVE_VALUE_INT_MIN_BITRATE.getBitrate();
220  } else if(definitionEnum.equals(RESOLUTION_540P)) {
221  return AlivcLivePushConstants.BITRATE_540P.INTERACTIVE_VALUE_INT_MIN_BITRATE.getBitrate();
222  } else if(definitionEnum.equals(RESOLUTION_720P)) {
223  return AlivcLivePushConstants.BITRATE_720P.INTERACTIVE_VALUE_INT_MIN_BITRATE.getBitrate();
224  } else if(definitionEnum.equals((RESOLUTION_1080P))) {
225  return AlivcLivePushConstants.BITRATE_1080P.INTERACTIVE_VALUE_INT_MIN_BITRATE.getBitrate();
226  }
227  return AlivcLivePushConstants.BITRATE_540P.INTERACTIVE_VALUE_INT_MIN_BITRATE.getBitrate();
228  }
229 
230  private int mSelfDefineWidth;
231  private int mSelfDefineHeight;
232 }