Transcribe의 영어 회의 문자 깨우기를 markdown으로 설정

저는 fushimi입니다.
이 글은 Wano 그룹 Advent Calendar 2019Advent Calendar 2019 의 11일째 글입니다.

회의


최근 프로젝트에서 나는 뉴욕의 팀과 영어로 회의를 할 기회가 매우 많다.기본적인 청력도 좋지 않기 때문에 회의 짝꿍에서 열이 빨리 날 때도 알아듣기 어렵다.
따라서 회의 후 학습/의사록과 함께 음성문자의 상하문을 추적Amazon Transcribe해 보자.
이번에는 Transcribe의 출력markdown화된 것을 웹 응용 프로그램에 깨워 보려고 합니다.

제품


저장소:
wano/aws-transcribe-render
응용 프로그램 페이지:
https://wano.github.io/aws-transcribe-render/

Amazon Transcribe


이른바 문자 깨우기 서비스다.S3 위의 음성 파일을 해석해 주세요.
최근에는 일본어와 도쿄 지역에서 사용할 수 있게 되었다.
문자뿐만 아니라 말하는 사람의 해석을 얻을 수 있는 것도 흥미로운 부분이다.
Term이 적당하지만 말하는 사람의 해석도 있고 상하문을 추적할 수 있기 때문에 복습할 수 있습니까...에서 설명한 도구를 사용하여 벽의 레이아웃과 형상을 조정합니다.
작은 문장이라면 컨트롤러에서 결과를 미리 볼 수 있지만 일정한 길이가 되면 출력 결과로 사용할 수 있는 원시 json만 사용할 수 있습니다.
...
Can you see the seats? No option. Hello. It's not"}],"speaker_labels":{"speakers":8,"segments":[{"start_time":"1.44","speaker_label":"spk_4","end_time":"2.35","items":[{"start_time":"1.44","speaker_label":"spk_4","end_time":"1.81"},{"start_time":"1.94","speaker_label":"spk_4","end_time":"2.35"}]},{"start_time":"11.94","speaker_label":"spk_4","end_time":"12.45","items":[{"start_time":"11.94","speaker_label":"spk_4","end_time":"12.45"}]},{"start_time":"13.71","speaker_label":"spk_4","end_time":"14.16","items":[{"start_time":"13.71","speaker_label":"spk_4","end_time":"14.16"}]},{"start_time":"14.71","speaker_label":"spk_4","end_time":"15.38","items":[{"start_time":"14.71","speaker_label":"spk_4","end_time":"15.38"}]},{"start_time":"16.24","speaker_label":"spk_4","end_time":"16.91","items":[{"start_time":"16.24","speaker_label":"spk_4","end_time":"16.91"}]},{"start_time":"25.86","speaker_label":"spk_1","end_time":"26.97",
...
이런 느낌.고생스럽다
처음에는 PHP제 해상도aws-transcribe-transcript를 바꾸어 명령을 내렸습니다. json 퍼스/성형/변화는 웹 클라이언트에서 흔쾌히 해야 합니다...이런 소감이 있어서 이번 광고 달력을 계기로 js로 적어봤습니다.

aws-transcribe-render



마크다운화라고 썼지만 mustache 표기법에 템플릿만 썼기 때문에 뭐든지 다 있습니다.
템플릿의 블록은 말하는 사람이 말을 시작하여 끝날 때까지 하는 것이다.

사용 방법


사전


우선, 대화/회의의 음성 데이터를 s3로 높이고transcribe의 컨트롤러에서 json화합니다.

응용 프로그램 / 편집 템플릿에 json 입력


나는 그 json을 이쪽의 응용 프로그램에 입력했다.
  • speaker
  • text
  • time
  • 템플릿 변수로 전달되기 때문에markdown과 html는 모두 좋아하는 형식으로 출력할 수 있습니다.

    말하는 사람의 이름을 바꾸는 기능


    Transcribe의 기본 대화자 이름을 덮어쓸 수도 있습니다.
    spk_0이라는 몸도 뚜껑도 없는 라벨이니 얼마든지 기억을 파헤쳐 말하는 사람의 이름을 적어보자.

    결과


    지금까지의 결과는 다음과 같다.

    나중에 복사해서 회의록에 붙이는 등

    총결산


    이제 출력 결과만 입력하면 쉽게 편집할 수 있습니다.
    영어로 열리는 회의에서 다시 한 번 시도해 보려고 했지만 이렇게 말하면 일본어 회화에서Transcribe를 해 본 적이 없기 때문에 그쪽의 정밀도도 신경 쓰인다.

    도전하다

  • 나갈 수 있는 대화로 앱에 샘플을 게재하고 싶은데 저작권이 자유로운'대화 음성 데이터'를 도저히 찾을 수가 없네요...
  • GUI와 무관한 핵심 부분의 논리는 분리되었지만 관건적인 npm 모듈화는 진행되지 않았다.
    1년 이상 만에 React 터치, "use State 대단해!""use Effect 너무 좋아요!"그래서 시간이 저쪽에서 녹았어요.
  • XSS 대책이 제대로 이뤄지지 않았다.mustache의 템플릿을 직접 꺼내세요.어떤 영구화된 사이트에 쓰이는 것도 아니기 때문에 특별한 것은 없다.
  • 좋은 웹페이지 즐겨찾기