2

여러 스피커를 인식하는 음성 인식 응용 프로그램을 작성하는 데 관심이 있습니다. 예를 들어 Bill, Joe, Jane이 말하고 있다면 응용 프로그램은 소리를 텍스트로 인식 할뿐만 아니라 스피커로 결과를 분류 할 수 있습니다 (0, 1, 2 ...). Google에서 음성 연결 방법이 없기 때문에 사람들).Google 클라우드 음성 : 음성을 구분 하시겠습니까?

Google 음성 해설은이를 수행 할 음성 인식 API를 찾고 있습니다. Google Cloud Speech는 최고 순위의 API로 제공됩니다. 이러한 기능을 사용할 수 있는지 확인하기 위해 API 문서를 살펴 보았습니다.

내 질문은 :이 기능은 존재합니까?

참고 : Google의 지원 페이지에 엔지니어가 때로는 이러한 질문에 답변하는 경우가 있으므로 누군가가 질문의 "의지"부분에 대한 답변을 갖고있는 것 같습니다.

답변

1

나는 이것을 음성 인식 API의 내장 부분으로 사용하는 현재 제공 업체가 없다는 것을 알고 있습니다.

비슷한 내용으로 Microsoft Cognitive Services - Speaker Recognition API을 사용했지만 오디오를 API에 별도로 제공하여 Speech Recognition API을 사용합니다.

두 가지를 결합 할 수 있다면 유용 할 것입니다.

+0

덕분 링크, 나는 그 리드와 함께 뭔가를 알아낼 수 있습니다. 나는 허위 사실을 "당신이 부정적인 것을 증명할 수는 없다"며 여기에 적용하여 누군가가 "실제적인"해결책을 제시하는지 2 일간 기다릴 것입니다. 2 일 후에 "실제"해결책이 게시되지 않으면이를 승인 된 답변으로 표시합니다. –

+0

거짓말했습니다. 나는 5 일 늦었다. 병리학 낙천주의 ... 프로그래머의 우울함 : –

+1

@Paul 고맙습니다. :) 다른 무엇보다 우연히 발견되면 돌아가서 내 대답을 업데이트 할 것입니다. – brandall

4

IMB의 텍스트 음성 서비스는이를 수행합니다. 나머지 서비스를 아주 간단하게 사용한다면 url 매개 변수에서 확인 된 다른 연설자를 추가하기 만하면됩니다. 여기에 대한 문서가이 같은 종류의 작동

(https://console.bluemix.net/docs/services/speech-to-text/output.html#speaker_labels) :

{ 
"results": [ 
    { 
     "alternatives": [ 
     { 
      "timestamps": [ 
      [ 
       "hello", 
       0.68, 
       1.19 
      ], 
      [ 
       "yeah", 
       1.47, 
       1.93 
      ], 
      [ 
       "yeah", 
       1.96, 
       2.12 
      ], 
      [ 
       "how's", 
       2.12, 
       2.59 
      ], 
      [ 
       "Billy", 
       2.59, 
       3.17 
      ], 
      . . . 
      ] 
      "confidence": 0.821, 
      "transcript": "hello yeah yeah how's Billy " 
     } 
     ], 
     "final": true 
    } 
    ], 
    "result_index": 0, 
    "speaker_labels": [ 
    { 
     "from": 0.68, 
     "to": 1.19, 
     "speaker": 2, 
     "confidence": 0.418, 
     "final": false 
    }, 
    { 
     "from": 1.47, 
     "to": 1.93, 
     "speaker": 1, 
     "confidence": 0.521, 
     "final": false 
    }, 
    { 
     "from": 1.96, 
     "to": 2.12, 
     "speaker": 2, 
     "confidence": 0.407, 
     "final": false 
    }, 
    { 
     "from": 2.12, 
     "to": 2.59, 
     "speaker": 2, 
     "confidence": 0.407, 
     "final": false 
    }, 
    { 
     "from": 2.59, 
     "to": 3.17, 
     "speaker": 2, 
     "confidence": 0.407, 
     "final": false 
    }, 
    . . . 
    ] 
} 

는 그들도 있습니다

다음
curl -X POST -u {username}:{password} 
--header "Content-Type: audio/flac" 
--data-binary @{path}audio-multi.flac 
"https://stream.watsonplatform.net/speech-to-text/api/v1/recognize?model=en-US_NarrowbandModel&speaker_labels=true" 

가이 같은 결과와 스피커 라벨과 JSON을 반환합니다 웹 소켓 옵션 및 SDK를 액세스 할 수있는 다양한 플랫폼에 사용할 수 있습니다.

행운

-1

구글은 최근 애플 리케이션의 사용자에 대한 사용자 위치, 이름 및 고유 ID에 액세스 할 수있는 기능을 발표했다. getUserName 메서드 사용하여 사용자의 이름을 가져올 수 https://developers.google.com/actions/reference/nodejs/AssistantApp#getUser

예 :

문서는에서 찾을 수 있습니다

const app = new DialogflowApp({request: req, response: res}); 
const REQUEST_PERMISSION_ACTION = 'request_permission'; 
const SAY_NAME_ACTION = 'get_name'; 

function requestPermission (app) { 
const permission = app.SupportedPermissions.NAME; 
app.askForPermission('To know who you are', permission); 
} 

function sayName (app) { 
    if (app.isPermissionGranted()) { 
    app.tell('Your name is ' + app.getUserName().displayName)); 
    } else { 
    // Response shows that user did not grant permission 
    app.tell('Sorry, I could not get your name.'); 
    } 
} 
const actionMap = new Map(); 
actionMap.set(REQUEST_PERMISSION_ACTION, requestPermission); 
actionMap.set(SAY_NAME_ACTION, sayName); 
app.handleRequest(actionMap); 
+0

그것이 OP가 요구하는 것이 아닙니다. – brendan

관련 문제