MPEG-DASHビデオ
概要
MPEG-DASHはセグメント化されたビデオフォーマットです。DASH は PlayReady、Marlin、または Widevine モジュラー DRM で使用できるため、コンテンツに DRM セキュリティが必要な場合に特に便利です。MPEG-DASH レンディションを指定する構文は他のビデオフォーマットと若干異なるため、ここでは DRM パッケージを含まないサンプルプロファイルと DRM パッケージを含むいくつかのサンプルプロファイルを含めます。
Brightcove Player が実際に再生するレンディションを決定する方法の詳細については、「再生するレンディションを決定する」を参照してください。
サンプルプロファイル (DRM なし)
このサンプルは、DRM パッケージなしの MPEG-DASH レンディションのパッケージングを示しています。
{
"id": "56e077ace4b0a7b3c178e6e7",
"name": "DASH-no-drm",
"description": "DASH renditions",
"account_id": "1752604059001",
"renditions": [
{
"media_type": "video",
"id": "56e077ace4b0a7b3c178e6e5",
"reference_id": "r1",
"format": "m4f",
"type": "segmented",
"audio_codec": "aac",
"audio_bitrate": 36,
"video_codec": "h264",
"video_bitrate": 300,
"decoder_bitrate_cap": 400,
"decoder_buffer_size": 800,
"force_aac_profile": "aac-lc",
"frame_rate": 30,
"keyframe_rate": 0.5,
"fixed_keyframe_interval": true,
"width": 800,
"height": 600,
"h264_profile": "baseline",
"streaming_delivery_profile": "live"
},
{
"media_type": "video",
"id": "56e077ace4b0a7b3c178e6e6",
"reference_id": "r2",
"format": "m4f",
"type": "segmented",
"audio_codec": "aac",
"audio_bitrate": 36,
"video_codec": "h264",
"video_bitrate": 600,
"decoder_bitrate_cap": 800,
"decoder_buffer_size": 1600,
"frame_rate": 30,
"keyframe_rate": 0.5,
"fixed_keyframe_interval": true,
"force_aac_profile": "aac-lc",
"width": 1024,
"height": 768,
"h264_profile": "baseline",
"streaming_delivery_profile": "live"
},
{
"media_type": "image",
"id": "559697ece4b072e9641b840f",
"format": "jpg",
"label": "poster",
"width": 640,
"height": 360
},
{
"media_type": "image",
"id": "559697ece4b072e9641b8410",
"format": "jpg",
"label": "thumbnail",
"width": 160,
"height": 90
}
],
"packages": [
{
"package_type": "dash",
"renditions": [
"r1"
]
},
{
"package_type": "dash",
"renditions": [
"r2"
]
}
]
}
サンプルプロファイル (DRM)
ここでは、共通暗号化 (CENC) と DRM パッケージ (Widevine と PlayReady) を含む同じサンプルプロファイルを示します。
{
"account_id": 2728142649001,
"digital_master": {
"distribute": true,
"rendition": "passthrough"
},
"name": "dash-cenc-live",
"description": "This will produce 6 dash live renditions with cenc",
"renditions": [
{
"media_type": "video",
"reference_id": "av0",
"format": "m4f",
"audio_codec": "aac",
"audio_bitrate": 40,
"video_bitrate": 110,
"decoder_bitrate_cap": 200,
"decoder_buffer_size": 400,
"width": "400",
"height": "300",
"fixed_keyframe_interval": true,
"frame_rate": 30,
"force_aac_profile": "aac-lc",
"video_codec": "h264",
"h264_profile": "baseline",
"keyframe_rate": 0.5,
"streaming_delivery_profile": "live",
"type": "segmented"
},
{
"media_type": "video",
"reference_id": "av1",
"format": "m4f",
"audio_codec": "aac",
"audio_bitrate": 40,
"video_bitrate": 260,
"decoder_bitrate_cap": 400,
"decoder_buffer_size": 800,
"width": "400",
"height": "300",
"fixed_keyframe_interval": true,
"frame_rate": 30,
"force_aac_profile": "aac-lc",
"video_codec": "h264",
"h264_profile": "baseline",
"keyframe_rate": 0.5,
"streaming_delivery_profile": "live",
"type": "segmented"
},
{
"media_type": "video",
"reference_id": "av2",
"format": "m4f",
"audio_codec": "aac",
"audio_bitrate": 64,
"video_bitrate": 436,
"decoder_bitrate_cap": 600,
"decoder_buffer_size": 1200,
"width": "480",
"height": "360",
"fixed_keyframe_interval": true,
"frame_rate": 30,
"force_aac_profile": "aac-lc",
"video_codec": "h264",
"h264_profile": "baseline",
"keyframe_rate": 0.5,
"streaming_delivery_profile": "live",
"type": "segmented"
},
{
"media_type": "video",
"reference_id": "av3",
"format": "m4f",
"audio_codec": "aac",
"audio_bitrate": 96,
"video_bitrate": 704,
"decoder_bitrate_cap": 800,
"decoder_buffer_size": 1600,
"width": "640",
"height": "480",
"fixed_keyframe_interval": true,
"frame_rate": 30,
"force_aac_profile": "aac-lc",
"video_codec": "h264",
"h264_profile": "baseline",
"keyframe_rate": 0.5,
"streaming_delivery_profile": "live",
"type": "segmented"
},
{
"media_type": "video",
"reference_id": "av4",
"format": "m4f",
"audio_codec": "aac",
"audio_bitrate": 128,
"video_bitrate": 1072,
"decoder_bitrate_cap": 1200,
"decoder_buffer_size": 2400,
"width": "720",
"height": "540",
"fixed_keyframe_interval": true,
"frame_rate": 30,
"force_aac_profile": "aac-lc",
"video_codec": "h264",
"h264_profile": "baseline",
"keyframe_rate": 0.5,
"streaming_delivery_profile": "live",
"type": "segmented"
},
{
"media_type": "video",
"reference_id": "av5",
"format": "m4f",
"audio_codec": "aac",
"audio_bitrate": 128,
"video_bitrate": 1672,
"decoder_bitrate_cap": 2000,
"decoder_buffer_size": 4000,
"width": "1280",
"height": "960",
"fixed_keyframe_interval": true,
"frame_rate": 30,
"force_aac_profile": "aac-lc",
"video_codec": "h264",
"h264_profile": "baseline",
"keyframe_rate": 0.5,
"streaming_delivery_profile": "live",
"type": "segmented"
},
{
"media_type": "image",
"format": "png",
"label": "poster",
"width": 640,
"height": 480
},
{
"media_type": "image",
"format": "png",
"label": "thumbnail",
"width": 160,
"height": 90
}
],
"packages": [
{
"drm": [
"playready",
"widevine"
],
"package_type": "dash",
"renditions": [
"av0"
]
},
{
"drm": [
"playready",
"widevine"
],
"package_type": "dash",
"renditions": [
"av1"
]
},
{
"drm": [
"playready",
"widevine"
],
"package_type": "dash",
"renditions": [
"av2"
]
},
{
"drm": [
"playready",
"widevine"
],
"package_type": "dash",
"renditions": [
"av3"
]
},
{
"drm": [
"playready",
"widevine"
],
"package_type": "dash",
"renditions": [
"av4"
]
},
{
"drm": [
"playready",
"widevine"
],
"package_type": "dash",
"renditions": [
"av5"
]
}
]
}
シルバーライトセキュリティ
特定のプラットフォームでは、ブライトコーブプレーヤーは、Silverlight フォールバックを使用して MPEG-DASH レンディションを再生します。セキュリティ上の理由から、Silverlight では、DASH コンテンツの提供元となるサーバーのドキュメントルートに clientaccesspolicy.xmlファイルが存在する必要があります。詳細については、このマイクロソフトの記事を参照してください。
clientaccesspolicy.xmlファイルのサンプルを次に示します。
既知の問題
- NS デフォルト(自動表示)のキャプション設定 メディアモジュールのテキストトラック DASHおよびマニフェスト内のキャプションと組み合わせて使用する場合、セクションはサポートされません。マニフェスト内キャプションは、ブライトコーブ製品のダイナミックデリバリーや SSAIなどで使用されます。この問題の回避策は、
<track>
アドバンスドブライトコーブプレーヤーの実装でタグを使用することです。詳細については、「プログラムによるビデオへのキャプションの追加」を参照してください。default
<track>
属性はタグとともに使用する必要があることに注意してください。