AliVCSDK 6.17.0
阿里云音视频SDK,为视频开发者提供一站式接入服务
 
Loading...
Searching...
No Matches
AlivcLiveAudioProfileQualityMode.java
1package com.alivc.live.annotations;
2
3import com.alivc.live.pusher.Visible;
4
5
12@Visible
14
20 LOW(8000, 1, 12),
21
27 BASIC(16000, 1, 24),
28
34 HIGH(48000, 1, 64),
35
41 STEREO_HIGH(48000, 2, 80),
42
48 SUPER_HIGH(48000, 1, 96),
49
55 STEREO_SUPER_HIGH(48000, 2, 128),
56
57 ;
58
59 private final int sampleRate;
60 private final int audioChannel;
61 private final int maxEncodingBitrate;
62
63 AlivcLiveAudioProfileQualityMode(int sampleRate, int audioChannel, int maxEncodingBitrate) {
64 this.sampleRate = sampleRate;
65 this.audioChannel = audioChannel;
66 this.maxEncodingBitrate = maxEncodingBitrate;
67 }
68
74 public int getSampleRate() {
75 return sampleRate;
76 }
77
83 public int getAudioChannel() {
84 return audioChannel;
85 }
86
92 public int getMaxEncodingBitrate() {
93 return maxEncodingBitrate;
94 }
95
103 public static AlivcLiveAudioProfileQualityMode getAudioProfileQualityMode(int sampleRate, int audioChannel, boolean superQuality) {
104 switch (sampleRate) {
105 case 8000:
106 return LOW;
107 case 16000:
108 return BASIC;
109 case 48000:
110 if (superQuality) {
111 return audioChannel == 1 ? SUPER_HIGH : STEREO_SUPER_HIGH;
112 } else {
113 return audioChannel == 1 ? HIGH : STEREO_HIGH;
114 }
115 default:
116 return null;
117 }
118 }
119}
static AlivcLiveAudioProfileQualityMode getAudioProfileQualityMode(int sampleRate, int audioChannel, boolean superQuality)