ios
-
VTDecompressionSession을 이용한 H.264 비디오 코덱iOS Swift 2023. 6. 7. 17:34
이전 글에서 네트워크를 통해 Elementray Stream 형식으로 들어온 NAL 유닛을 CMSampleBuffer로 변환하는 과정을 보았습니다. 이 샘플 버퍼에는 H.264로 압축된 영상이 있는데 해당 영상은 VTDecompressionSession을 이용해 직접 압축을 해제할 수 있습니다. 이를 통해 MetalKit을 이용해 화면에 영상을 출력할 수 있습니다. 이번에는 VTDecompression을 이용해 H.264 디코더를 구현하는 방법에 대해 살펴보겠습니다. VTDecompression 생성 func VTDecompressionSessionCreate( allocator: CFAllocator?, formatDescription videoFormatDescription: CMVideoFormat..
-
Core Buletooth 사용하기SwiftUI 2023. 6. 6. 20:52
Core Bluetooth 프레임워크는 앱이 저전력을 지원하거나 흔히 클래식이라고 부르는 BR/EDR 장비와 통신을 지원하기 위한 프레임워입니다. 중요한 점은 Core Bluetooth 에 클래스는 상속을 받아 재정의를 하면 안된다고 공식 문서에 나와 있습니다. 여기서는 iOS 디바이스로 주변 불루투스 장비를 검색하는 SwiftUI 앱을 구현해 보겠습니다. 우선 BLE에 대해 간단히 살펴 보겠습니다. BLE는 Bluetooth Low Energy 의 약자로 저 전력 모드를 지원하는 블루투스를 의미합니다. 이 후 기존의 블루투스 관련 프로토콜은 클래식 이라는 이름으로 사용되고 있습니다. 이전 클래식 버전이 저 지연과 고 데이터 전송을 위해 발전되어 왔다면 BLE는 얼마나 적은 전력을 소모하느냐는 관점에서 ..
-
Core NFCiOS Swift/애플 문서 한글화 2023. 6. 6. 17:24
이 문서는 애플 공식 문서 Core NFC 를 한글화한 문서입니다. framework Core NFC NFC 태그 감지, NDEF 데이터를 포함하고 있는 메시지 읽기, 쓰기 가능한 태그에 데이터 저장 Overview 앱은 사용자의 물리적 환경 안에서 실제 개체에 대한 더 많은 정보를 태그를 읽어 사용자에게 제공할 수 있습니다. CoreNFC를 사용하면 NFC Data Exchange Format(NDEF) 의 데이터가 포함된 유형 1 ~ 5의 근거리 무선 통신(NFC) 태그를 읽을 수 있습니다. 예를 들어 앱은 상점에서 찾은 제품이나 박물관에서 방문한 전시회에 대한 정보를 사용자에게 제공할 수 있습니다. 또한 앱은 데이터를 태그에 기록할 수도 있고, ISO 7816, ISO 15693, FeliCa™ 과..
-
Adding Support for Background Tag ReadingiOS Swift 2023. 6. 6. 16:33
Article 백그라운드 태그 읽기 지원 추가하기 사용자가 백그라운드 태그 읽기를 통해 앱 없이 NFC 태그를 스캔할 수 있도록 합니다. Overview 백그라운드 태그 읽기를 지원하는 iPhone에서 시스템은 사용자가 앱을 사용하여 태그를 스캔할 필요 없이 NFC 데이터를 스캔하고 읽을 수 있습니다. 시스템은 새 태그를 읽을 때마다 팝업 알림을 표시합니다. 사용자가 알림을 탭하면 시스템이 태그 데이터를 적절한 앱에 전달합니다. iPhone이 잠겨 있으면 태그 데이터를 앱에 제공하기 전에 시스템에서 사용자에게 폰 잠금을 해제하라는 메시지를 표시합니다. Note iPhone XS 이상에서 백그라운드 태그 읽기를 지원합니다. 의도하지 않은 태그 읽기를 방지하기 위해 시스템은 사용자의 iPhone이 사용 중일..
-
Managing model data in your appSwiftUI/SwiftUI 애플 문서 한글화 2023. 6. 5. 13:23
Article Hype boy 아티스트 NewJeans 앨범 NewJeans 1st EP 'New Jeans' 발매일 2022.08.01 이 문서는 https://developer.apple.com/documentation/swiftui/managing-model-data-in-your-app 를 한글화한 문서입니다. 앱에서 모델 데이터 관리 앱의 데이터 모델 과 뷰 사이의 연결 Overview 일반적으로 앱에서 데이터는 사용자 인터페이스나 다른 로직과 별개로 데이터 모델을 사용하여 저장하거나 처리합니다. 이렇게 모델을 분리하는 경우 모듈화를 향상시키고, 테스트 가능성을 개선하며, 앱의 작동 방식에 대해 쉽게 이해할 수 있도록 합니다. 기존에는 뷰 컨트롤러를 사용하여 모델과 사용자 인터페이스 간에 데이터..
-
lottie-ios 프레임워크와 UIViewRepresentable 을 이용한 LoadingView 구현SwiftUI/MVVM 알아보기 2020. 8. 27. 20:44
로띠(lottie) 는 json 형식의 움직이는 이미지 포맷으로 aribnb에서 개발되었고 많은 웹이나 앱에서 사용되고 있다. UIKit과 SwiftUI에서는 직접 이를 지원하지 않으므로 lottie-ios 프레임워크를 Pod을 통해 설치하고 이를 통해서 LottieView를 구현할 수 있다. SwiftUI는 지원하지 않는 UIKit의 WebView 나 MapView등 사용하기 위해 UIViewRepresentable 프로토콜을 정의하고 있고 이를 구현함으로 써 쉽게 이를 SwiftUI로 전환 할 수 있다. 여기서는 lottie-ios 프레임워크와 UIViewRepresentable 프로토콜 구현을 통해 LottieView를 구현하고 이를 통해 날씨 정보를 로딩 하는 중 이를 화면에 표시하는 Loding..