AVFoundation
AVFoundation is the full featured framework for working with time-based audiovisual media on iOS, iPadOS, macOS, tvOS, visionOS, and watchOS. Using AVFoundation, you can easily play, create, and edit QuickTime movies and MPEG-4 files, play HLS streams, and build powerful media functionality into your apps.
Frameworks and reference
Articles
- Loading media data asynchronously
- Retrieving media metadata
- Exporting video to alternative formats
- Creating images from a video asset
- Configuring your app for media playback
- Controlling the transport behavior of a player
- Monitoring playback progress in your app
- Setting up a capture session
- Choosing a capture device
- Enhancing your app experience with the Camera Control
- Accessing the camera while multitasking on iPad
- Handling audio interruptions
- Responding to audio route changes
- Incorporating HDR video with Dolby Vision into your apps
Sample code
- Destination Video
- AVCam: Building a camera app
- AVCamBarcode: Detecting Barcodes and Faces
- Capturing depth using the LiDAR camera
- Converting side-by-side 3D video to multiview HEVC and spatial video
- Reading multiview 3D video files
- Using AVFoundation to play and persist HTTP Live Streams
- Playing custom audio with your own player
- Supporting remote interactions in tvOS
Apple specifications
- QuickTime File Format
- High Dynamic Range Metadata
- Apple Positional Audio Codec (APAC)
- HEVC Video with Alpha
- HEVC Stereo Video Beta
- Extensions to ISOBMFF for Stereo Video Version 1.0
- QuickTime and ISO Base Media File Formats and Spatial and Immersive Media Beta
- Stereo Video Contour Map Metadata Beta
- Rectangular Dynamic Mask Metadata Beta
- Apple Movie Profiles Beta
Videos
Learn about AVFoundation with WWDC sessions and tutorials.
Forums
Post questions and discuss with other developers and Apple engineers.
Related resources
- Advanced Video Quality Tool
- Color Test Patterns
- HTTP Live Streaming (HLS)
- HTTP Live Streaming (HLS) authoring specification for Apple devices
- QuickTime Y’CbCr Rendering (Ice Floe Dispatch 27)
- Uncompressed Y ́CbCr Video in QuickTime (Ice Floe Dispatch 19)