Ogg (.ogg,.oga,...)

予備知識

    • 登録MIMEタイプ:video/ogg
    • マルチメディアコンテナ形式.
    • 複数の動画・音声トラックを含むことができる.
    • 効率的なストリーミングで使用されるように設計された.
    • さまざまな動画・音声コーデックをサポートする.
    • Xiph.Org Foundationによって開発され,保守されている.

ImportとExport

  • Import["file.ogg"]はOggファイルをインポートし,Videoオブジェクトを返す.
  • Import["file.ogg",elem]は指定された要素をインポートする.
  • インポート形式はImport["file","Ogg"]またはImport["file",{"Ogg",elem,}]で指定できる.
  • Export["file.ogg",expr]expr をOgg形式にエキスポートする.
  • 以下の式はOgg形式にエキスポートできる:
  • video任意のVideoオブジェクト
    AnimatedImage[] AnimatedImageオブジェクトのフレーム
    Manipulate[]Manipulate式から生成されたフレーム
    {expr1,expr2,}画像,グラフィックス,ラスタライズされた式のリスト
  • 任意の式のリストをエキスポートするとき,それぞれの式はライスタライズされ,表示されている形式と同じラスターサイズとなる.
  • Ogg動画の長さは,フレーム数と指定のフレーム率により決まる.
  • Manipulateオブジェクトの中でブックマークが設定されている場合,Exportは各ブックマークの間を補間したOggファイルを作成する.このとき,Manipulateの速度と長さは維持される.
  • Export["file.ogg",{elem1expr1,elem2expr2,},"Rules"]は規則を使ってエキスポートする要素を指定する.
  • サポートされている動画エンコーダのリストは$VideoEncodersで見ることができる.
  • 一般的な情報は,以下の関数ページを参照のこと.
  • Import, Exportファイルからインポートする,あるいはファイルへエキスポートする
    CloudImport, CloudExportクラウドオブジェクトからインポートする,あるいはクラウドオブジェクトへエキスポートする
    ImportString, ExportString文字列からインポートする,あるいは文字列へエキスポートする
    ImportByteArray, ExportByteArrayバイト配列からインポートする,あるいはバイト配列へエキスポートする

Import要素

  • 一般的なImport要素:
  • "Elements" ファイル中の有効な要素とオプションのリスト
    "Summary"ファイルの概要
    "Rules"使用可能なすべての要素の規則のリスト
  • 動画表現要素:
  • "ImageList"画像のリストで表されたフレーム
    "Video"Videoオブジェクトで表された動画ファイル
    "VideoData"各フレームの生のビットマップデータの配列
    "VideoStream"VideoStreamオブジェクトで表された動画ファイルへのハンドル
  • 音声表現要素:
  • "Audio"インコアのAudioオブジェクト
    "AudioData"音声サンプルの配列
    "AudioFile"アウトオブコアのAudioオブジェクト
  • Importはファイルに動画トラックがある場合は"Video"要素を,ない場合は"Audio"要素をデフォルトで使用する.
  • 動画ファイルには複数の動画,音声,または字幕のトラックが含まれていることがある.トラック数を返す要素:
  • "AudioTrackCount"音声トラック数
    "VideoTrackCount"動画トラック数
  • 動画メタデータ要素:
  • "BitDepth"ファイルの各色チャンネルを表すのに使用するビット
    "ColorSpace"ファイルで使用する色符号
    "FrameCount"ファイル中のフレーム数
    "FrameDurations"各フレームに与えられた表示時間のリスト
    "FrameRate"1秒あたりに表示されるフレーム数
    "RasterSize"ラスタサイズ
    "VideoEncoding"ファイルで使用する動画コーデック
  • 音声メタデータ要素:
  • "AudioChannels"音声チャンネル数
    "AudioBitDepth"各音声サンプルを表すのに使用されるビット
    "AudioEncoding"ファイルで使用されている音声コーデック
    "AudioLength"音声サンプル数
    "BitRate"秒あたりのビット数
    "SampleRate"秒あたりの音声サンプル数
  • その他のメタデータ要素:
  • "ExactDurations"動画,音声,字幕すべてのトラックの厳密な継続時間の連想
    "ExactTimeBoundaries"すべての動画,音声,字幕トラックの厳密な開始・終了時間の連想
    "Duration"動画のおよその継続時間(秒)
    "MetaInformation"数量,場所,日付,数等として解釈されるメタデータ
    "RawMetaInformation"文字列または数の未解釈メタデータ
    "Summary"ファイルの概要
    "TrackStartTimes"各トラックの開始時間の連想
  • $VideoDecoders$AudioDecodersは使用中のコンピュータシステムで利用できるデコーダのリストを与える.

Export要素

  • Export["file.ogg",{elem1->expr1,},"Rules"]は規則を使ってエキスポートする要素を指定する.
  • 使用できるExport要素:
  • "Audio"音声トラック
    "Frames"リストまたはManipulateまたは AnimatedImageオブジェクトとして与えられた動画フレーム

オプション

例題

すべて開くすべて閉じる

  (4)

OggファイルをVideoオブジェクトとしてインポートする:

OggファイルをAudioオブジェクトとしてインポートする:

Oggファイルの概要:

VideoオブジェクトをOggファイルにエキスポートする:

スコープ  (6)

Import  (2)

動画フレームのリストをインポートする:

音声データの最初の10秒をインポートする

Export  (4)

画像のリストをOggファイルにエキスポートする:

この動画から3フレーム取得する:

Manipulateで作成したものをOggにエキスポートする:

エキスポートされたファイルの概要:

AnimatedImageオブジェクトをエキスポートする:

Manipulateで作成したものに音声をつけてエキスポートする;

エキスポートされたファイルの概要:

Import要素  (28)

マルチトラックOggファイルの生成  (1)

マルチトラックOggファイルを生成する:

利用できる要素  (1)

利用できる要素のリスト:

動画要素  (3)

"Video"  (1)

Videoオブジェクトとしてインポートする:

これは動画トラックが少なくとも1つある場合のデフォルトのインポート要素である:

"VideoData"  (1)

指定のフレームに対応する動画データをインポートする:

NumericArrayオブジェクトに保存されている動画データを画像に変換する:

"VideoStream"  (1)

VideoStreamオブジェクトとしてインポートする:

動画ストリームを再生する:

ストリームから現在のフレームを取得する:

トラック数  (2)

"AudioTrackCount"  (1)

音声トラック数をインポートする:

"VideoTrackCount"  (1)

動画トラック数をインポートする:

メタデータ要素  (7)

"Duration"  (2)

動画のおよその継続時間をインポートする:

トラックの厳密な継続時間をインポートするためには,"ExactDurations"要素を使う:

"ExactDurations"  (2)

トラックの厳密な継続時間をインポートする:

動画のおよその継続時間をインポートする:

およその継続時間の計算は,通常厳密な継続時間の計算より格段に速い:

"MetaInformation"  (1)

動画ファイルからメタデータをインポートする:

"RawMetaInformation"  (1)

動画ファイルから未処理のメタデータをインポートする:

"Summary"  (1)

動画ファイルの概要をインポートする:

動画トラック  (7)

"BitDepth"  (1)

ビット深度をインポートする:

"ColorSpace"  (1)

色空間をインポートする:

"FrameCount"  (1)

動画フレーム数をインポートする:

"FrameDurations"  (1)

選択された動画フレームの継続時間をインポートする:

"FrameRate"  (1)

動画フレームレートをインポートする:

"RasterSize"  (1)

動画フレームのラスタサイズをインポートする:

"VideoEncoding"  (1)

動画コーデックをインポートする:

各プラットフォームでサポートされているデコーダは,$VideoDecodersを使って抽出できる:

音声トラック  (7)

"Audio"  (1)

OggファイルからAudioをインポートする:

"AudioChannels"  (1)

音声チャンネル数をインポートする:

"AudioData"  (1)

Oggファイルから音声データをNumericArrayとしてインポートする:

保存された音声データをAudioオブジェクトに変換する:

"AudioEncoding"  (1)

音声符号化方式をインポートする:

利用できる音声デコーダは$AudioDecodersから抽出できる:

"AudioFile"  (1)

アウトオブコアのAudioオブジェクトをインポートする:

アウトオブコアのAudioはメモリにデータを保持しない.インコアのAudioと比較する:

"BitRate"  (1)

音声トラックのビットレートを取得する:

"SampleRate"  (1)

音声トラックのサンプルレートを取得する:

Importオプション  (10)

マルチトラックOggファイルの生成  (1)

マルチトラックOggファイルを生成する:

"AudioChannels"  (1)

デフォルトではすべての音声チャンネルがインポートされる:

2つ目のチャンネルのみインポートする:

AudioTrackSelection  (1)

デフォルトではImportは最初の音声トラックからのみデータを抽出する:

AudioTrackSelectionオプションを使って指定の音声トラックからデータを抽出する:

"ImageTopOrientation"  (1)

デフォルトでは,動画フレームはファイルに保存されたネイティブの向きでインポートされる:

上側にする辺を指定する:

IncludeMetaInformation  (3)

デフォルトでは利用可能なすべてのメタデータがインポートされる:

メタデータをインポートしないようにする:

メタデータの指定のクラスだけをインポートする:

RasterSize  (1)

デフォルトでは動画フレームはそのネイティブのサイズでインポートされる:

各動画フレームのラスタサイズを指定する:

SampleRate  (1)

デフォルトでは動画フレームはそのネイティブのサイズでインポートされる

インポートされたサウンドのサンプルレートを指定する:

VideoTrackSelection  (1)

デフォルトではImportは最初の動画トラックからのみデータを抽出する:

VideoTrackSelectionオプションを使って指定の動画トラックからデータを抽出する:

Exportオプション  (19)

"AnimationDuration"  (1)

エキスポートされたManipulate式の継続時間を指定する:

AudioEncoding  (1)

エキスポートされた音声の符号化方式を指定する

AudioTrackSelection  (1)

デフォルトではすべての音声トラックがエキスポートされる:

エキスポートする音声トラックを指定する:

音声トラックをエキスポートしない:

Background  (1)

デフォルトでは,透明なグラフィックスと画像の背景色と,大きさの異なる画像をエキスポート前に充填する際の背景色に白が使われる:

異なる充填色を指定する:

BitRate  (4)

動画ファイルにエキスポートするときは,デフォルトで自動ビットレートが使用される:

全体のおおよそのビットレートを確認する:

おおよそのビットレートを提案する:

おおよそのビットレートを確認するが,提案したビットレートと少し異なる可能性がある:

動画と音声のおおよそのビットレートを別々に指定する:

全体のおおよそのビットレートを確認する:

ビットレートが低いと結果のファイルサイズが小さくなるが,生成された動画の質も低くなる:

CompressionLevel  (2)

CompressionLevelオプションを使って,生成された動画のファイルサイズと画質を制御する:

動画と音声の両方のBitRateが指定されているときは,CompressionLevelの値は無視される:

"ControlAppearance"  (1)

デフォルトの設定"ControlAppearance"Automaticでエキスポートされたアニメーションは,そのアニメーションが生成されたコンピュータシステムに応じて外観が異なる:

"ControlAppearance"Noneとすると,エキスポートされた動画にユーザコントロールは含まれない:

FrameRate  (1)

デフォルトではVideoオブジェクトまたはVideoStreamオブジェクトのエキスポート時にフレームレートは維持される:

別のフレームレートを指定する:

IncludeMetaInformation (2)

デフォルトではAudioオブジェクトに存在するすべてのメタ情報がエキスポートされる:

どのメタデータを含むのかを指定する:

メタデータをインポートする:

"Language""Title"等のメタデータはエキスポートしない:

MetaInformation (1)

メタデータをインポートする:

デフォルトでは,サポートされているすべてのメタデータが入力の動画ファイルからエキスポートされる:

選択されたタグだけが"Ogg"についてサポートされている.指定のメタデータをエキスポートする:

RasterSize  (1)

デフォルトではVideoオブジェクトまたはVideoStreamオブジェクトのエキスポート時にラスタサイズは維持される:

別のラスタサイズを指定する:

SampleRate  (1)

デフォルトではVideoVideoStreamAudioオブジェクトのエキスポート時にサンプルレートは維持される:

別のサンプルレートを指定する:

VideoEncoding  (1)

エキスポートされた字幕の符号化方式を指定する:

VideoTrackSelection  (1)

デフォルトではすべての動画トラックがエキスポートされる:

エキスポートする動画トラックを指定する:

動画トラックをエキスポートしない: