1 <html devsite> 2 <head> 3 <title>Headset Expected Behavior</title> 4 <meta name="project_path" value="/_project.yaml" /> 5 <meta name="book_path" value="/_book.yaml" /> 6 </head> 7 <body> 8 <!-- 9 Copyright 2017 The Android Open Source Project 10 11 Licensed under the Apache License, Version 2.0 (the "License"); 12 you may not use this file except in compliance with the License. 13 You may obtain a copy of the License at 14 15 http://www.apache.org/licenses/LICENSE-2.0 16 17 Unless required by applicable law or agreed to in writing, software 18 distributed under the License is distributed on an "AS IS" BASIS, 19 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 20 See the License for the specific language governing permissions and 21 limitations under the License. 22 --> 23 24 25 26 <p> 27 This article details the functional requirements for 28 <a href="plug-headset-spec.html">3.5 mm plug</a> and 29 <a href="usb-headset-spec.html">USB</a> headsets.</p> 30 <p> 31 When verifying the behaviors of the device and the audio headset, note these 32 requirements:</p> 33 <ul> 34 <li>only apply when no other audio accessories (e.g. Bluetooth) are 35 available</li> 36 <li>cover the default behavior for devices and do not apply to applications 37 that use audio routing APIs to select which audio peripheral to use</li> 38 </ul> 39 40 <h2 id=media>Media</h2> 41 42 <p>If a user connects a headset to the device while playing media, the audio 43 output (sound) should be heard only via the headset.</p> 44 45 <p>For example, while playing media with the <a 46 href="https://github.com/googlesamples/android-UniversalMusicPlayer">open 47 source</a> <a 48 href="https://android-developers.blogspot.com/2015/03/a-new-reference-app-for-multi-device.html">Universal 49 Music Player</a>, pressing the play/pause button should pause playback. 50 Pressing the same button when media is paused should resume playback.</p> 51 52 <p>If the headset has volume control buttons: </p> 53 54 <ul> 55 <li> Pressing the volume-up button should increase the volume incrementally each 56 time the button is pressed until maximum volume is reached. If the volume-up 57 button is pressed and held, the volume should gradually increase to maximum 58 volume setting. 59 <li> Pressing the volume-down button should decrease the volume incrementally each 60 time the button is pressed until entirely muted. If the volume-down button is 61 pressed and held, the volume should gradually decrease to silent. 62 <li> Pressing the volume-up button when in a muted state should increase the volume 63 one notch at a time starting from silent. 64 </ul> 65 66 <p><strong>Recommended for Apps</strong>: On disconnecting the headset, sound output should stop and playback should 67 pause. On reconnecting, playback should not start again unless the user presses 68 the play button. Upon pressing play, sound output should again be limited to 69 the headset.</p> 70 71 <h3 id=one_button>One button</h3> 72 73 <img src="images/media_one.png" alt="Button functions for one-button headsets handling a media stream."> 74 </span> 75 76 <p class="img-caption"><strong>Figure 1.</strong> Button functions for one-button headsets handling a media stream.</p> 77 78 <h3 id=two_buttons>Two buttons</h3> 79 80 <img src="images/media_two.png" alt="Button functions for two-button headsets handling a media stream."> 81 82 <p class="img-caption"><strong>Figure 2.</strong> Button functions for two-button headsets handling a media stream.</p> 83 84 <h3 id=three_buttons>Three buttons</h3> 85 86 <img src="images/media_three.png" alt="Button functions for three-button headsets handling a media stream."> 87 88 <p class="img-caption"><strong>Figure 3.</strong> Button functions for three-button headsets handling a media stream.</p> 89 90 <h3 id=four_buttons>Four buttons</h3> 91 92 <img src="images/media_four.png" alt="Button functions for four-button headsets handling a media stream."> 93 94 <p class="img-caption"><strong>Figure 4.</strong> Button functions for four-button headsets handling a media stream.</p> 95 96 <h2 id=telephony>Telephony</h2> 97 98 99 <p>If a user connects a headset to the device while a call is in progress, the 100 conversation should continue on the headset. The call should not get 101 disconnected, and the microphone should not be muted. If present, volume 102 buttons should behave identically to media playback.</p> 103 104 <p class="note"><strong>Note</strong>: The actions to mute and hang up a phone 105 call may differ across Android devices. This documents the most common behavior; 106 but for some devices, a short press on the headset mutes the call, and a long 107 press hangs up.</p> 108 109 <h3 id=one_button>One button</h3> 110 111 <img src="images/telephony_one.png" alt="Button functions for one-button headsets handling a phone call."> 112 113 <p class="img-caption"><strong>Figure 5.</strong> Button functions for one-button headsets handling a phone call. </p> 114 115 <h3 id=two_buttons>Two buttons</h3> 116 117 <img src="images/telephony_two.png" alt="Button functions for two-button headsets handling a phone call."> 118 119 <p class="img-caption"><strong>Figure 6.</strong> Button functions for two-button headsets handling a phone call. </p> 120 121 <h3 id=three_buttons>Three buttons</h3> 122 123 <img src="images/telephony_three.png" alt="Button functions for three-button headsets handling a phone call."> 124 125 <p class="img-caption"><strong>Figure 7.</strong> Button functions for three-button headsets handling a phone call. </p> 126 127 <h3 id=four_buttons>Four buttons</h3> 128 129 <img src="images/telephony_four.png" alt="Button functions for four-button headsets handling a phone call."> 130 <p class="img-caption"><strong>Figure 8.</strong> Button functions for four-button headsets handling a phone call. </p> 131 132 <h2 id=voice_command>Voice commands</h2> 133 134 <p>The voice command button is a new inline control standard for consistently 135 and conveniently accessing a voice command feature from any approved wearable 136 audio device. By pressing the button defined here, users will hear the two-tone 137 signature <a href="http://en.wikipedia.org/wiki/Earcon">earcon</a> indicating 138 that the device is listening and ready to receive the query.</p> 139 140 <p>Whether embedded into a multi-function button or highlighted as a single 141 button, it should always be quickly accessible, ergonomically correct, and 142 placed intuitively as described in the following section.</p> 143 144 <h2 id=buttons_and_function_mapping>Buttons and function mapping recommendations</h2> 145 146 <p>The following diagrams depict the acceptable configuration of the Android voice 147 command button.</p> 148 149 <h3 id=options>Options</h3> 150 151 <img src="images/button_configuration.png" alt="Button configuration options."> 152 153 <p class="img-caption"><strong>Figure 9.</strong> Button configuration options. </p> 154 155 <p>Buttons should always be front facing and spaced out so they can be easily 156 located by touch only.</p> 157 158 <h3 id=spacing>Spacing</h3> 159 160 <p>Buttons must be more than 5 mm and must have at least 5 mm distance between 161 buttons. For four-button headsets, there must be at least 9 mm of space between 162 button D and the cluster of other buttons. </p> 163 164 <img src="images/button_spacing.png" alt="Button spacing requirements"> 165 166 <p class="img-caption"><strong>Figure 10.</strong> Button spacing requirements.</p> 167 168 <h3 id=icon>Icon</h3> 169 170 <p>In the following diagram, A is unlabeled or labeled with a dot. B is labeled 171 with a + or an arrow pointing up. C is labeled with a - or an arrow pointing 172 down. D is labeled with the selected button icon.</p> 173 174 <img src="images/button_icons.png" alt="Button icon requirements"> 175 <p class="img-caption"><strong>Figure 11.</strong> Button icon requirements. </p> 176 177 <h3 id=sizing>Sizing</h3> 178 179 <p>The following diagram shows the ratio of button icon to the space around it.</p> 180 181 <img src="images/icon_sizing.png" alt="Voice search button icon sizing requirements"> 182 183 <p class="img-caption"><strong>Figure 12.</strong> Voice search button icon sizing requirements. </p> 184 185 <h3 id=microphone_port>Microphone port</h3> 186 187 <p>The microphone should never be obstructed when operating the buttons. Place the 188 port away from finger interface area.</p> 189 190 <img src="images/microphone.png" alt="Microphone placement"> 191 192 <p class="img-caption"><strong>Figure 13.</strong> Microphone placement. </p> 193 194 </body> 195 </html> 196