75 TInt status(KErrNone); |
75 TInt status(KErrNone); |
76 XAresult res; |
76 XAresult res; |
77 XAAudioEncoderSettings setting; |
77 XAAudioEncoderSettings setting; |
78 TUint value(0); |
78 TUint value(0); |
79 TInt i(0); |
79 TInt i(0); |
|
80 TInt numItems; |
80 |
81 |
81 while(aItem.GetNextInt(value) == KErrNone) |
82 status = aItem.GetNextInt(numItems); |
|
83 |
|
84 while((numItems != 0) && (status == KErrNone)) |
82 { |
85 { |
83 switch(i) |
86 status = aItem.GetNextInt(value); |
|
87 if(!status) |
84 { |
88 { |
85 case 0: |
89 switch(i) |
86 setting.encoderId = value; |
90 { |
87 break; |
91 case 0: |
88 case 1: |
92 setting.encoderId = value; |
89 setting.channelsIn = value; |
93 break; |
90 break; |
94 case 1: |
91 case 2: |
95 setting.channelsIn = value; |
92 setting.channelsOut = value; |
96 break; |
93 break; |
97 case 2: |
94 case 3: |
98 setting.channelsOut = value; |
95 setting.sampleRate = value; |
99 break; |
96 break; |
100 case 3: |
97 case 4: |
101 setting.sampleRate = value; |
98 setting.bitRate = value; |
102 break; |
99 break; |
103 case 4: |
100 case 5: |
104 setting.bitRate = value; |
101 setting.bitsPerSample = value; |
105 break; |
102 break; |
106 case 5: |
103 case 6: |
107 setting.bitsPerSample = value; |
104 setting.rateControl = value; |
108 break; |
105 break; |
109 case 6: |
106 case 7: |
110 setting.rateControl = value; |
107 setting.profileSetting = value; |
111 break; |
108 break; |
112 case 7: |
109 case 8: |
113 setting.profileSetting = value; |
110 setting.levelSetting = value; |
114 break; |
111 break; |
115 case 8: |
112 case 9: |
116 setting.levelSetting = value; |
113 setting.channelMode = value; |
117 break; |
114 break; |
118 case 9: |
115 case 10: |
119 setting.channelMode = value; |
116 setting.streamFormat = value; |
120 break; |
117 break; |
121 case 10: |
118 case 11: |
122 setting.streamFormat = value; |
119 setting.encodeOptions = value; |
123 break; |
120 break; |
124 case 11: |
121 case 12: |
125 setting.encodeOptions = value; |
122 setting.blockAlignment = value; |
126 break; |
123 break; |
127 case 12: |
124 default: |
128 setting.blockAlignment = value; |
125 break; |
129 break; |
|
130 default: |
|
131 break; |
|
132 } |
126 } |
133 } |
127 i++; |
134 i++; |
|
135 numItems--; |
128 } |
136 } |
129 |
137 |
130 if(m_AudEncItf) |
138 if(m_AudEncItf) |
131 { |
139 { |
132 res = (*m_AudEncItf)->SetEncoderSettings( |
140 res = (*m_AudEncItf)->SetEncoderSettings( |