전체 글
-
좀 더 Low 하게 가보자~ Swift 저수준 메모리 관리Apple🍎/Swift 2025. 4. 25. 20:25
ARC(Automatic Reference Counting)의 작동 원리ARC는 Swift에서 메모리를 자동으로 관리하는 메커니즘입니다.참조 카운팅 기본 원리: 각 참조 타입 객체(클래스 인스턴스)는 자신을 가리키는 참조의 개수를 추적하는 참조 카운트를 가집니다.카운트 증감 동작객체에 새 참조가 생성될 때 → 카운트 증가참조가 범위를 벗어날 때 → 카운트 감소카운트가 0이 되면 → 메모리에서 해제참조 타입강한 참조(strong): 기본값, 참조 카운트를 증가시킴약한 참조(weak): 참조하는 객체가 메모리에서 해제될 수 있음, 참조 카운트 증가 안 함, 자동으로 nil이 됨미소유 참조(unowned): weak과 유사하지만 nil이 되지 않음, 참조 객체가 반드시 자신보다 오래 살아있다고 가정순환 참조 ..
-
🎧 AVFoundation 오디오 분석을 위한 데이터 다루기Apple🍎 2025. 4. 24. 21:48
📦 1. 미디어 파일 구조 이해🔹 컨테이너와 트랙.mp4, .mov, .m4a 등은 컨테이너 형식컨테이너 내부에는 여러 트랙이 존재🎥 Video Track🎧 Audio Track💬 Subtitle Track 등👉 AVAsset을 통해 각 트랙을 구분하고 추출할 수 있다.🎵 2. 오디오 트랙 추출let asset = AVAsset(url: fileURL)let audioTracks = asset.tracks(withMediaType: .audio)오디오 트랙만 골라서 가져올 수 있음여러 오디오 트랙이 있을 수 있으므로 필요한 경우 조건 필터링 필요.mp3는 트랙 기반이 아니라서 예외 처리 필요🧪 3. AVAssetReader + AVAssetReaderTrackOutput컴포넌트 역할AVAs..
-
GPT 둘러보기AI🤖 2025. 4. 23. 15:10
1. GPT란 무엇인가?GPT는 "Generative Pretrained Transformer"의 약자로, 다음과 같은 의미를 담고 있습니다. Generative: 새로운 텍스트를 생성할 수 있는 모델Pretrained: 방대한 데이터로 사전 학습된 후, 추가 학습(fine-tuning)이 가능Transformer: 모델의 핵심 구조로, Self-Attention 메커니즘을 사용하는 신경망 아키텍처GPT는 기본적으로 사람처럼 문장을 이해하고 생성할 수 있는 거대한 자동완성 기계라고 볼 수 있습니다.2. GPT 모델은 어떻게 만들어지는가?GPT 같은 LLM은 아래와 같은 과정을 통해 만들어집니다.◾ 데이터 수집인터넷, 책, 위키, 뉴스, 논문, 코드 등 다양한 텍스트 데이터를 수집합니다.◾ 토크나이징(To..
-
🎬 Final Cut Pro Workflow Extension 개발 환경 세팅하기Apple🍎/Workflow Extensions 2025. 4. 23. 09:54
Building a Workflow Extension | Apple Developer DocumentationCreate a workflow extension in Xcode by using the Final Cut Pro Workflow Extension template.developer.apple.com1️⃣ Workflow Extension 문서 요약📌 Workflow Extension이란?Final Cut Pro 내부에서 실행되는 macOS 앱 기반의 확장 프로그램이다.플러그인처럼 보일 수 있지만, 실제로는 macOS 앱이 Final Cut Pro 내부에서 구동되면서 독립적인 UI와 기능을 제공한다.이를 통해 사용자는 타임라인 마커, 편집 흐름, 메타데이터 등을 자동화하거나 외부 서비스와 연동할..
-
[iOS, macOS] StoryBoard 없이 코드 베이스 UI 구성하기Apple🍎 2025. 4. 22. 20:54
📱 iOS vs 🖥 macOS – 코드베이스 UI를 위한 프로젝트 세팅 비교UIKit과 AppKit, 두 플랫폼 모두 코드로 UI를 작성하고 싶을 때가 있습니다.그런데 둘 다 Xcode에서는 Storyboard나 SwiftUI를 기본으로 요구하죠.오늘은 iOS와 macOS에서 스토리보드 없이 코드만으로 UI를 구성하기 위한 초기 세팅 방법을 비교해봅니다.🧭 목차왜 스토리보드를 쓰지 않나?iOS (UIKit) 프로젝트 세팅macOS (AppKit) 프로젝트 세팅주요 차이점 요약마무리1. 왜 스토리보드를 쓰지 않나?유지보수가 어렵고 충돌 위험이 큼협업 시 Git conflict 빈번복잡한 UI는 코드가 더 명확할 수 있음재사용성과 확장성이 낮음그래서 많은 개발자들이 코드로 UI를 직접 작성하고 싶어하죠..
-
Final Cut Pro 워크플로우 확장(Workflow Extensions) 알아보기Apple🍎/Workflow Extensions 2025. 4. 22. 15:58
워크플로우 확장이란?워크플로우 확장(Workflow Extensions)은 여러분의 앱 기능을 Final Cut Pro 인터페이스 내에서 직접 사용할 수 있게 해주는 기능입니다. 이는 앱을 대체하는 것이 아니라, 앱의 핵심 기능을 Final Cut Pro 안으로 가져와 작업 효율을 높이는 방법입니다.예를 들어, 스톡 영상을 찾고 관리하는 앱을 사용한다면, Final Cut Pro를 나가지 않고도 해당 앱의 주요 기능을 바로 이용할 수 있게 됩니다. 이렇게 되면 두 프로그램을 번갈아 전환하는 시간을 줄일 수 있죠.컨테이너 앱과 호스트 앱워크플로우 확장을 이해하기 위해서는 두 가지 개념을 알아야 합니다.컨테이너 앱(Container App): 워크플로우 확장을 포함하고 제공하는 macOS 앱입니다.호스트 앱..
-
XML 알아보기Programming🧑💻 2025. 4. 21. 22:21
XML이란 무엇인가?XML(eXtensible Markup Language)은 HTML과 비슷한 구조를 가지고 있지만 목적이 다릅니다. HTML이 데이터를 표시하는 데 중점을 둔다면, XML은 데이터를 구조화하고 전송하는 데 중점을 둡니다.확장 가능성: 사용자가 자신만의 태그를 정의할 수 있습니다자기 서술적: 데이터와 그 구조를 동시에 표현합니다플랫폼 독립적: 다양한 시스템 간에 데이터를 쉽게 공유할 수 있습니다XML 기본 구조 XML 배우기 홍길동 2023 프로그래밍 기초 김철수 2022 XML 문서는 다음 요소로 구성됩니다.XML 선언: 문서 맨 앞에 위치하며 XML 버전과 인코딩을 명시합니다요소(Elements): 시작 태그와 종료 태그 사이에 데이터가 ..
-
FxPlug 개발 환경 세팅하기Apple🍎/FxPlug 2025. 4. 20. 18:19
💡시작 전 Plug-ins 이란? 플러그인은 확장 기능으로써 Final Cut Pro나 Motion같은 Host Application의 기능을 확장하는 추가 소프트웨어입니다. Host Application?호스트 어플리케이션이란 플러그인이 실행되는 기반이 되는 소프트웨어를 의미합니다. 플러그인은 독립적으로 실행될 수 없으며, 항상 호스트 어플리케이션 내에서 작동합니다. Final Cut Pro는 Apple의 전문 비디오 편집 소프트웨어로, 주로 다음 목적을 가집니다.비디오 편집 및 시퀀싱전체 프로젝트 관리타임라인 기반 작업최종 출력 및 내보내기Motion은 모션 그래픽 제작 도구로, 주요 목적은 다음과 같습니다.애니메이션 및 모션 그래픽 제작시각 효과 생성타이틀 및 텍스트 애니메이션 제작효과 및 트..