MediaMuxer.AddTrack(MediaFormat) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Добавляет трек с указанным форматом.
[Android.Runtime.Register("addTrack", "(Landroid/media/MediaFormat;)I", "")]
public int AddTrack (Android.Media.MediaFormat format);
[<Android.Runtime.Register("addTrack", "(Landroid/media/MediaFormat;)I", "")>]
member this.AddTrack : Android.Media.MediaFormat -> int
Параметры
- format
- MediaFormat
Формат мультимедиа для трека. Это не должно быть пустой MediaFormat.
Возвращаемое значение
Индекс трека для этого недавно добавленного трека, и он должен использоваться в элементе #writeSampleData
.
- Атрибуты
Комментарии
Добавляет трек с указанным форматом.
В следующей таблице приведены сведения о поддержке определенных ключей формата в выпусках Android. Ключи, помеченные как "+:", обязательны.
<table style="width: 0%"><thead<>tr><th rowspan=2>OS Version(s)</<>th td colspan=3MediaFormat
> key used for</><th/tr<>><>All Tracks/>><th th Audio Tracks</><>th th Video Tracks/th Video Tracks<<<>/th/<>thead><tbody><tr><tdandroid.os.Build.VERSION_CODES#JELLY_BEAN_MR2
></><td td rowspan=7>+:<MediaFormat#KEY_MIME
/td td td>< rowspan=3>+: MediaFormat#KEY_SAMPLE_RATE
,><<<br +: MediaFormat#KEY_CHANNEL_COUNT
, strong>codec-specific data<sup>AAC</sup></><strong/td td><rowspan=5>+: ,br>> +: MediaFormat#KEY_WIDTH
MediaFormat#KEY_HEIGHT
<<> ,br noKEY_ROTATION
, use #setOrientationHint setOrientationHint()
<sup>.mp4</sup,br><> +: <strong>codec-specific data<>sup AVC, MPEG4</><strong></td></tr tr><<>td/tdandroid.os.Build.VERSION_CODES#KITKAT
></td><></tr tr<>td/td<android.os.Build.VERSION_CODES#KITKAT_WATCH
>/><tr<>><td/tdandroid.os.Build.VERSION_CODES#LOLLIPOP
<<>> rowspan=4>, как описано выше, плюс<br> +: <сильные>кодеки<данных sup>Vorbis и .webm</sup></strong></td></tr tr<>><<>android.os.Build.VERSION_CODES#LOLLIPOP_MR1
td/td<>/tr trandroid.os.Build.VERSION_CODES#M
<>>><< td/td><td as> выше, плюс<br sup>AAC</><sup/td/tr tr><<>td/td<>><> tdandroid.os.Build.VERSION_CODES#N
<>, как выше, плюс<br>MediaFormat#KEY_BIT_RATE
><<-- {link MediaFormat#KEY_MAX_BIT_RATE}<sup>AAC, MPEG4/sup,br>> -->MediaFormat#KEY_BIT_RATE
<sup>MPEG4<</sup,br< sup#, .webm</>sup,br<>MediaFormat#KEY_HDR_STATIC_INFO
<>><>MediaFormat#KEY_COLOR_STANDARD
<>sup#</>sup,br><MediaFormat#KEY_COLOR_TRANSFER
< sup>#/sup,br< sup>#</>>sup,br>>MediaFormat#KEY_COLOR_RANGE
<< +<: <надежные>кодеки данных sup HEVC</sup></strong,br>>< codec-specific data<<>>sup VP9</sup></td/tr<><>td<> colspan=4<>p class=note><strong>Notes: </strong><br> #: хранение в метаданных контейнера.<br> .mp4, .webm…: для перечисленных контейнеров<br> MPEG4, AAC…: для перечисленных кодеков /td/tr tr><<>td<> colspan=4><p class=note>, что данные для кодека <для трека должны быть указаны с помощью этого метода. Кроме того, данные, относящиеся к кодеку, не должны передаваться или указываться с помощью #writeSampleData writeSampleData()
вызова. </td></tr></tbody></table>
В следующей таблице приведены сведения о поддержке кодека для контейнеров в разных выпусках Android:
<table style="width: 0%">thead<>tr th<>rowspan=2>OS Version(s)</th<>td colspan=3>Codec support/th Codec support</><<>th tr th>><OutputFormat#MUXER_OUTPUT_MPEG_4 MP4</><th>OutputFormat#MUXER_OUTPUT_WEBM WEBM</><th/tr></thead<>tbody<>tr<>tdandroid.os.Build.VERSION_CODES#JELLY_BEAN_MR2
<>/td td><rowspan=6,br,MediaFormat#MIMETYPE_AUDIO_AMR_NB NB-AMR
>MediaFormat#MIMETYPE_AUDIO_AAC AAC
<><<br,br,br,br><>>><MediaFormat#MIMETYPE_VIDEO_MPEG4 MPEG-4
MediaFormat#MIMETYPE_AUDIO_AMR_WB WB-AMR
MediaFormat#MIMETYPE_VIDEO_H263 H.263
<MediaFormat#MIMETYPE_VIDEO_AVC AVC
(H.264)</td td<>rowspan=3>Not supported</<>td/><tr tdandroid.os.Build.VERSION_CODES#KITKAT
><></>><<<>><android.os.Build.VERSION_CODES#KITKAT_WATCH
tr tr td/td/<><>tr tr><<android.os.Build.VERSION_CODES#LOLLIPOP
> td/><td rowspan=3,br<>MediaFormat#MIMETYPE_AUDIO_VORBIS Vorbis
MediaFormat#MIMETYPE_VIDEO_VP8 VP8
><></td/tr tr><><<>android.os.Build.VERSION_CODES#LOLLIPOP_MR1
td/></tr><tr><td/td><>android.os.Build.VERSION_CODES#M
</tr tr><><td/td td>android.os.Build.VERSION_CODES#N
<><>, как выше, плюс<br>MediaFormat#MIMETYPE_VIDEO_HEVC HEVC
(H.265)</<>>td td, как выше, плюс<brMediaFormat#MIMETYPE_VIDEO_VP9 VP9
<>/td<>/tr<>/tbody></table>
Документация по Java для android.media.MediaMuxer.addTrack(android.media.MediaFormat)
.
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.