You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/cognitive-services/Speech-Service/windows-voice-assistants-automatic-enablement-guidelines.md
-2Lines changed: 0 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,8 +14,6 @@ ms.author: travisw
14
14
15
15
# Privacy guidelines for voice assistants on Windows
16
16
17
-
## About voice activation privacy
18
-
19
17
It's important that users are given clear information about how their voice data is collected and used and important that they are given control over if and how this collection happens. These core facets of privacy -- *disclosure* and *consent* -- are especially important for voice assistants integrated into Windows given the always-listening nature of their use.
20
18
21
19
Developers creating voice assistants on Windows must include clear user interface elements within their applications that reflect the listening capabilities of the assistant.
Copy file name to clipboardExpand all lines: articles/cognitive-services/Speech-Service/windows-voice-assistants-overview.md
+7-15Lines changed: 7 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,35 +27,27 @@ After voice activation, Windows will manage multiple active agents properly and
27
27
28
28
## How does voice activation work?
29
29
30
-
### Agent Activation Runtime
31
-
32
30
The Agent Activation Runtime (AAR) is the ongoing process in Windows that manages application activation on a spoken keyword or button press. It starts with Windows as long as there is at least one application on the system that is registered with the system. Applications interact with AAR through the ConversationalAgent APIs in the Windows SDK.
33
31
32
+
When the user speaks a keyword, the software or hardware keyword spotter on the system notifies AAR that a keyword has been detected, providing a keyword ID. AAR in turn sends a request to BackgroundService to start the application with the corresponding application ID.
33
+
34
34
### Registration
35
35
36
36
The first time a voice activated application is run, it registers its app id and keyword information through the ConversationalAgent APIs. AAR registers all configurations in the global mapping with the hardware or software keyword spotter on the system, allowing them to detect the application's keyword. The application also [registers with the Background Service](https://docs.microsoft.com/windows/uwp/launch-resume/register-a-background-task).
37
37
38
38
Note that this means an application cannot be activated by voice until it has been run once and registration has been allowed to complete.
39
39
40
-
### Activation
41
-
42
-
When the user speaks a keyword, the software or hardware keyword spotter on the system notifies AAR that a keyword has been detected, providing a keyword ID. AAR in turn sends a request to BackgroundService to start the application with the corresponding application ID.
43
-
44
40
### Receiving an activation
45
41
46
-
Upon receiving the request from AAR, the Background Service launches the application. The application receives a signal through the OnBackgroundActivated life cycle method in `App.xaml.cs` with a unique event argument. This tells the application that it was activated by AAR and should act accordingly.
42
+
Upon receiving the request from AAR, the Background Service launches the application. The application receives a signal through the OnBackgroundActivated life cycle method in `App.xaml.cs` with a unique event argument. This tells the application that it was activated by AAR and should start keyword verification.
47
43
48
-
### Keyword verification
49
-
50
-
The keyword spotter that triggered the application to start has achieved low power consumption by simplifying the keyword model. This allows the keyword spotter to be "always on" without a high power impact, but it also means the keyword spotter will likely have a high number of "false accepts" where it detects a keyword even though no keyword was spoken. This is why the voice activation system launches the application in the background: to give the application a chance to verify that the keyword was spoken before interrupting the user's current session. AAR saves the audio since a few seconds before the keyword was spotted and makes it accessible to the application. The application can use this to run a more reliable keyword spotter on the same audio.
51
-
52
-
### Foreground Activation
44
+
If the application successfully verifies the keyword, it can make a request to be shown in the foreground. When this request succeeds, the application displays UI and continue its interaction with the user.
53
45
54
-
If the application successfully verifies the keyword, it can make a request to be shown in the foreground and display UI.
46
+
AAR still signals active applications when their keyword is spoken. Rather than signalling through the life cycle method in `App.xaml.cs`, though, it signals through an event in the ConversationalAgent APIs.
55
47
56
-
### Voice activation while app is active
48
+
### Keyword verification
57
49
58
-
AAR still signals active applications when their keyword is spoken. Rather than signalling through the life cycle method in `App.xaml.cs`, though, it signals through an event in the ConversationalAgent APIs.
50
+
The keyword spotter that triggers the application to start has achieved low power consumption by simplifying the keyword model. This allows the keyword spotter to be "always on" without a high power impact, but it also means the keyword spotter will likely have a high number of "false accepts" where it detects a keyword even though no keyword was spoken. This is why the voice activation system launches the application in the background: to give the application a chance to verify that the keyword was spoken before interrupting the user's current session. AAR saves the audio since a few seconds before the keyword was spotted and makes it accessible to the application. The application can use this to run a more reliable keyword spotter on the same audio.
0 commit comments