[iOS] AVAudioPlayer Class

Eugenie·2022년 6월 17일
0

Hits

AVFoundation

다양한 Apple 플랫폼에서 사운드 및 영상 미디어의 처리, 제어, 가져오기및 내보내기 등 광범위한 기능을 제공하는 프레임워크

🧪 주요 기능

▶️ 미디어 재생 및 편집
( QuickTime 동영상 및 MPEG-4 파일 재생/생성/편집, HLS 스트림 재생 )

▶️ 디바이스 카메라와 마이크를 이용한 영상 녹화 및 사운드 녹음

▶️ 시스템 사운드 제어

▶️ 문자의 음성화

AVAudioPlayer Class

▶️ 파일 또는 메모리에 있는 사운드 재생

▶️ 파일 재생 시간 길이의 제한 없이 사운드 재생

▶️ 여러 개 사운드 파일 동시 재생

▶️ 사운드의 재생 속도 제어 및 스테레오 포지셔닝

▶️ 앞으로 감기와 뒤로 감시 등의 기능을 지원해 사운드 파일의 특정 지점 찾기

▶️ 현재 재생 정보 데이터 얻기

▶️ 사운드 반복재생 가능

⚗️ 주요 프로퍼티

  • var isPlaying: Bool - 사운드가 현재 재생되고 있는지 아닌지 여부

  • var volume: Float - 사운드의 볼륨값, 최소 0.0 ~ 최대 1.0

  • var rate: Float - 사운드의 재생 속도

  • var numberOfLoops: Int - 사운드 재생 반복 횟수

    : 기본값은 0, 사운드 1회 재생 후 자동 종료

    양수 값으로 설정시 설정값 + 1회 재생

    음수 값으로 설정시 stop 메서드가 호출될 때까지 무한 재생

  • var duration: TimeInterval - 사운드의 총 재생 시간( 초 단위 )

  • var currentTime: TimeInterval - 사운드의 현재 재생 시각( 초 단위 )

  • protocol AVAudioPlayerDelegate - 사운드 재생 완료, 재생 중단 및 디코딩 오류에 응답할 수 있는 프로토콜

⚗️ 주요 메서드

초기화
// 특정 위치에 있는 사운드 파일로 초기화
func init(contentOf: URL)

// 메모리에 올라와있는 데이터를 이용해 초기화
func init(data: Data)
재생관련
// 사운드 재생
func play()

// 특정 시점에서 사운드 재생
func play(atTime: TimeInterval)

// 사운드 일시 정지
func pause()

// 사운드 재생 정지
func stop()

📚 Reference
AVFoundation
AVAudioPlayer
boostcourse - iOS 앱 프로그래밍

profile
🌱 iOS developer

0개의 댓글

관련 채용 정보