일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Human interface guide
- 리펙토링
- UICollectionView
- 애니메이션
- swiftUI
- Refactoring
- map
- Observable
- 스위프트
- 리펙터링
- combine
- HIG
- RxCocoa
- Protocol
- tableView
- 리팩토링
- SWIFT
- 클린 코드
- uitableview
- rxswift
- MVVM
- swift documentation
- Clean Code
- uiscrollview
- clean architecture
- ribs
- Xcode
- UITextView
- ios
- collectionview
- Today
- Total
목록avplayer (7)
김종권의 iOS 앱 개발 알아가기
1. 오디오 처리 - AVPlayer, AVAudioPlayer 개념 (실시간 스트리밍, 로컬 파일 재생) 2. 오디오 처리 - AVAudioRecoder 개념 (녹음) 비교 실시간 스트리밍 -> AVPlayer 사용 로컬 파일 재생 -> AVAudioPlayer 사용 음성 특수 효과 or 변조 -> AVAudioEngine 사용 cf) 녹음 -> AVAudioRecoder 사용 비동기 처리의 편의를 위해서 사용한 프레임워크 pod 'RxSwift' pod 'RxCocoa' pod 'RxAVFoundation' 커스텀 Rx extension 버튼 하나로 토글 처리하는데 편리한 isHighlighted, isSelected 추가 // Rx+Extension.swift extension Reactive wh..
사전 지식) 스위프트의 스레드 스위프트의 main queue는 serial queue이므로, 한 task가 끝나고 난 후에 다음 task를 실행 만약 main.sync로 실행시키면 이 serial queue에 작업이 끝날 때 까지 그 코드에 머물러 있는 상태 queue가 block되고 queue에 넣은 작업들이 완료될때까지 wait 상태 serial queue이므로 이미 block 상태가 되었기 때문에 deadlock 발생 thread safe하게 사용하려면, background thread에서 main.async를 사용하여 순서에 맞게 UI업데이트가 되도록 구현 크게 main(serial)과 global(concurrent)가 존재 async와 concurrent의 차이 async, sync 단일 작업..
1. AVFoundation 개념 - 구조, AVAsset, AVKit 2. AVFoundation 개념 - AVPlayer, AVPlayerItem 3. AVFoundation 개념 - AVPlayer 오디오 재생, 일시정지, 재생구간 이동 구현 (play, pause, seek) 4. AVFoundation 개념 - AVPlayer, AVPlayerLayer로 동영상 재생 방법 5. AVFoundation 개념 - AVAudioSession 개념 (오디오 활성화, 입출력 변경, 잠금화면 재생, 재생 중 전화가 온 경우 처리) * 번외) 오디오 처리 - AVPlayer, AVAudioPlayer 개념 (실시간 스트리밍, 로컬 파일 재생) AVAudioSession AVAudioSession라는 싱글톤이..
1. AVFoundation 개념 - 구조, AVAsset, AVKit 2. AVFoundation 개념 - AVPlayer, AVPlayerItem 3. AVFoundation 개념 - AVPlayer 오디오 재생, 일시정지, 재생구간 이동 구현 (play, pause, seek) 4. AVFoundation 개념 - AVPlayer, AVPlayerLayer로 동영상 재생 방법 5. AVFoundation 개념 - AVAudioSession 개념 (오디오 활성화, 입출력 변경, 잠금화면 재생, 재생 중 전화가 온 경우 처리) AVPlayerLayer CALayer의 서브클래스이고, 동영상을 재생시킬 수 있는 layer 보통 AVPlayerLayer의 인스턴스를 AVPlayer를 생성자로하여 만든 후,..
1. AVFoundation 개념 - 구조, AVAsset, AVKit 2. AVFoundation 개념 - AVPlayer, AVPlayerItem 3. AVFoundation 개념 - AVPlayer 오디오 재생, 일시정지, 재생구간 이동 구현 (play, pause, seek) 4. AVFoundation 개념 - AVPlayer, AVPlayerLayer로 동영상 재생 방법 5. AVFoundation 개념 - AVAudioSession 개념 (오디오 활성화, 입출력 변경, 잠금화면 재생, 재생 중 전화가 온 경우 처리) * 오디오 재생 관련 방법은 AVPlayer 방법과 AVAudioPlayer 사용이 존재 - 단순히 오디오를 재생시키는 경우 AVPlayer를 사용 (play, pause, se..
1. AVFoundation 개념 - 구조, AVAsset, AVKit 2. AVFoundation 개념 - AVPlayer, AVPlayerItem 3. AVFoundation 개념 - AVPlayer 오디오 재생, 일시정지, 재생구간 이동 구현 (play, pause, seek) 4. AVFoundation 개념 - AVPlayer, AVPlayerLayer로 동영상 재생 방법 5. AVFoundation 개념 - AVAudioSession 개념 (오디오 활성화, 입출력 변경, 잠금화면 재생, 재생 중 전화가 온 경우 처리) AVPlayer 개념 AVPlayer: player 작업에 관한 인터페이스를 제공하는 객체 실시간 스트리밍 파일을 재생할때 사용 (mp3 url만 가지고, 다운로드 받지 않고 재..
https://github.com/kaishin/Gifu mp4 파일 재생 animation이 동작할 UIImageView 추가 애니메이션을 실행시킬 playVideo 함수 추가 private func playVideo(with resourceName: String) { guard let path = Bundle.main.path(forResource: resourceName, ofType: "mp4") else { return } let player = AVPlayer(url: URL(fileURLWithPath: path)) let playerLayer = AVPlayerLayer(player: player) playerLayer.frame = animationView.bounds animationV..