티스토리 뷰

멀티미디어 연동하기

멀티미디어 연동 계획 수립

개발된 API, UI/UX를 바탕으로 멀티미디어 연동 계획을 수립할 수 있다.

멀티미디어(multimedia) 클래스

미디어 클래스

멀티미디어를 동작시키기 위해서 제공되는 클래스는 미디어 플레이어(media player)이다. 이 클래스는 음악 및 동영상을 재생하는 기능을 한다. 스마트폰은 전화기능 만큼이나 다 양한 멀티미디어 기능도 무척이나 중요하다.

미디어 플레이어(media player)
미디어 플레이어는 비디오 및 오디오 모두를 재생하여 감상하는 데 사용하는 프로그램이 다. 미디어는 인라인(페이지에 포함되거나 다른 컨트롤의 그룹으로 포함)으로 또는 전용 전체 화면 보기로 재생할 수 있다. 플레이어의 단추 집합을 수정하고 컨트롤 막대의 배경 을 변경하고 보기에 적합하게 레이아웃을 조정할 수도 있다. 하지만 일반적으로 사용자는 기본 컨트롤 집합(재생/일시 중지, 뒤로 건너뛰기, 앞으로 건너뛰기)의 동작을 가장 필요로 한다. 미디어 플레이어로 재생 가능한 미디어 소스는 다음과 같다.
  • 주로 게임의 효과음 등으로 사용되는 실행 파일에 내장된 리소스
  • SD 카드에 파일 형태로 저장된 미디어
  • 대용량의 음악이나 동영상을 감상할 수 있는 인터넷이나 네트워크로 전송되는 스트림네트워크가 기본적으로 지원되는 스마트폰은 기기 내 파일뿐만 아니라 외부 전 세계의 모 든 미디어를 재생할 수 있다. 공식적으로 재생 가능한 포맷은 다음과 같은 대중적인 포맷이 다. 이외에 추가로 코덱(CODEC)을 설치하면 설치된 코덱에 따라 지원 포맷이 늘어나기도 하는데, 어떤 장비는 윈도우의 WMA와 WMV를 재생하며 별도의 변환 없이 볼 수도 있다
뮤직 플레이어(music player)

미디어 플레이어로 제작할 수 있는 응용 프로그램 중에 가장 실용적이고 대표적인 것이 MP3 플레이어이다. SD 카드의 루트 디렉터리에서 MP3 파일 목록을 읽어서 차례대로 재 생하며 재생 위치를 보여 주고 임의 위치로 이동하는 정도의 기본 기능을 제공한다.

오디오 녹음

스마트폰은 전화기 기능이 기본이지만, 예외 없이 마이크가 내장되어 있기 때문에 당연히 녹음을 할 수 있다. 녹음은 단순히 통화음성에 대한 녹음에서 오디오, 비디오까지 모두 녹 음이 가능하다. 안드로이드의 경우 오디오나 비디오 녹화를 위해 미디어 레코더(media recorder) 클래스를 제공한다. 이를 보다 자세히 분석해보면 카메라부터 마이크, 영상을 캡처하기 위해서는 카메라(camera) 클래스도 필요하다. 사용하는 방법은 형제 클래스인 미디어 플레이어와 유사한다.

사운드 풀(sound pool) 클래스

사운드 풀 클래스

안드로이드에서 소리를 재생하는 공식적인 방법인 미디어 플레이어 클래스는 기능은 많지 만 사용하기는 번거로움이 있다. 사운드를 재생하는 좀 더 간단한 방법으로 ‘사운드 풀 (sound pool)’ 클래스를 사용하는 방법이 있다. Sound(소리) + Pool(장소) 즉, 소리를 모아놓은 장소를 의미하는데 소리를 미리 로드해서 저장소에 저장해 놓고, 필요할 때마다 바로 플레이할 수 있다는 것을 의미한다. 메모리 관 리 측면에서 용량이 큰 mp3 파일들 보다는 비프음, 경고음 등의 간단한 소리를 저장할 때 주로 사용되며 게임처럼 반복적으로 나는 소리에 대해서도 많이 사용된다. 매번 로드 하려면 시간이 오래 걸리고 메모리 사용 측면에서도 비효율적이기 때문이다.

볼륨 조정

모든 스마트폰에는 하드웨어 볼륨기가 따로 있고 볼륨 상태는 사용자가 직접 선택하는 것 이어서 프로그램이 소프트웨어적으로 볼륨을 조정할 경우는 그다지 많지 않다. 볼륨을 조 정할 때는 오디오 매니저(audio manager) 클래스를 사용한다. 이 클래스는 볼륨을 관리하 고더불어벨모드조정, 효과음출력등의소리관련기능을제공한다. 시스템서비스이 므로 객체를 생성할 필요 없이 ‘get System Service(Context.AUDIO_SERVICE)’메소드 호 출로 구한다.

UI/UX Design

UI/UX 환경 분석

UI/UX 계획 수립

사용자 리서치

UI/UX 요구 분석

UI/UX 콘셉트 기획

UI 아키텍쳐 설계

댓글
댓글쓰기 폼