찍찍이 류의 구간 반복학습 앱을 한번쯤은 써보았을 것이다. 상당수의 앱은 A-B구간 반복만을 지원하며, 사용자가 수동으로 설정을 해야 비로소 선택된 구간이 반복되게 된다.

여기서 한 걸음 더 나아가, 오디오를 자동 분석해서 문장 단위로 자동으로 끊어서 구간반복을 보다 쉽게 지원하는 앱들이 있는데 이를 여기서 소개해보려 한다.

안드로이드에서 아마도 가장 유명한 구간반복 앱은 워크오디오북이다. 국내에서 만들어진 것도 몇가지 있었지만 게중에 유명했던 WaveLoop는 개발이 중단되고, ICS부터 플레이 속도가 조절이 안되는 등등의 몇몇 결함이 보이더니 구글 플레이 배포가 갑자기 중단되었다. (※추가: 검색하다가 우연히 발견하게 된, 2011년 경에 공개된 waveloop소스 https://code.google.com/archive/p/waveloop/)

본인이 생각하는 이상적은 구간 반복학습 앱의 기능은 다음과 같다.
- 음성의 문장단위 자동 인식 및 반복 가능
- 복수개의 문장단위 지원
- 시각적인 파형 보여주기 및 파형의 드래그를 통한 문장 구간의 손쉬운 선택
- 자막 지원 등의 보조적 기능
- 플레이 속도 조절 기능

이러한 기능을 모두 가지고 있는 앱은 현재 안드로이드에 없으며 (2014년 이 글을 쓸 당시), 이 기능중에 일부를 지원하지는 않지만 아마도 가장 잘 만들고 완성도가 높은 앱은 워크오디오북이 아닐까 싶다.
2015년 5월 현재, 이 모든 기능을 잘 지원하는 앱은 필자가 제작자인 클론 리플레이어이다.

워크오디오북
유명한 반복 어학 학습앱 워크오디오북! (2013년 출시됨)
- 플레이 속도를 조절하는 기능은 없다.
- 문장 단위 자동 인식이 매우 훌륭하다.
- 사용자가 문장 구간을 직접 설정할 수 있다. (터치 드래그)
- 자막을 잘 지원한다. (SRT, HTML 자체 포맷 지원, SAMI(smi) 미지원)
- 그밖에, 오디오 북을 받을 수 있는 기능 등등이 최신 버전에 추가됨
- 비교적 최근 유료화가 되어서 설치시간이 일정시간 지나면 유료로 업그레이드하라는 메시지가 뜬다.
- 유료버전으로 업그레이드하지 않으면 하루 10분만 쓸 수 있다.
- 플레이를 10분만 할 수 있다는 제한말고는 나머지 기능은 모두 정상 작동
- 워크오디오북 자체 자막(html) + MP3 오디오북 파일을 앱에서 손쉽게 다운로드 받을 수 있다.

워크오디오북은 파형을 분석하는 속도가 매우 빨라서, 1시간 mp3도 거의 10초 안에 처리해낸다. 놀라운 속도다. (※추가: 이 속도의 비결은 다름이 아니라, ringdroid에서 쓰던 방식과 같이 MP3의 모든 샘플을 읽는 방식이 아니라, 각 프레임에서 global_gains값을 재빠르게 읽어서 보여주던 방식어었다.)

매우 깔끔하게 잘 만들어진 워크오디오북이지만 단점이 없는 것은 아니다. 우선 배속재생을 아직 지원하지 않는다. 아마도 내부적으로 안드로이드의 기본 내장 미디어플레이어를 통해 재생하는 것으로 보이며, 안드로이드 6.0 이하 버전은 기본 플레이어가 배속재생을 지원하지 않은다는 점 때문에 배속 재생 기능이 빠진 것으로 보인다. 또한 mp3 파일만 지원한다. 요즈음 쉽게 접할 수 있는 ogg 등등을 지원하지 않는다. (다만 이는 큰 문제로 보이지는 않는다.) 또한, mp4와 같은 동영상의 오디오 재생 역시 지원하지 않는다.
기타, 저자가 함께 지원하고 있는 오디오북으 호환성 문제가 있다. 오디오북에 포함된 자막은 html이라는 독특한 형식인데, 이것은 html 파일이라서 일반 브라우져로 볼 수도 있는 등의 장점이 있으나, 이 자막을 다른 어플이 지원하지는 않는다. (클론 리플레이어는 이를 지원하고 있다.) 그밖에 함께 제공하고 있는 오디오북에 포함된 원본 mp3 파일은 유명한 리브리복스.org 사이트에서 제공하는 음원인데, 발음이 상당히 빠른 편이라 초급 영어 학습자에게는 그다지 적합하지는 않아 보인다. (물론 AP 뉴스 혹은 CNN 뉴스 등등보다는 쉬운 편)


클론 리플레이어 (영어 구간 반복 듣기 베타)

본인이 개발자이며, 기존에 나온 앱들이 불편하다고 느껴서 개발하기 시작하였다. :)
공개된 오픈소스 링드로이드 소스를 사용하여서 링드로이드의 장점을 십분 활용하였다.
(개인적으로 이름붙인 프로젝트명 내부 명칭은 링드로이드 프로그램을 기반으로 한 것에 착안하여 링드로이드클론이라고 이름 붙였고, 앱 이름은 별 특징없이 "어학반복학습기"라고 하였고, 현재 정식 명칭은 클론 리플레이어 이다.)
- 플레이 속도를 조절 0.5~2배속 (버전 2.52부터) 
- 문장 단위 자동 인식이 그럭저럭 쓸만함 (high pass 필터를 추가한 이후에는 많이 좋아졌다)
- 자막을 지원한다 (SAMI지원 외 공개 자막 라이브러리를 사용하여서, SRT/SCC/LRC등등의 여러 포맷의 자막 지원)
- MP4 파형 보기 지원 (오디오 디코딩에 ffmpeg 사용함. 버전 2.50부터. MP4의 경우는 영상 보기도 지원 가능)
- 사용자가 문장의 구간을 직접 조절 할 수 있다.
- UI가 간단하여 사용이 손쉬운 편이다.
- 오디오 파일의 특정 구간을 잘라서 파일로 손쉽게 저장 가능(링드로이드의 기능 + FFmpeg 인코딩 동시 지원)
- 워크오디오북에서 받은 자막 + MP3 재생을 잘 지원.
- 개발이 활발. 몇일에 한번씩 새로운 버전이 나오고 있다 :)
- 아직 베타버전 상태라서 일부 기능이 안정적이지 않다. (2015년 3월 이후로 상당히 안정적이 되었다)

워크오디오북은 파형 분석속도가 타의 추종을 불허한다. 1시간 이상 분량의 MP3도 파형 분석 속도가 10초 수준이다. 워크오디오북에서는 파형을 모두 읽는 방식이 아니라 MP3의 각 프레임의 global_gain값만 읽어 보여주는 방식이다. 또한, 모든 음성 구간을 분석하는 것이 아니라, 보이는 부분의 구간만 재빠르게 분석하 매우 빠르다. 반면 본인이 개발하고 있는 클론리플레이어는 MP3 공개 라이브러리중에 가장 빠르다는 libmpg123을 사용하는데도 1시간짜리 mp3 분석이 1분 가까이 소요된다. 최초 시동시에 작동 반응 속도를 빠르게 하기 위해서 2015년 5월(?) 버전부터 mp3의 앞부분 ~2분 분량 정도를 무조건 읽고나서 즉각적으로 화면으로 보여준 후에, 나머지 파일은 백그라운드로 읽고, 모든 것이 완료되면 다시 나머지 분량의 파형을 갱신해서 화면에 표시하도록 하였으며,이러한 방식으로 로딩시간으로 인해 기다리게되는 불편함을 어느정도 해소시켰다.

클론 리플레이어의 그밖에 특징

자막을 리스트로 보기 - 일반적으로 자막 한줄만 나오는 방식 대신에 자막을 모두 볼 수 있도록 하였다.
- 문장 단위 자동 인식은 서서히 개선중 - Voice segmentation에 관련된 자료/논문을 읽어보며 구현중이다.
- 현재 RMS체크 / High-pass 필터 / Log 에너지 체크 적용됨.
- 간단하고 자연스러운 UI - 아이콘 최소화. 쉬운 사용에 중점을 두었으며, Holo 스타일과 어울리게 만듦
  - 최신 버전의 경우에는 최신 안드로이드 버전의 사용자는 Material 스타일과 어울리게 하였다.
- 원래 링드로이드 앱이 가지고 있던 파형 터치 드래그의 자연스러운 애니메이션을 그대로 유지/개선
- 왠만한 자막 편집기보다 나은 간단한 자막 편집기능을 지원한다. (SRT 및 SAMI 포맷으로 저장 가능)
- 최신 버전의 경우 대본 파일도 지원한다. 즉, 자막은 아니지만 일반 텍스트 파일을 같이 볼 수 있도록 하였다.
- 대본 파일을 직접 편집하는 것도 지원한다. 따라서 사용자가 메모를 함께 적어 넣을 수도 있다.
- 2015년 4월 이후로는 내장된 웹사전+단어장을 함께 지원한다.
- 구간 반복 횟수 지정 가능 (구간 반복이 완료되면 다음 구간으로 이동)
- 폴더플레이 지원 (폴더 아래의 모든 오디오 재생) 및 셔플 및 전체 오디오 반복 회수 지원
- 포드캐스트 다운로드 지원 및 자막/스크립트 다운로드 지원. (VOA / TED / Storynory 등등)
- 최신 버전의 경우 유튜브의 특정 채널을 통해서 영상을 다운받아 볼 수 있다.
- 영상을 재생하는 경우에는 영상을 함께 보는 것도 지원한다.
- 최신 안드로이드 6.0을 사용하는 경우에는 영상도 배속 보기를 지원한다. 따라서 영어 학습뿐만 아니라 다운받을 수 있는 인터넷 강으로 빠른 속도로 재생하는 것도 가능해졌다.
- 최신 버전의 경우, 기존의 여러 A-B 구간 지정앱에서 사용하던 전통적인 방식의 AB 구간 지정도 함께 지원하게 되었다.
- ※추가: 최신 버전의 경우 구글 ExoPlayer를 사용한 보다 정확한 동영상 구간 반복을 지원한다.


by dumpcookie 2014. 11. 2. 20:04