└── README.md
/README.md:
--------------------------------------------------------------------------------
1 | # Voice-Prints
2 | Create speaker voiceprints from a few seconds of audio. And, identify individuals in real-time streaming or recorded conversations.
3 |
4 |
Speaker Enrollment API for Identification (REST Api)
5 |
6 | Speaker enrollment api enrolls user for [Speaker Identification Api](https://docs.deepaffects.com/docs/speaker-identification-api.html) and [Realtime Speaker Identification Api](https://docs.deepaffects.com/docs/realtime-speaker-identification-api.html).
7 |
8 | ### POST Request
9 |
10 | `POST https://proxy.api.deepaffects.com/audio/generic/api/v1/sync/diarization/enroll`
11 |
12 | ### Sample Code
13 |
14 | ```shell
15 | curl -X POST "https://proxy.api.deepaffects.com/audio/generic/api/v1/sync/diarization/enroll?apikey=" -H 'content-type: application/json' -d @data.json
16 |
17 | # contents of data.json
18 | {"content": "bytesEncodedAudioString", "sampleRate": 8000, "encoding": "FLAC", "languageCode": "en-US", "speakerId": "user1" }
19 | ```
20 |
21 | ### Output
22 |
23 | ```shell
24 | # Sync:
25 |
26 | {
27 | "message": "Success"
28 | }
29 | ```
30 |
31 | > For every successfull enrollment the response will containe message as "Success".
32 | > Repeat the enrollment with different audios untill the status message changes to
33 | > "Complete". Then proceed with speaker identification
34 |
35 |
36 |
37 | > Enroll a user atleast thrice with 3 different audio, each about 10-12 seconds.
38 | > The more diverse the enrollment audio files, the better the accuracy for identification.
39 |
40 | ### Body Parameters
41 |
42 | | Parameter | Type | Description | Notes |
43 | | ------------ | ------ | ----------------------------------------- | ---------------------------- |
44 | | encoding | String | Encoding of audio file like MP3, WAV etc. | |
45 | | sampleRate | Number | Sample rate of the audio file. | |
46 | | languageCode | String | Language spoken in the audio file. | [default to 'en-US'] |
47 | | content | String | base64 encoding of the audio file. | |
48 | | speakerId | String | speaker id tobe registered | |
49 |
50 | ### Query Parameters
51 |
52 | | Parameter | Type | Description | Notes |
53 | | --------- | ------ | ----------- | ----------------------------------------------- |
54 | | api_key | String | The apikey | Required for authentication inside all requests |
55 |
56 | ### Output Parameters (Sync)
57 |
58 | | Parameter | Type | Description | Notes |
59 | | --------- | ------ | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
60 | | message | String | Status of enrollment Success or Complete | Success: Current enrollment is successfull, Complete: Enrollment is completed, Repeat the enrollments with different audio samples until Complete message is received |
61 |
62 | ### Speaker Enrollment Delete API for Identification (REST Api)
63 |
64 | This API deletes speaker enrollment for the user
65 |
66 | ### POST Request
67 |
68 | `POST https://proxy.api.deepaffects.com/audio/generic/api/v1/sync/diarization/delete`
69 |
70 | ### Sample Code
71 |
72 | ### Shell
73 |
74 | ```shell
75 | curl -X POST "https://proxy.api.deepaffects.com/audio/generic/api/v1/sync/diarization/delete?apikey=" -H 'content-type: application/json' -d @data.json
76 |
77 | # contents of data.json
78 | {"speakerId": "user1"}
79 | ```
80 |
81 | ```shell
82 | # The above command returns output:
83 | {
84 | "message": "Success"
85 | }
86 | ```
87 |
88 | ### Body Parameters
89 |
90 | | Parameter | Type | Description | Notes |
91 | | --------- | ------ | --------------------------- | ----- |
92 | | speakerId | String | speaker id to be registered | |
93 |
94 | ### Query Parameters
95 |
96 | | Parameter | Type | Description | Notes |
97 | | --------- | ------ | ----------- | ----------------------------------------------- |
98 | | api_key | String | The apikey | Required for authentication inside all requests |
99 |
100 | ### Output Parameters (Sync)
101 |
102 | | Parameter | Type | Description | Notes |
103 | | --------- | ------ | -------------- | ------------------ |
104 | | message | String | Request status | Success or Failure |
105 |
106 | ### Get Enrolled Speakers Api
107 |
108 | This API lists all the enrolled speakers enrolled for a developer along with enrollment status
109 |
110 | ### GET Request
111 |
112 | `GET https://proxy.api.deepaffects.com/audio/generic/api/v1/sync/diarization/get_enrolled_speakers`
113 |
114 | ### Sample Code
115 |
116 | ### Shell
117 |
118 | ```shell
119 | curl -X GET "https://proxy.api.deepaffects.com/audio/generic/api/v1/sync/diarization/get_enrolled_speakers?apikey="
120 |
121 | ```shell
122 | # The above command returns output:
123 | {
124 | "developer_id": "testuser",
125 | "enrolled_speaker_ids": [
126 | {
127 | "speaker_id": "speaker_1",
128 | "enrollment_complete" "True"
129 | }
130 | ]
131 | }
132 | ```
133 |
134 | ### Query Parameters
135 |
136 | | Parameter | Type | Description | Notes |
137 | | --------- | ------ | ----------- | ----------------------------------------------- |
138 | | apikey | String | The apikey | Required for authentication inside all requests |
139 |
140 | ## About
141 |
142 | DeepAffects is a speech analysis platform for Developers. We offer a number of speech analysis apis like, Speech Enhancement, Multi-Speaker Diarization, Emotion Recognition, Voice-prints, Conversation Metrics etc. For more information, checkout our [developer portal](https://developers.deepaffects.com)
143 |
--------------------------------------------------------------------------------