Since the standard ALSA is not used by default in Android, it uses Tinyalsa, so even command-line-based testing uses LIBTINYALSA. The Android system can be seen in real-time, such as audio channel switching, when the upper-level audio is ever more changeable.
1. CompilingTinyalsaCompanion Tools
$ mmm external/tinyalsa/
After compiling, it will produce Tinyplay/tinymix/tinycap and so on tools.
Tinymix: View Configuration mixer
Tinyplay: Play Audio
Tinycap: Recording
2. View the current system's sound card
[Email protected]:/# cat/proc/asound/cards 0 [RKRK616 ]: rk_rk616-rk_rk616 rk_rk616 1 [rockchipspdif ]: RO Ckchip-spdif-rockchip-spdif
3.tinymixviewing the reverb device
Tinymix Use Method a. do not add any parameters - Show Current configuration status B.tinymix [Ctrl ID] [VAR] do not add [var] can view the [Ctrl ID] Optional Options.
[Email protected]:/# Tinymixnumber of Controls:7ctltypenumname value0enum1playback Path off1enum1capture MIC Path MIC off2enum1voice call path off3enum1voip path off4int2speaker Playback Volume 0 05int2headphone Playback Volume 0 06enum1modem Input Enable on[email protected]:/#
Correspondence Explanation:
English |
Chinese |
Note |
Playback Path |
Audio output Channels |
|
Capture MIC Path |
Audio input Channels |
|
Voice Call Pah |
Call Audio Channel |
The device does not have a call module and cannot be tested |
Voip Pah |
IP Telephony Audio channel |
Scene Gtalk; value has : SPK/HP_NO_MIC/BT |
Speaker Playback Volume |
Speaker volume |
Regardless of the upper volume value |
Headphone Playback Volume |
Headphone volume |
Ditto |
Modem Input Enable |
I don't know what to use. |
Test does not control audio input and output |
|
|
|
Playback Path is:
English |
Chinese |
Note |
OFF |
Shut down |
|
RCV |
- |
|
SPK |
Speaker |
Common |
Hp |
Headset with wheat |
|
Hp_no_mic |
Headset without wheat |
Common |
Bt |
Bluetooth |
|
Spk_hp |
- |
|
Ring_spk |
- |
|
Ring_hp |
- |
|
Ring_hp_no_mic |
- |
|
Ring_spk_hp |
- |
|
Example: Switching the output to the speaker
[Email protected]:/# tinymix 0 SPK
About Tinymix Summary:
Observed by observation, android The system's sound volume is not adjusted directly using the tinyalsa , and is based on the upper-level software implementation, because no matter how the upper volume changes, see here is 24 tinyalsa When playing music through different channels, you can observe the channel switching in real time. See android 3 alsa Here is also confirmed, I used to think android system will permanently occupy the audio device.
When music is played through Bluetooth, it is no longer alsa . tinymix View has to deal with the shutdown state, because the Android4.2 Bluetooth protocol all implemented in the user layer, directly go to the UART channel. Such a design method 1:30 will not understand.
4. UseTinyplayPlaywavMusic
This is just one of the most basic players, so it is not supported to play MP3 , and so on compressed-format music. Did not learn to use before, the Internet is said to be very troublesome, but now it seems no trouble, directly played the 44.1khz/44.8khz wav music.
[Email protected]:/# tinyplay/sdcard/0_16.wav
Note: Before playing, you must first use the tinymix to set the channel, the above has given the example set to the speaker ; Because playback is played at the maximum volume, so be careful to prevent it from being frightened. This will test the audio file upload.
5.tinycapUse
[Email protected]:/# tinycap/sdcard/test.wav
can be recorded.
At present, only meet these, the first summary to this, you can at any time in depth.
Other assumptions that have been confirmed as false:
1. Need to overwrite init.rc so that the system does not start Android-related services (MediaServer)
2. It is necessary to obtain tinyalsa by other means.