Open sorryusernameisalreadytaken opened 6 years ago
Hi, for bluetooth it will work if the volume controls are accessible via the tinymix program. To check this, you will need shell access on the device, preferably a shell with root permissions. An enumerated list of sound devices available can be found in the /proc/asound directory:
# cd /proc/asound
# ls -d card*
should produce output like this:
card0 card1 cards
It says, there are two cards: 0 and 1. Next, the tinymix command can be used to get more info about available controls:
# tinymix -D 0
or
# tinymix -D 1
Should output some textual description of the audio controls. At least one of the outputs has to have the words playback and volume somewhere. Please post the exact output of the tinymix commands for further introspection. Perhaps, it works with the scripts as they are or just a small fix is needed to get them working.
For HDMI, I don't know if it might work at all since it is a digital output stream internally which doesn't expose any volume controls, afaik.
I hope this helps.
I really want to give you the outputs but I had no tinymix for my FireTV bueller device.
Where can I get it and where should I push it to?
Greetings by sorryusernameisalreadytaken
tinymix is a command which is supposed to be available out of the box on the FireTV. It has to be entered as shell command. A terminal emulator as provided by the SManager app can be used to do this. How this looks like, is shown in its manual here.
To get this working, it is required to root the FireTV as explained here for the FireTV2, for example. It is a lengthy procedure which gives access to the underlying system of the FireTV. Otherwise, the shell commands do not have the necessary (root) privileges to control the volume or even get info about available volume controls.
Are you sure, your FireTV is rooted and you typed tinymix in a terminal emulator shell?
Yes I am sure :)
Here is my adb cmd:
C:\Program Files (x86)\Minimal ADB and Fastboot>adb connect 192.168.0.34
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
connected to 192.168.0.34:5555
C:\Program Files (x86)\Minimal ADB and Fastboot>adb shell
shell@bueller:/ $ su
root@bueller:/ # cd /proc/asound
root@bueller:/proc/asound # ls -d card*
card0
cards
root@bueller:/proc/asound # tinymix
sh: tinymix: not found
root@bueller:/proc/asound # tinymix -D 0
sh: tinymix: not found
Are you sure that FireTV1 bueller has tinymix? I am currently on rbox's preRooted rom 5.2.6.0_r1. If it has not, how difficult is it to compile one for the bueller? I think your FireTV2 ist arm64 based and the buller just arm. So I think your tinymix can not run on my machine.
Greetings by sorryusernameisalreadytaken
Ok, thanks for the terminal output :) I'm not sure if the shell environment you get by ADB or directly on the device (terminal emulator app) is the same (regarding available commands). Assuming it is, we need to check if it really doesn't exist. The following commands would help:
Show which directories are searched for commands:
root@bueller:/ # echo $PATH
Typical paths would be /bin
, /usr/bin
, /sbin
, /usr/sbin
. Perhaps, it is found in any of these?
Otherwise, I need to check my FireTV by tomorrow.
root@bueller:/ # echo $PATH
/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
Just /sbin exits but there is no tinymix in it.
Greetings by sorryusernameisalreadytaken
EDIT:
I do:
ls -Ra | grep tinymix
and found no tinymix :-(
EDIT2:
Got it 👍
I download the the current bueller stock rom: http://www.aftvnews.com/amazon-fire-tv-fire-tv-stick-software-update-history/ update-kindle-bueller-51.5.8.7_user_587444320.bin
Then I extract the bin with winrar/7zip and got the "system.new.dat" and "system.transfer.list" and extract them with an tool from xda. There I found the tinymix excutable in /system/bin.
Just push the tinymix excutable to my bueller and made:
su
mount -o remount,rw /system
mv /data/media/0/tinymix /system/bin/
chmod 4755 /system/bin/tinymix
mount -o remount,ro /system
Now I can give the outputs:
root@bueller:/ # tinymix -D 0
Mixer name: 'bueller-snd-card'
Number of controls: 343
ctl type num name value
0 BOOL 1 Voice Rx Device Mute Off
1 BOOL 1 Voice Tx Mute Off
2 INT 1 Voice Rx Volume 0
3 ENUM 1 TTY Mode OFF
4 BOOL 1 Widevoice Enable Off
5 BOOL 1 Slowtalk Enable Off
6 BOOL 1 FENS Enable Off
7 BOOL 1 VoLTE Rx Device Mute Off
8 BOOL 1 VoLTE Tx Mute Off
9 INT 1 VoLTE Rx Volume 0
10 BOOL 1 Voice2 Rx Device Mute Off
11 BOOL 1 Voice2 Tx Mute Off
12 INT 1 Voice2 Rx Volume 0
13 BOOL 1 Voip Tx Mute Off
14 INT 1 Voip Rx Volume 0
15 INT 2 Voip Mode Rate Config 12 0
16 BOOL 1 Voip Dtx Mode Off
17 BOOL 1 Voice2 Stub Tx Mixer STUB_TX_HL Off
18 BOOL 1 Voice2 Stub Tx Mixer INTERNAL_BT_SCO_TX Off
19 BOOL 1 Voice2 Stub Tx Mixer SLIM_1_TX Off
20 BOOL 1 Voice2 Stub Tx Mixer STUB_1_TX_HL Off
21 BOOL 1 Voice2 Stub Tx Mixer MI2S_TX Off
22 BOOL 1 Voice2 Stub Tx Mixer SLIM_3_TX Off
23 BOOL 1 Voice2 Stub Tx Mixer PRIMARY_I2S_TX Off
24 BOOL 1 Voice2 Stub Tx Mixer AFE_PCM_TX Off
25 BOOL 1 VoLTE Stub Tx Mixer STUB_TX_HL Off
26 BOOL 1 VoLTE Stub Tx Mixer INTERNAL_BT_SCO_TX Off
27 BOOL 1 VoLTE Stub Tx Mixer SLIM_1_TX Off
28 BOOL 1 VoLTE Stub Tx Mixer STUB_1_TX_HL Off
29 BOOL 1 VoLTE Stub Tx Mixer MI2S_TX Off
30 BOOL 1 VoLTE Stub Tx Mixer SLIM_3_TX Off
31 BOOL 1 VoLTE Stub Tx Mixer PRIMARY_I2S_TX Off
32 BOOL 1 VoLTE Stub Tx Mixer AFE_PCM_TX Off
33 BOOL 1 MI2S_RX Port Mixer SLIM_1_TX Off
34 BOOL 1 SLIMBUS_3_RX Port Mixer INTERNAL_BT_SCO_RX Off
35 BOOL 1 SLIMBUS_3_RX Port Mixer MI2S_TX Off
36 BOOL 1 SLIMBUS_3_RX Port Mixer AFE_PCM_RX Off
37 BOOL 1 SEC_I2S_RX Port Mixer MI2S_TX Off
38 BOOL 1 HDMI_RX Port Mixer MI2S_TX Off
39 BOOL 1 HDMI_RX Port Mixer SLIM_3_TX Off
40 BOOL 1 AFE_PCM_RX Port Mixer INTERNAL_FM_TX Off
41 BOOL 1 AFE_PCM_RX Port Mixer SLIM_1_TX Off
42 BOOL 1 INTERNAL_BT_SCO_RX Port Mixer SLIM_1_TX Off
43 BOOL 1 SLIMBUS_1_RX Port Mixer INTERNAL_BT_SCO_TX Off
44 BOOL 1 SLIMBUS_1_RX Port Mixer AFE_PCM_TX Off
45 BOOL 1 AUXPCM_RX Port Mixer AUX_PCM_UL_TX Off
46 BOOL 1 AUXPCM_RX Port Mixer SLIM_0_TX Off
47 BOOL 1 SLIMBUS_0_RX Port Mixer INTERNAL_FM_TX Off
48 BOOL 1 SLIMBUS_0_RX Port Mixer SLIM_0_TX Off
49 BOOL 1 SLIMBUS_0_RX Port Mixer AUX_PCM_UL_TX Off
50 BOOL 1 SLIMBUS_0_RX Port Mixer MI2S_TX Off
51 BOOL 1 SLIMBUS_3_RX_Voice Mixer Voice Stub Off
52 BOOL 1 SLIMBUS_3_RX_Voice Mixer VoLTE Stub Off
53 BOOL 1 SLIMBUS_3_RX_Voice Mixer Voice2 Stub Off
54 BOOL 1 SLIMBUS_1_RX Mixer Voice Stub Off
55 BOOL 1 SLIMBUS_1_RX Mixer VoLTE Stub Off
56 BOOL 1 SLIMBUS_1_RX Mixer Voice2 Stub Off
57 BOOL 1 STUB_RX Mixer Voice Stub Off
58 BOOL 1 STUB_RX Mixer VoLTE Stub Off
59 BOOL 1 STUB_RX Mixer Voice2 Stub Off
60 BOOL 1 Voice Stub Tx Mixer STUB_TX_HL Off
61 BOOL 1 Voice Stub Tx Mixer INTERNAL_BT_SCO_TX Off
62 BOOL 1 Voice Stub Tx Mixer SLIM_1_TX Off
63 BOOL 1 Voice Stub Tx Mixer STUB_1_TX_HL Off
64 BOOL 1 Voice Stub Tx Mixer MI2S_TX Off
65 BOOL 1 Voice Stub Tx Mixer SLIM_3_TX Off
66 BOOL 1 Voice Stub Tx Mixer PRIMARY_I2S_TX Off
67 BOOL 1 Voice Stub Tx Mixer AFE_PCM_TX Off
68 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia1 Off
69 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia2 Off
70 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia3 Off
71 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia4 Off
72 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia5 Off
73 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia7 Off
74 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia8 Off
75 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia9 Off
76 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia10 Off
77 BOOL 1 AFE_PCM_RX Audio Mixer MultiMedia11 Off
78 BOOL 1 INTERNAL_FM_RX Audio Mixer MultiMedia1 Off
79 BOOL 1 INTERNAL_FM_RX Audio Mixer MultiMedia2 Off
80 BOOL 1 INTERNAL_FM_RX Audio Mixer MultiMedia3 Off
81 BOOL 1 INTERNAL_FM_RX Audio Mixer MultiMedia4 Off
82 BOOL 1 INTERNAL_FM_RX Audio Mixer MultiMedia5 Off
83 BOOL 1 INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1 Off
84 BOOL 1 INTERNAL_BT_SCO_RX Audio Mixer MultiMedia2 Off
85 BOOL 1 INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3 Off
86 BOOL 1 INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4 Off
87 BOOL 1 INTERNAL_BT_SCO_RX Audio Mixer MultiMedia5 Off
88 BOOL 1 Voice2_Tx Mixer PRI_TX_Voice2 Off
89 BOOL 1 Voice2_Tx Mixer MI2S_TX_Voice2 Off
90 BOOL 1 Voice2_Tx Mixer SLIM_0_TX_Voice2 Off
91 BOOL 1 Voice2_Tx Mixer INTERNAL_BT_SCO_TX_Voice2 Off
92 BOOL 1 Voice2_Tx Mixer AFE_PCM_TX_Voice2 Off
93 BOOL 1 Voice2_Tx Mixer AUX_PCM_TX_Voice2 Off
94 BOOL 1 Voice2_Tx Mixer SEC_AUX_PCM_TX_Voice2 Off
95 BOOL 1 VoLTE_Tx Mixer PRI_TX_VoLTE Off
96 BOOL 1 VoLTE_Tx Mixer SLIM_0_TX_VoLTE Off
97 BOOL 1 VoLTE_Tx Mixer INTERNAL_BT_SCO_TX_VoLTE Off
98 BOOL 1 VoLTE_Tx Mixer AFE_PCM_TX_VoLTE Off
99 BOOL 1 VoLTE_Tx Mixer AUX_PCM_TX_VoLTE Off
100 BOOL 1 VoLTE_Tx Mixer SEC_AUX_PCM_TX_VoLTE Off
101 BOOL 1 Voip_Tx Mixer PRI_TX_Voip Off
102 BOOL 1 Voip_Tx Mixer MI2S_TX_Voip Off
103 BOOL 1 Voip_Tx Mixer SLIM_0_TX_Voip Off
104 BOOL 1 Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip Off
105 BOOL 1 Voip_Tx Mixer AFE_PCM_TX_Voip Off
106 BOOL 1 Voip_Tx Mixer AUX_PCM_TX_Voip Off
107 BOOL 1 Voip_Tx Mixer SEC_AUX_PCM_TX_Voip Off
108 BOOL 1 Voice_Tx Mixer PRI_TX_Voice Off
109 BOOL 1 Voice_Tx Mixer MI2S_TX_Voice Off
110 BOOL 1 Voice_Tx Mixer SLIM_0_TX_Voice Off
111 BOOL 1 Voice_Tx Mixer INTERNAL_BT_SCO_TX_Voice Off
112 BOOL 1 Voice_Tx Mixer AFE_PCM_TX_Voice Off
113 BOOL 1 Voice_Tx Mixer AUX_PCM_TX_Voice Off
114 BOOL 1 Voice_Tx Mixer SEC_AUX_PCM_TX_Voice Off
115 BOOL 1 MI2S_RX_Voice Mixer Voice Stub Off
116 BOOL 1 MI2S_RX_Voice Mixer VoLTE Stub Off
117 BOOL 1 MI2S_RX_Voice Mixer Voice2 Stub Off
118 BOOL 1 HDMI_RX_Voice Mixer CSVoice Off
119 BOOL 1 HDMI_RX_Voice Mixer Voip Off
120 BOOL 1 HDMI_RX_Voice Mixer VoLTE Off
121 BOOL 1 HDMI_RX_Voice Mixer Voice Stub Off
122 BOOL 1 HDMI_RX_Voice Mixer VoLTE Stub Off
123 BOOL 1 HDMI_RX_Voice Mixer Voice2 Stub Off
124 BOOL 1 HDMI_RX_Voice Mixer Voice2 Off
125 BOOL 1 SEC_AUX_PCM_RX_Voice Mixer CSVoice Off
126 BOOL 1 SEC_AUX_PCM_RX_Voice Mixer Voip Off
127 BOOL 1 SEC_AUX_PCM_RX_Voice Mixer VoLTE Off
128 BOOL 1 SEC_AUX_PCM_RX_Voice Mixer Voice2 Off
129 BOOL 1 AUX_PCM_RX_Voice Mixer CSVoice Off
130 BOOL 1 AUX_PCM_RX_Voice Mixer Voip Off
131 BOOL 1 AUX_PCM_RX_Voice Mixer VoLTE Off
132 BOOL 1 AUX_PCM_RX_Voice Mixer Voice2 Off
133 BOOL 1 AFE_PCM_RX_Voice Mixer CSVoice Off
134 BOOL 1 AFE_PCM_RX_Voice Mixer Voip Off
135 BOOL 1 AFE_PCM_RX_Voice Mixer Voice Stub Off
136 BOOL 1 AFE_PCM_RX_Voice Mixer VoLTE Stub Off
137 BOOL 1 AFE_PCM_RX_Voice Mixer Voice2 Stub Off
138 BOOL 1 AFE_PCM_RX_Voice Mixer VoLTE Off
139 BOOL 1 AFE_PCM_RX_Voice Mixer Voice2 Off
140 BOOL 1 INTERNAL_BT_SCO_RX_Voice Mixer CSVoice Off
141 BOOL 1 INTERNAL_BT_SCO_RX_Voice Mixer Voip Off
142 BOOL 1 INTERNAL_BT_SCO_RX_Voice Mixer Voice Stub Off
143 BOOL 1 INTERNAL_BT_SCO_RX_Voice Mixer VoLTE Stub Off
144 BOOL 1 INTERNAL_BT_SCO_RX_Voice Mixer Voice2 Stub Off
145 BOOL 1 INTERNAL_BT_SCO_RX_Voice Mixer VoLTE Off
146 BOOL 1 INTERNAL_BT_SCO_RX_Voice Mixer Voice2 Off
147 BOOL 1 SLIM_0_RX_Voice Mixer CSVoice Off
148 BOOL 1 SLIM_0_RX_Voice Mixer Voip Off
149 BOOL 1 SLIM_0_RX_Voice Mixer VoLTE Off
150 BOOL 1 SLIM_0_RX_Voice Mixer Voice2 Off
151 BOOL 1 SEC_RX_Voice Mixer CSVoice Off
152 BOOL 1 SEC_RX_Voice Mixer Voip Off
153 BOOL 1 SEC_RX_Voice Mixer VoLTE Off
154 BOOL 1 SEC_RX_Voice Mixer Voice2 Off
155 BOOL 1 PRI_RX_Voice Mixer CSVoice Off
156 BOOL 1 PRI_RX_Voice Mixer Voip Off
157 BOOL 1 PRI_RX_Voice Mixer VoLTE Off
158 BOOL 1 PRI_RX_Voice Mixer Voice2 Off
159 BOOL 1 SLIMBUS_4_RX Audio Mixer MultiMedia1 Off
160 BOOL 1 SLIMBUS_4_RX Audio Mixer MultiMedia2 Off
161 BOOL 1 Incall_Music Audio Mixer MultiMedia1 Off
162 BOOL 1 Incall_Music Audio Mixer MultiMedia2 Off
163 BOOL 1 SEC_AUX_PCM_RX Audio Mixer MultiMedia1 Off
164 BOOL 1 SEC_AUX_PCM_RX Audio Mixer MultiMedia2 Off
165 BOOL 1 AUX_PCM_RX Audio Mixer MultiMedia1 Off
166 BOOL 1 AUX_PCM_RX Audio Mixer MultiMedia2 Off
167 BOOL 1 AUX_PCM_RX Audio Mixer MultiMedia3 Off
168 BOOL 1 AUX_PCM_RX Audio Mixer MultiMedia4 Off
169 BOOL 1 AUX_PCM_RX Audio Mixer MultiMedia5 Off
170 BOOL 1 MultiMedia5 Mixer SLIM_0_TX Off
171 BOOL 1 MultiMedia5 Mixer INTERNAL_FM_TX Off
172 BOOL 1 MultiMedia5 Mixer AFE_PCM_TX Off
173 BOOL 1 MultiMedia5 Mixer INTERNAL_BT_SCO_TX Off
174 BOOL 1 MultiMedia4 Mixer MI2S_TX Off
175 BOOL 1 MultiMedia4 Mixer SLIM_0_TX Off
176 BOOL 1 MultiMedia2 Mixer INTERNAL_FM_TX Off
177 BOOL 1 MultiMedia2 Mixer MI2S_TX Off
178 BOOL 1 MultiMedia1 Mixer PRI_TX Off
179 BOOL 1 MultiMedia1 Mixer MI2S_TX Off
180 BOOL 1 MultiMedia1 Mixer SLIM_0_TX Off
181 BOOL 1 MultiMedia1 Mixer AUX_PCM_UL_TX Off
182 BOOL 1 MultiMedia1 Mixer SEC_AUX_PCM_UL_TX Off
183 BOOL 1 MultiMedia1 Mixer INTERNAL_BT_SCO_TX Off
184 BOOL 1 MultiMedia1 Mixer INTERNAL_FM_TX Off
185 BOOL 1 MultiMedia1 Mixer AFE_PCM_TX Off
186 BOOL 1 MultiMedia1 Mixer VOC_REC_DL Off
187 BOOL 1 MultiMedia1 Mixer VOC_REC_UL Off
188 BOOL 1 MultiMedia1 Mixer SLIM_4_TX Off
189 BOOL 1 MI2S_RX Audio Mixer MultiMedia1 On
190 BOOL 1 MI2S_RX Audio Mixer MultiMedia2 Off
191 BOOL 1 MI2S_RX Audio Mixer MultiMedia3 Off
192 BOOL 1 MI2S_RX Audio Mixer MultiMedia4 Off
193 BOOL 1 MI2S_RX Audio Mixer MultiMedia5 Off
194 BOOL 1 MI2S_RX Audio Mixer MultiMedia6 Off
195 BOOL 1 MI2S_RX Audio Mixer MultiMedia7 Off
196 BOOL 1 MI2S_RX Audio Mixer MultiMedia8 Off
197 BOOL 1 MI2S_RX Audio Mixer MultiMedia9 Off
198 BOOL 1 MI2S_RX Audio Mixer MultiMedia10 Off
199 BOOL 1 MI2S_RX Audio Mixer MultiMedia11 Off
200 BOOL 1 PSEUDO Mixer MultiMedia4 Off
201 BOOL 1 PSEUDO Mixer MultiMedia7 Off
202 BOOL 1 PSEUDO Mixer MultiMedia8 Off
203 BOOL 1 PSEUDO Mixer MultiMedia9 Off
204 BOOL 1 PSEUDO Mixer MultiMedia10 Off
205 BOOL 1 PSEUDO Mixer MultiMedia11 Off
206 BOOL 1 HDMI Mixer MultiMedia1 On
207 BOOL 1 HDMI Mixer MultiMedia2 Off
208 BOOL 1 HDMI Mixer MultiMedia3 Off
209 BOOL 1 HDMI Mixer MultiMedia4 Off
210 BOOL 1 HDMI Mixer MultiMedia5 Off
211 BOOL 1 HDMI Mixer MultiMedia6 Off
212 BOOL 1 HDMI Mixer MultiMedia7 Off
213 BOOL 1 HDMI Mixer MultiMedia8 Off
214 BOOL 1 HDMI Mixer MultiMedia9 Off
215 BOOL 1 HDMI Mixer MultiMedia10 Off
216 BOOL 1 HDMI Mixer MultiMedia11 Off
217 BOOL 1 HDMI Mixer Pseudo Off
218 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia1 Off
219 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia2 Off
220 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia3 Off
221 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia4 Off
222 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia5 Off
223 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia6 Off
224 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia7 Off
225 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia8 Off
226 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia9 Off
227 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia10 Off
228 BOOL 1 SLIMBUS_0_RX Audio Mixer MultiMedia11 Off
229 BOOL 1 SEC_RX Audio Mixer MultiMedia1 Off
230 BOOL 1 SEC_RX Audio Mixer MultiMedia2 Off
231 BOOL 1 SEC_RX Audio Mixer MultiMedia3 Off
232 BOOL 1 SEC_RX Audio Mixer MultiMedia4 Off
233 BOOL 1 SEC_RX Audio Mixer MultiMedia5 Off
234 BOOL 1 SEC_RX Audio Mixer MultiMedia6 Off
235 BOOL 1 SEC_RX Audio Mixer MultiMedia7 Off
236 BOOL 1 SEC_RX Audio Mixer MultiMedia8 Off
237 BOOL 1 SEC_RX Audio Mixer MultiMedia9 Off
238 BOOL 1 SEC_RX Audio Mixer MultiMedia10 Off
239 BOOL 1 SEC_RX Audio Mixer MultiMedia11 Off
240 BOOL 1 SEC_RX Audio Mixer Pseudo Off
241 BOOL 1 PRI_RX Audio Mixer MultiMedia1 Off
242 BOOL 1 PRI_RX Audio Mixer MultiMedia2 Off
243 BOOL 1 PRI_RX Audio Mixer MultiMedia3 Off
244 BOOL 1 PRI_RX Audio Mixer MultiMedia4 Off
245 BOOL 1 PRI_RX Audio Mixer MultiMedia5 Off
246 BOOL 1 PRI_RX Audio Mixer MultiMedia6 Off
247 BOOL 1 PRI_RX Audio Mixer MultiMedia7 Off
248 BOOL 1 PRI_RX Audio Mixer MultiMedia8 Off
249 BOOL 1 PRI_RX Audio Mixer MultiMedia9 Off
250 BOOL 1 PRI_RX Audio Mixer MultiMedia10 Off
251 BOOL 1 PRI_RX Audio Mixer MultiMedia11 Off
252 BOOL 1 PCM_RX_DL_HL Switch Off
253 BOOL 1 SLIMBUS_DL_HL Switch Off
254 INT 1 Internal FM RX Volume 0
255 INT 1 LPA RX Volume 0
256 BOOL 1 MultiMedia1 EQ Enable Off
257 BOOL 1 MultiMedia2 EQ Enable Off
258 BOOL 1 MultiMedia3 EQ Enable Off
259 INT 1 MultiMedia1 EQ Band Count 0
260 INT 1 MultiMedia2 EQ Band Count 0
261 INT 1 MultiMedia3 EQ Band Count 0
262 INT 5 MultiMedia1 EQ Band1 0 0 0 0 0
263 INT 5 MultiMedia1 EQ Band2 0 0 0 0 0
264 INT 5 MultiMedia1 EQ Band3 0 0 0 0 0
265 INT 5 MultiMedia1 EQ Band4 0 0 0 0 0
266 INT 5 MultiMedia1 EQ Band5 0 0 0 0 0
267 INT 5 MultiMedia1 EQ Band6 0 0 0 0 0
268 INT 5 MultiMedia1 EQ Band7 0 0 0 0 0
269 INT 5 MultiMedia1 EQ Band8 0 0 0 0 0
270 INT 5 MultiMedia1 EQ Band9 0 0 0 0 0
271 INT 5 MultiMedia1 EQ Band10 0 0 0 0 0
272 INT 5 MultiMedia1 EQ Band11 0 0 0 0 0
273 INT 5 MultiMedia1 EQ Band12 0 0 0 0 0
274 INT 5 MultiMedia2 EQ Band1 0 0 0 0 0
275 INT 5 MultiMedia2 EQ Band2 0 0 0 0 0
276 INT 5 MultiMedia2 EQ Band3 0 0 0 0 0
277 INT 5 MultiMedia2 EQ Band4 0 0 0 0 0
278 INT 5 MultiMedia2 EQ Band5 0 0 0 0 0
279 INT 5 MultiMedia2 EQ Band6 0 0 0 0 0
280 INT 5 MultiMedia2 EQ Band7 0 0 0 0 0
281 INT 5 MultiMedia2 EQ Band8 0 0 0 0 0
282 INT 5 MultiMedia2 EQ Band9 0 0 0 0 0
283 INT 5 MultiMedia2 EQ Band10 0 0 0 0 0
284 INT 5 MultiMedia2 EQ Band11 0 0 0 0 0
285 INT 5 MultiMedia2 EQ Band12 0 0 0 0 0
286 INT 5 MultiMedia3 EQ Band1 0 0 0 0 0
287 INT 5 MultiMedia3 EQ Band2 0 0 0 0 0
288 INT 5 MultiMedia3 EQ Band3 0 0 0 0 0
289 INT 5 MultiMedia3 EQ Band4 0 0 0 0 0
290 INT 5 MultiMedia3 EQ Band5 0 0 0 0 0
291 INT 5 MultiMedia3 EQ Band6 0 0 0 0 0
292 INT 5 MultiMedia3 EQ Band7 0 0 0 0 0
293 INT 5 MultiMedia3 EQ Band8 0 0 0 0 0
294 INT 5 MultiMedia3 EQ Band9 0 0 0 0 0
295 INT 5 MultiMedia3 EQ Band10 0 0 0 0 0
296 INT 5 MultiMedia3 EQ Band11 0 0 0 0 0
297 INT 5 MultiMedia3 EQ Band12 0 0 0 0 0
298 INT 1 SRS TruMedia 0
299 INT 1 SRS TruMedia HDMI 0
300 INT 1 SRS TruMedia I2S 0
301 INT 1 SRS SS3D 0
302 INT 1 SRS SS3D HDMI 0
303 INT 1 SRS SS3D I2S 0
304 ENUM 1 EC_REF_RX SLIM_RX
305 INT 8 Playback Channel Map 1 2 0 0 0 0 0 0
306 INT 3 Device PP Params 0 0 0
307 ENUM 1 HDMI RX Format LPCM
308 INT 1 HDMI RX CA 0
309 ENUM 1 MI2S RX Format LPCM
310 INT 1 IEC958 DIT4192 Input Status -1
311 INT 1 IEC958 DIT4192 Error Status -1
312 IEC958 1 IEC958 Playback Mask unknown
313 IEC958 1 IEC958 Playback Default unknown
314 IEC958 1 IEC958 Playback PCM Stream unknown
315 BYTE 10 IEC958 Q-subcode Capture Default 00000000000000000000
316 INT 8 Playback Channel Map1 0 0 0 0 0 0 0 0
317 INT 1 Playback Volume1 -1
318 INT 8 Playback Channel Map4 0 0 0 0 0 0 0 0
319 INT 1 Playback Volume4 -1
320 INT 8 Playback Channel Map9 0 0 0 0 0 0 0 0
321 INT 1 Playback Volume9 -1
322 INT 8 Playback Channel Map14 0 0 0 0 0 0 0 0
323 INT 1 Playback Volume14 -1
324 INT 8 Playback Channel Map15 0 0 0 0 0 0 0 0
325 INT 1 Playback Volume15 -1
326 INT 8 Playback Channel Map16 0 0 0 0 0 0 0 0
327 INT 1 Playback Volume16 -1
328 INT 8 Playback Channel Map17 0 0 0 0 0 0 0 0
329 INT 1 Playback Volume17 -1
330 INT 8 Playback Channel Map20 0 0 0 0 0 0 0 0
331 INT 1 Playback Volume20 -1
332 INT 8 Playback Channel Map21 0 0 0 0 0 0 0 0
333 INT 1 Playback Volume21 -1
334 INT 8 Playback Channel Map22 0 0 0 0 0 0 0 0
335 INT 1 Playback Volume22 -1
336 ENUM 1 Speaker Function Off
337 ENUM 1 SLIM_0_RX Channels One
338 ENUM 1 SLIM_0_TX Channels One
339 ENUM 1 HDMI_RX Channels Two
340 ENUM 1 SEC RX Rate Default
341 ENUM 1 HDMI RX Rate Default
342 ENUM 1 MI2S RX Rate Default
and:
root@bueller:/ # tinymix -D 1
Failed to open mixer
Hey, good work that you found it!
Indeed, I've a FireTV2 (fw 5.0.5) and tinymix resides in /system/bin
as well.
I'm surprised by the massive amount of controls you've got for card 0. Mine had just a few with single digit mixer ids (count<10). My volume control script scripts/set_volume.sh
tries to figure out the appropriate mixer control automatically by searching for playback volume controls which support a value range. If we get it working, that script needs to be modified finally to cope with multiple possible volume controls ...
Lets check this manually: It retrieves playback volume controls by calling
tinymix -D 0 | grep -i playback | grep -i volume
To get the mixer control ids only, we need an additional grep call:
tinymix -D 0 | grep -i playback | grep -i volume | grep -o '^[0-9]\+'
That produces a list of mixer ids:
317
319
321
323
325
327
329
331
333
335
Now, the properties of those mixers are of interest. You can get them for all ids with a for loop oneliner:
CARD=0; for MIXERCTRL in $(tinymix -D 0 | grep -i playback | grep -i volume | grep -o '^[0-9]\+'); do CMD="tinymix -D $CARD $MIXERCTRL"; echo "$CMD:"; $CMD; done
I'm interested in that output. My script expects a range definition somewhere (e.g. '1->49').
Just the regex wont work, so I kick it to give you anything:
tinymix -D 0 | grep -i playback | grep -i volume
317 INT 1 Playback Volume1 -1
319 INT 1 Playback Volume4 -1
321 INT 1 Playback Volume9 -1
323 INT 1 Playback Volume14 -1
325 INT 1 Playback Volume15 -1
327 INT 1 Playback Volume16 -1
329 INT 1 Playback Volume17 -1
331 INT 1 Playback Volume20 -1
333 INT 1 Playback Volume21 -1
335 INT 1 Playback Volume22 -1
CARD=0; for MIXERCTRL in $(tinymix -D 0 | grep -i playback | grep -i volume | grep -o '^[0-9]\+'); do CMD="tinymix -D $CARD $MIXERCTRL"; echo "$CMD:"; $CMD; done
tinymix -D 0 317:
Playback Volume1: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume1:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
tinymix -D 0 319:
Playback Volume4: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume4:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
tinymix -D 0 321:
Playback Volume9: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume9:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
tinymix -D 0 323:
Playback Volume14: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume14:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
tinymix -D 0 325:
Playback Volume15: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume15:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
tinymix -D 0 327:
Playback Volume16: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume16:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
tinymix -D 0 329:
Playback Volume17: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume17:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
tinymix -D 0 331:
Playback Volume20: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume20:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
tinymix -D 0 333:
Playback Volume21: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume21:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
tinymix -D 0 335:
Playback Volume22: -1 (range 0->-1)
tinymix -D 0 INT:
Invalid mixer control
tinymix -D 0 1:
Voice Tx Mute: Off
tinymix -D 0 Playback:
Invalid mixer control
tinymix -D 0 Volume22:
Invalid mixer control
tinymix -D 0 -1:
Invalid mixer control
No problem, the last grep seems to fail. Omitting the backslash and adding an -E
should fix it:
tinymix -D 0 | grep -i playback | grep -i volume | grep -oE '^[0-9]+'
However, results like Playback Volume22: -1 (range 0->-1)
don't look promising. Perhaps we need to check other mixer controls as well. I'll have a look on my box ...
It seems, only the USB SoundBar offers tunable volume controls (of type INT with a positive value number, or more). The internal card 0 does not provide this:
# tinymix -D 1
Mixer name: 'Dell AC511 USB SoundBar'
Number of controls: 7
ctl type num name value
0 INT 2 Playback Channel Map 0 0
1 INT 2 Playback Sample Rates 48000 44100
2 INT 2 Capture Sample Rates 48000 44100
3 BOOL 1 Line Capture Switch Off
4 INT 2 Line Capture Volume 51 51
5 BOOL 1 PCM Playback Switch On
6 INT 2 PCM Playback Volume 51 51
Of interest is the latest control 6 which can be used for volume control. The details if that mixer control looks like this:
# tinymix -D 1 6
PCM Playback Volume: 51 51 (range 0->51)
Showing the range, mentioned above.
Therefore, it might work if you add an additional audio sink, i.e. output device, such as bluetooth output you mentioned initially. That might work better.
THX for your reply, ok let us try a bluetooth speaker. It a Anker A7910 without own volume-control. (useless with a FireTV yet :D) I connect it with my bueller device and I hear, very loud, sound.
tinymix -D 0 | grep -i playback | grep -i volume
317 INT 1 Playback Volume1 -1
319 INT 1 Playback Volume4 -1
321 INT 1 Playback Volume9 -1
323 INT 1 Playback Volume14 -1
325 INT 1 Playback Volume15 -1
327 INT 1 Playback Volume16 -1
329 INT 1 Playback Volume17 -1
331 INT 1 Playback Volume20 -1
333 INT 1 Playback Volume21 -1
335 INT 1 Playback Volume22 -1
All ID give me this:
root@bueller:/ # tinymix -D 0 335
Playback Volume22: -1 (range 0->-1)
root@bueller:/ # tinymix -D 0 333
Playback Volume21: -1 (range 0->-1)
root@bueller:/ # tinymix -D 0 331
Playback Volume20: -1 (range 0->-1)
root@bueller:/ # tinymix -D 0 329
Playback Volume17: -1 (range 0->-1)
root@bueller:/ # tinymix -D 0 327
Playback Volume16: -1 (range 0->-1)
root@bueller:/ # tinymix -D 0 325
Playback Volume15: -1 (range 0->-1)
root@bueller:/ # tinymix -D 0 323
Playback Volume14: -1 (range 0->-1)
root@bueller:/ # tinymix -D 0 321
Playback Volume9: -1 (range 0->-1)
root@bueller:/ # tinymix -D 0 319
Playback Volume4: -1 (range 0->-1)
root@bueller:/ # tinymix -D 0 317
Playback Volume1: -1 (range 0->-1)
For HDMI Volume control in future: Is there a potential chance to control this volume, I think many many FireTV users would love this.
Greetings by sorryusernameisalreadytaken
Hi, thanks for the output!
In case of a bluetooth audio device you need to chose another card number (!=0). tinymix -D 0
queries the internal device. After pairing the the bluetooth device, do
# cd /proc/asound
# ls -d card*
And there should be an additional card card1
or card2
. The new one should be related to the bluetooth audio sink, query it by doing tinymix -D 1
or tinymix -D 2
.
I'm aware of the desire to control the native HDMI audio output, but some research has to be done of how to do this on Linux in general, ie. if it is possible at all.
Hey. Did you find any informations about the HDMI audio output?
Hi, Raspberry should be able to set volume of HDMI audio output, so why Fire TV can't?
Hi Stefano,
this depends also on the hardware implementation of the HDMI output, meaning that the chipset has to support it and provide something the common drivers can control. So, two possibilites are at least:
Keeping in mind that the FireTV is meant for running on a TV which always has audio volume control build in, it's understandable to use a simpler hardware without this feature, saving costs perhaps.
While there are many devices which can control HDMI output volume this does not say anything about that specific hardware (which was a FireTV2, non-4k in my case).
best Ingo
Am 22.11.21 um 19:11 schrieb Stefano Di Francesco:
Hi, Raspberry should be able to set volume of HDMI audio output, so why Fire TV can't?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/ibressler/firesound/issues/1#issuecomment-975790756, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAE3YZD4QHPAFYPJHF3UII3UNKBWHANCNFSM4D7QCSYA. Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
Hi Ingo,
ok thanks. I was hoping it was a software limit.
Hey. THX for your nice work!
I had no Dell AC511 SoundBar so I need a way to reduce the output volume of the HDMI audio output and/or bluetooth audio output.
How can I do this?