Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Real or Not? NLP with Disaster Tweets
- Docker
- 데이콘
- ChatGPT
- 자연어처리
- Git
- 편스토랑
- 프로그래머스 파이썬
- 편스토랑 우승상품
- hackerrank
- SW Expert Academy
- gs25
- PYTHON
- programmers
- 캐치카페
- github
- 프로그래머스
- dacon
- 더현대서울 맛집
- 맥북
- ubuntu
- Baekjoon
- 금융문자분석경진대회
- 우분투
- 파이썬
- AI 경진대회
- 코로나19
- leetcode
- 백준
- Kaggle
Archives
- Today
- Total
솜씨좋은장씨
[Python]Mac에서 python으로 mp3파일을 wav로 변환하기(feat. homebrew) 본문
Programming/Python
[Python]Mac에서 python으로 mp3파일을 wav로 변환하기(feat. homebrew)
솜씨좋은장씨 2019. 10. 1. 23:50728x90
반응형
작업 환경은 아래와 같습니다.
- OS : Mac OS Catalina - jupyter notebook, python3
음성파일은 아래의 홈페이지에서 녹음 후 컴퓨터에 저장하였습니다.
ETRI에서 제공하는 open API 중 음성인식 API를 사용하려고 녹음한 음성 mp3파일을 api에 요청변수로 보내니
{"result":0,"return_object":{"recognized":"ASR_NOTOKEN"}}
위와 같이 "ASR_NOTOKEN"이라는 결과를 확인할 수 있었습니다.
ETRI 홈페이지를 가보니 해당하는 오류는 파일이 샘플링 주파수(16kHz)가 맞지 않았을때라는 결과를 볼 수 있었습니다.
위를 해결하기 위해서 프로그램을 사용하여 변환할 수도 있겠지만
python 코드를 활용하여 변환하는 방법을 찾아보니 두 줄이면 가능했습니다.
먼저 pip 명령어를 활용하여 필요한 라이브러리를 설치합니다.
1. pydub 설치하기
$ pip3 install pydub
위의 명령어를 통하여 pydub를 설치합니다.
2. brew를 활용하여 ffmpeg 설치하기
$ brew install ffmpeg
위의 명령어를 사용하여 ffmpeg를 설치합니다.
위의 명령어를 사용하기 위해서는 brew를 먼저 설치해야합니다.
아래의 링크를 참조하기 바랍니다.
3. python 코드 작성하고 mp3파일 wav 형식으로 변환하기
from pydub import AudioSegment
AudioSegment.from_mp3("test.mp3").export("test.wav", format="wav", bitrate="16k")
test.mp3 부분은 mp3 파일이 있는 경로를
test.wav는 wav파일을 저장할 경로를
넣어주면 끝!
위의 방식대로 하니 API가 계속
이렇게 인식하는 문제도 있었습니다.
여러 방법을 해보니
위에서 ffmpeg를 brew로 설치한 뒤라 그냥 터미널에서
$ ffmpeg -i test5.mp3 -acodec pcm_s16le -ac 1 -ar 16000 test_5_test.wav
명령어를 활용해서 변환할 수 있었습니다.
이렇게 해보니 아래의 녹음파일이 잘 인식되었습니다.
다들 즐거운 코딩하기바랍니다~
'Programming > Python' 카테고리의 다른 글
[Python]인스타그램 크롤링을 통해 #흑당버블티 분석해보기! (43) | 2019.10.09 |
---|---|
[Python] 인스타그램 태그를 가져와 워드클라우드 만들기! (4) | 2019.10.03 |
[Python]네이버 영화 데이터 크롤링하기 (3) | 2019.09.27 |
[Python]Jupyter notebook New 버튼의 반응이 없을때 (0) | 2019.09.24 |
[Python]과거의 데이터로 최적의 추석 귀경시간 추측해보기(feat, matplotlib) (0) | 2019.09.15 |
Comments