avfoundation・とは?初心者でもわかる使い方と仕組み共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
avfoundation・とは?初心者でもわかる使い方と仕組み共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


avfoundation・とは?基本の概要

avfoundation は Apple が提供する時系のメディア処理のフレームワークです。モバイル端末での動画再生や音声録音、映像の編集、書き出しなどを一つの仕組みで実現します。iOS や macOS だけでなく watchOS などの Apple プラットフォームでも動作します。初心者の方はまず avfoundation が動画や音声をどう扱うかの基本的な考え方をつかむことが大切です。

このフレームワークを使うと、メディアファイルを読み込み、時刻情報を追跡し、再生することができます。さらに新しいメディアを作る編集作業や、複数の音声トラックや映像を組み合わせる作業も可能です。

avfoundation の中にはいくつかの重要なクラスがあります。代表的なものとして AVAsset、AVPlayer、AVAssetReader、AVAssetWriter、AVMutableComposition などがあります。これらのクラスはそれぞれ役割が異なり、どの段階で何を取得・加工するかによって使用するクラスが変わります。

初心者が最初に知っておくべきポイントは、AVAsset はメディアの“データとタイムライン”を表す基盤であること、AVPlayer は実際に再生して音や映像を出す役割、AVAssetReader/Writer はデータの読み書きを行う補助的なツールであることです。これらをイメージしておくと、後の学習がスムーズになります。

使い方の流れをざっくり見ると、まずメディアの URL やファイルを AVAsset に読み込みます。次に再生したい場合は AVPlayerItem を作成して AVPlayer に渡し、再生を開始します。編集をしたい場合は AVMutableComposition を使って新しいタイムラインを作り、最終的に AVAssetWriter で新しいファイルとして保存します。

初心者向けのコツとしては、最初は再生機能から始め、徐々に読込と書き出し、そして編集の機能へと段階的に拡張することです。Swift や Objective-C の基本文法がわかれば、import AVFoundation と書くところから始めて、クラスの基本的な使い方を読み解く練習をしてください。

使い方のポイントと用語の表

要素説明
AVAssetメディアのデータと時刻情報の基盤を提供するクラス
AVPlayer実際に再生を行う再生機能の中核
AVPlayerItem再生する具体的なアイテムを表す
AVMutableComposition複数のトラックを組み合わせるための編集用オブジェクト
AVAssetReader/AVAssetWriterデータの読み取りと書き出しを行う

まとめ AVFoundation は高度な機能を持つ強力なフレームワークですが、初学者には基本の流れと主要クラスの役割を理解することが大切です。最初は再生機能から入り、徐々に読み書きや編集へと学習を広げていくとよいでしょう。


avfoundationの同意語

AVFoundation
Appleの映像・音声処理を行う公式フレームワークの名称(iOS/macOS共通の時間ベースメディアAPI集合)。
AV Foundation
表記ゆれの別名。実質はAVFoundationフレームワークのことを指す。
AVFoundationフレームワーク
動画・音声の読み込み・再生・編集などの機能を統括するAppleのフレームワーク。
AVFoundation API
AVFoundationが提供する具体的なプログラミング用のAPIの総称。
AppleのAVFoundation
Apple社が提供するAVFoundationフレームワークのこと。
AV系フレームワーク
映像・音声関連のフレームワーク群を指す総称で、文脈上AVFoundationを指すことが多い。
iOSのAVFoundation
iOSデバイス向けに提供されるAVFoundationのこと。
macOSのAVFoundation
macOS向けに提供されるAVFoundationのこと。
映像・音声処理フレームワーク
動画・音声の再生・録音・編集・エンコードなどをまとめて扱う機能群を指す表現。
時間ベースメディア処理
動画・音声など、時間軸に沿ってデータを扱う機能の総称(AVFoundationの核となる概念)。
動画再生API
動画の再生機能を提供するAVFoundationのAPI群の総称。
音声録音API
音声の録音・取り込み機能を提供するAVFoundationのAPI群の総称。
動画編集API
動画の切り出し・結合・エフェクト適用など編集機能を提供するAPI群。

avfoundationの対義語・反対語

非AVFoundation
AVFoundation以外のフレームワーク・技術。Appleのエコシステムに依存しない、映像・音声の処理を別の設計思想で扱うものを指します。
別のメディア処理フレームワーク
FFmpeg、GStreamer、DirectShow、Media Foundation、WebRTC など、AVFoundationとは異なるメディア処理のフレームワーク。
低レベルAPIのメディア処理
高レベルな抽象化を提供するAVFoundationに対して、より低レベルのデータ操作や自前のパイプラインを作る設計。
ウェブ系メディア処理フレームワーク
HTML5のVideo/Audio、Web Audio API、Media Source Extensions など、ブラウザ上で動くメディア処理の技術群。
Appleプラットフォーム以外のフレームワーク
AndroidやWindows向けなど、Apple以外のプラットフォームのメディア処理フレームワーク。
テキスト・データ処理中心のライブラリ
映像・音声を扱わず、テキストデータや一般的なデータ処理を主眼にするライブラリ・フレームワーク。
クラウド中心のメディア処理
端末側のAVFoundationを使わず、クラウド側で処理・配信する設計思想。
低遅延前提でないメディア処理
AVFoundationのリアルタイム性を重視する設計とは対照的に、遅延を許容する設計のフレームワーク。

avfoundationの共起語

AVAsset
動画・音声ファイルを表す基本的なデータモデル。トラック情報を含むファイルの抽象表現です。
AVPlayer
動画・音声の再生を行う再生エンジン。再生・一時停止・シークなどを制御します。
AVAssetReader
メディアファイルからサンプルデータを読み出す低レベルAPI。デコード前のデータ取得に用います。
AVAssetWriter
メディアデータを新しいファイルに書き出す低レベルAPI。エンコードと書き出しを行います。
AVMutableComposition
複数のトラックを組み合わせて新しいメディアを作る編集用オブジェクト。後でエクスポートします。
AVURLAsset
URLベースのAsset。ローカルファイルやネットワーク上のメディアを表します。
AVAssetTrack
動画トラックや音声トラックなど、Asset内の個別トラックを表す。
AVPlayerItem
AVPlayerが再生する1つのアイテム。再生の開始・終了時間、ループ設定などを管理。
AVPlayerLayer
AVPlayerの再生 UI を表示するためのレイヤー。
AVVideoComposition
動画の編集・合成を行うための設定。トランジションやリサイズなどを定義します。
AVAudioMix
複数の音声トラックの音量・パンを同時に調整する設定。
AVAssetExportSession
編集後のメディアをファイルとして出力するセッション。エクスポート設定を指定します。
AVCaptureSession
カメラやマイクの入力をまとめて処理するキャプチャセッション。
AVCaptureDevice
カメラ・マイクなどの入力デバイスを表します。
AVCaptureVideoDataOutput
キャプチャした動画データを外部へ出力するためのオブジェクト。
CMSampleBuffer
動画・音声のサンプルデータを格納するバッファ。処理ユニットの基本データ単位です。
CMTime
時間を表す基本的な構造。秒やフレーム位置を表すのに使います。
CMTimeRange
開始点と長さで時間の範囲を表す構造。
AVAssetReaderTrackOutput
特定トラックのサンプルを読み出すための出力設定。
AVAssetWriterInput
書き出し時の入力設定。エンコード済みデータを取り込む窓口。
AVAssetWriterInputPixelBufferAdaptor
ピクセルバッファをAVAssetWriterへ渡す際の橋渡し役。
AVMetadataItem
メタデータ(タイトル・作成者・著作権情報など)を表す。
HLS
HTTP Live Streamingの略。ネット配信用の動画ストリーミング形式で、AVFoundationで再生・処理されます。
CVPixelBuffer
画素データを格納するバッファ。映像フレームの生データを保持します。

avfoundationの関連用語

AVFoundation
Appleの動画・音声の再生・編集・キャプチャ・書き出しを統合して提供するフレームワークです。
AVAsset
メディアファイルの抽象表現。動画・音声・字幕などのトラック情報を含む基本クラスです。
AVURLAsset
URLから読み込むAVAsset。ファイルURLやネットワークURLを資産として扱います。
AVPlayer
メディア再生を制御する中心的なオブジェクト。再生・一時停止・シークなどを可能にします。
AVPlayerItem
AVPlayerが再生する資産の単位。再生状態やタイム情報を管理します。
AVPlayerLayer
AVPlayerの映像を画面に表示するためのCALayerです。
AVQueuePlayer
複数のAVPlayerItemを連続再生するプレイヤーです。
AVPlayerItemStatus
AVPlayerItemの再生状態(未知・準備中・ReadyToPlay・Failed など)を表します。
CMTime
時間を表す基本単位。分子/分母で秒を表現します。
CMTimeRange
開始時刻と長さを表す時間の範囲です。
CMSampleBuffer
動画・音声のサンプルデータを格納するデータ構造です。
AVAssetTrack
AVAsset内のトラック情報。ビデオ・オーディオ・字幕などを含みます。
AVVideoComposition
映像の合成・トランジション・エフェクトを定義するオブジェクトです。
AVMutableVideoComposition
編集可能な動画構成。実行時に動的に変更可能です。
AVVideoCompositionInstruction
動画のセクションごとの処理指示。トラックの適用やタイムレンジを定義します。
AVMutableVideoCompositionInstruction
編集可能な動画命令。複数トラックの合成を管理します。
AVVideoCompositionLayerInstruction
各レイヤーの変換情報(トランスフォーム・結合順序など)を指定します。
AVAssetImageGenerator
動画から静止画を生成するツール。サムネイル作成に使われます。
AVAssetExportSession
AVAssetを別形式・設定で書き出すセッションです。
AVAssetExportPresetHighestQuality
エクスポート時の最高品質プリセットです。
AVAssetExportPresetPassthrough
元のコーデックを維持して出力するプリセットです。
AVAssetReader
メディアのデコード・読み出しを行うためのオブジェクトです。
AVAssetReaderTrackOutput
AVAssetReaderが特定のトラックを読み取る出力です。
AVAssetWriter
新しいメディアファイルへデータを書き出すためのオブジェクトです。
AVAssetWriterInput
AVAssetWriterに供給するデータの入力です。
AVAssetWriterInputPixelBufferAdaptor
ピクセルバッファをAVAssetWriterInputへ渡す橋渡しです。
AVAudioSession
アプリのオーディオ設定・ルーティングを管理するセッションです。
AVAudioEngine
高度なオーディオ処理を組み立てるためのオーディオエンジンです。
AVAudioMix
複数のオーディオトラックのボリューム・エフェクトを組み合わせるミックス設定です。
AVAudioMixInputParameters
各オーディオトラックのパラメータ(ボリューム・パンなど)を定義します。
AVMetadataItem
メディアのメタデータ項目。タイトル・作曲者・ジャンルなどを表します。
AVMetadataKeySpaceCommon
共通メタデータのキー空間。標準的なキーを含みます。
AVContentKeySession
DRM等のコンテンツキーを管理するセッションです。
AVContentKeyRequest
コンテンツキーのリクエスト情報。DRM対応で使用します。
AVAssetTrackSegment
トラックのセグメント情報。開始点と長さを記述します。
AVDepthData
深度データ(深度マップ)を扱うデータです。3D撮影やフォーカス処理に使われます。
AVVideoCodecType
ビデオコーデックの種類を表す文字列です(例: avc1 は H.264、 hev1 は HEVC など)。
AVAssetDownloadURLSession
メディアのダウンロードをネイティブに管理するURLセッションです。
AVPlayerItemDidPlayToEndTimeNotification
AVPlayerItemが再生を終了したときに送られる通知です。
AVVideoCompositionCoreAnimationTool
Core Animationを使って動画のレイヤー合成を行うツールです。

avfoundationのおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
14448viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2407viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1067viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1027viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
929viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
897viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
832viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
830viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
795viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
781viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
714viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
691viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
590viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
569viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
563viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
547viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
515viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
492viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
473viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
470viws

新着記事

インターネット・コンピュータの関連記事