Ответ 1
Только H264 имеет аппаратное декодирование в iOS. Это означает сопоставимую производительность видео с родным проигрывателем только для H264 (в лучшем случае) декодирования для Sorenson и VP6 (даже с низкими разрешениями).
"AIR 3 для iOS использует объект StageVideo для видео H.264 с аппаратным декодированием, ограниченный поддержкой для функций NetStream. AIR 3 для iOS также поддерживает кодеки On2 и Sorenson через объект StageVideo. Эта поддержка не использует аппаратное декодирование, и это не ограничивает функциональность NetStream". flash.media.StageVideo
FLV и MP4 являются форматами инкапсуляции. FLV может содержать VP6 + MP3 или H264 + AAC (или любой из них в одиночку). MP4 может содержать H264 + AAC. Документы ничего не говорят о том, что FLV не поддерживается iOS.
Однако, в iOS, если FLV/H264 не будет воспроизводиться, вы не сможете перевести его на MP4 "на лету" из-за следующего ограничения (иначе вы потеряете аппаратное декодирование): "Примечание. Этот метод не поддерживается для видео H.264 в AIR 3.0 для iOS". flash.net.NetStream:: appendBytes()
Ничего не сказано о Sorenson или VP6, которые не были отправлены на пересылку на лету (таким образом, они должны быть).
В любом случае вам не нужно добавлять appendBytes, если вы не планируете делать какие-то очень продвинутые вещи, например, переключать битрейты на лету без каких-либо перерывов во время игры.
Прямая трансляция требует чего-то подобного из того, что делает appendBytes. Поскольку требуется аппаратное декодирование H264 и не имеет программного режима, вы не получите H264 для живых потоков.
"Оказывается, потоковая передача видео H264 в реальном времени не отображается на устройствах iOS в Adobe Air. Другие видеокодеки будут работать (H263), но не для H264. Вы будете потреблять фид, но только слышу звук. Я подтвердил это после разговора с членами команды разработчиков Adobe Air". Из Форумы Adobe
Насколько хорошо декодирование H264 на разных процессорах Apple ARM действительно сильно зависит от настроек кодирования видео (B-кадры или ключевые кадры, битрейты и т.д.) и, тем не менее, у вас есть динамический контент, статический контент, быстрые сцены переключения, разрешение, цвет паллеты и т.д.
Вывод: Используйте FLV или MP4 (в зависимости от того, что вам больше подходит), с H264 + AAC внутри. Поэкспериментируйте с настройками кодирования или множеством видео, на которые вы нацеливаетесь (если есть). Определите, что является самым низким (самым старым) устройством iOS, на которое вы хотите настроить таргетинг, и протестируйте его.