Personal Android App Project #1.
JamPlayer (가제)
1. 개요
1.1. 개발 의의
- Android App 개발 및 개발 환경에 익숙해짐을 도모
- 관심 분야의 Item 을 이용한 개발로 접근성 및 추진성 확보
- UI, Sound, 등 User Interface 단의 구현 기법 학습 도모
1.2. 프로젝트 정의
- 본 프로젝트의 명은 JamPlayer(가제, 이하 본 프로젝트로 칭함)로 한다.
- 본 프로젝트는 개인의 개발 기술의 발전과 함양을 첫번째로 함에 의의를 둔다.
- 본 프로젝트는 기존에 존재하던 어떠한 어플리케이션도 그대로 모방하지 않도록 한다.
- 본 프로젝트는 Acoustic Guitar 기초 이상의 연주자를 대상으로 한다.
- 본 프로젝트는 사용자의 조작으로 Guitar의 Scale을 연주함을 기본으로 한다.
2. Required Environment.
2.1. 개발 환경
- Android 4.2 (젤리빈) 지원이 가능한 개발 Platform.
.Windows / Mac / Linux 등 OS 상관 없음.
.eclipse / NetBeans 등 개발 Tool 상관 없음.
.Windows OS, eclipse 기반으로 개발 진행 예정.
- Android 기반의 Device (Smart Phone)
.Samsung Galaxy Note II 기기로 테스트 및 개발 진행 예정. (내 폰으로 ㅡㅜ)
2.2. 기타 추가 필요 자료
- Acoustic Guitar 음원
.직접 Recording 예정 (음원 라이센스 문제가 혹여나 발생 할 수도 있으므로...)
3. 필요 기능.
3.1. Sound Function
3.1.1. Android Background Music Medea Play
- 지정한 음원 파일을 Load 하여 Background 로 재생이 가능하여야 한다.
- MediaPlayer Class 사용 예정
3.1.2. Touched Node Sound Play
- 터치 된 위치의 음이 재생 되어야 한다.
- SoundPool Class 사용 예정
3.1.3. Record Function.
- 3.1.1. 의 재생중인 음원과 3.1.2의 수동 표현한 음원을 Mix하여 저장할 수 있어야 한다.
3.2. UI Function
3.2.1. Guitar 의 Flat 별, String 별 가독성 있는 Layout 표시
3.2.2. 필요 기능 Button표시
- Music Load, Music Play, Pause, Stop, Record, Scale Setting 등..
3.2.3. Guitar 의 Flat 터치 기능
3.2.4. Scale 별 Position 표현 기능
3.2.5. Position Drag 이동 기능
3.3. etc Function
3.3.1. 음원파일 저장 기능
- Record 된 음원에 대한 저장 기능
3.3.2.설정 정보 저장 기능
'Develope > Project 관리' 카테고리의 다른 글
망하는 제품 / 흥하는 제품의 흔한 개발 과정 (0) | 2013.08.02 |
---|---|
Tortoise SVN Client 사용법 (0) | 2013.03.20 |