Docomo AI 프록시 API를 사용하여 역할 대화

9209 단어 docomoAPIUnityVtuber
이 보도는 21일째 보도입니다.

입문

  • 음성인식과 음성합성 기능을 가진docomo AI 에이전트 서비스를 사용하여 가상 이미지와 대화할 수 있음
  • 서비스 이용에 구글 또는 d계정 필요
  • 이번에 여기 강연자료를 참고해서 만들었어요.
    XR Kaigi 강연 슬라이드!!<아무도 음성 대화 엔진을 사용하지 않은 가상 역할과 그 미래>VTuber Tech #1 Advent Calendar 2019#XRKaigi-AI 세바스(@Sebasai)

  • 설치하다


    강연에서도 말했듯이 사이트의 가이드라인은 이해하기 어렵다

    유니티 측의 준비.


    Unity Package 획득


    아래 URL에서 Unity용 SDK
    다운로드
    https://t.co/ilYDlldAvA

    December 6, 2019


    ZIP 확장sebastien_1.21.1.unitypackage Unity 가져오기
    그런 다음 구축 설정에서 설정loginmain 장면
    https://docs.sebastien.ai/step4/


    login 장면을 실행할 때 오류가 없으면 먼저 설정할 수 있습니다.


    오류가 발생하면 Player Setting->Scripting Runtime 버전을 확인하십시오.

    3.5로 바뀌면 컴파일 오류가 발생할 것 같습니다.



    만약 여기까지 할 수 있다면, 유니티 측의 준비는 완성될 것이다

    서버 준비


    Agentcraft 웹 사이트 로그인




    로그인하면 이런 화면이 나타납니다

    https://agentcraft.sebastien.ai/


    설정->장치 ID를 추가할 때 표시됩니다デバイスID. 복사하십시오.


    그리고 SEBASTIEN의 UDS(User Dashboard)에 로그인합니다




    왼쪽 상단의 + 단추를 누르십시오

    https://users-v2.sebastien.ai/login/login


    방금 복사한 것デバイスID을 붙여넣고 등록합니다.


    서비스 측의 준비는 이것으로 끝난다

    실행해 보다


    Unity, login 장면 실행

    Inputfield에 デバイスID 를 입력하고 Device Token取得
    키를 누릅니다.


    순조롭게 로그인할 수 있다면 아래 화면으로 바뀔 것이다


    기본 상태에서 "안녕하세요"를 누르면 이름이 들립니다

    '이름이 ○○'하면 그 이름을 인식해서 돌려줄 거예요.


    아바타에게 립싱크를 시키다


    • 아바타는 유니티
    • 입술 수조에 Oculus Lipsync
    • 사용
    • 의 리소스당

    https://unity-chan.com/download/index.php


    원래

    를 사용할 계획이었으나 Oculus Lipsync에서 사용할 수 없음...

    소리를 출력하는 Speak 클래스가 OnAudioFilterRead 구성 요소에 추가되면 동작할 수 없는 것 같다.

    어쩔 수 없어서 AudioListener 에서 소리의 음량을 분석하여 립싱크 대본을 만들었어요.

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using System.Linq;
    
    public class LipSync : MonoBehaviour 
    {
        //ブレンドメッシュを持つSkinnedMeshRendererを設定
        public SkinnedMeshRenderer _skinnedMeshRenderer;
    
        //口パクに使うブレンドメッシュのIndex
        public int _index;
    
        //ゲイン
        public float _gain = 1000f;
    
        float[] _waveData = new float[1024];
    
    
        // Update is called once per frame
        void Update () 
        {
            //AudioListenerから音声データを取得
            AudioListener.GetOutputData(_waveData,1);
    
            //平均値にゲインをかけてブレンドメッシュを変化させる
            _skinnedMeshRenderer.SetBlendShapeWeight(_index, _waveData.Average() * _gain);
        }
    }
    
    

    모든 GameObject에 첨부

    그리고 Skinned MessRender에서 혼합 변형이 있는 Skinned MessRender를 설정합니다.

    색인에서 가짜 구멍의 혼합 변형에 사용할 색인을 설정합니다

    이번에는 립싱크에'아'의 혼합 변형을 사용했기 때문에 6을 입력했습니다.
    이렇게 하면 입을 열지 않기 때문에 Gain에 적당한 값을 넣고 입을 벌리세요.
    https://developer.oculus.com/downloads/package/oculus-lipsync-unity/


    이런 느낌은 너로 하여금 립싱크를 하게 할 수 있다



    사용자 정의 에이전트 시도


    • 를 통한 사용자 지정 에이전트
    • 예를 들어 일치 조건을 늘리면 대답할 수 있는 패턴이 증가한다
    • 초기 상태에서'이름은~'이라고 자칭하지 않으면 식별되지 않는다
    • 매칭 조건에 추가*です되면 이름을 묻는 질문에 "네~"라고 대답할 때도 이름을 말한 것으로 간주된다.


    다른 소리의 종류도 변경할 수 있습니다

    에이전트 소프트웨어 사이트


    자유롭게 맞춤형으로 제작할 수 있기 때문에 반드시 문서를 보면서 도전해 보세요


    좋은 웹페이지 즐겨찾기