Поделиться через


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_WIDTHMediaFormat#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-4MediaFormat#MIMETYPE_AUDIO_AMR_WB WB-AMRMediaFormat#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_WATCHtr tr td/td/<><>tr tr><<android.os.Build.VERSION_CODES#LOLLIPOP> td/><td rowspan=3,br<>MediaFormat#MIMETYPE_AUDIO_VORBIS VorbisMediaFormat#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.

Применяется к