Итак, вы сняли отличное видео и хотите поделиться им с обществом. Вы загружаете файл на Киви, и вдруг, ваше творение из 720p (или, не дай бог, 1080p) превращается во "что-то" размером 576x432, да еще и местами размытое. Конечно, для большинства пользователей эта разница несущественна, а большинство видео и так имеет качество ниже среднего, но все-же многим, особенно видеолюбителям, хочется чтобы их видео выглядело получше.
Во-первых, разберемся, почему файлы конвертируются. Причин несколько:
- Adobe Flash, который используется для просмотра видеороликов с сайта, поддерживает далеко не все форматы видео
- скорость нашего с вами Интернета еще не достаточно высока, чтобы без проблем смотреть высококачественное видео
Идеальных "промышленных" настроек конвертера, одинаково хорошо подходящих для всех роликов и дающих приемлемое время кодирования и размер выходного файла, к сожалению нет (хотя мы постоянно их ищем :) ), поэтому некоторые файлы конвертируются хорошо, а из некоторых получается каша.
Так как же этого добиться высокого качества видео на Киви? Все очень просто - создать файл со своими настройками качества и сжатия и загрузить его, минуя процесс конвертирования. Сделать это можно, подготовив файл, длительностью не более 40 минут, отвечающий следующим требованиям:
- поддерживается Adobe Flash и используется Киви
- имеет приемлемый битрейт
По первому пункту. Adobe Flash поддерживает контейнеры FLV (видеокодеки Sorenson Spark, On2 VP6, H.264, аудиокодек MP3), MP4 (видеокодек H.264, аудиокодек HE-AAC). На данный момент Киви использует второй вариант - контейнер MP4 с одним видеопотоком и одним аудипотоком, закодированными соответственно H.264 и HE-AAC. Для интересующихся - более подробно о форматах, поддерживаемых Flash (http://kb2.adobe.com/cps/402/kb402866.html).
По второму пункту. 3 Mbps - 3 мегабита в секунду - это примерное ограничение битрейта видео+аудио. Честно говоря, проверяется не совсем битрейт в техническом смысле, а просто отношение размера файла в битах к длительности в секундах.
Файлы, отвечающие первому пункту и имеющие битрейт ниже величины, указанной во втором пункте конвертироваться не будут, то есть, будут отданы пользователям практически в своем первозданном виде (за исключением небольшой дополнительной технической информации). Так что дерзайте!
Если нужно, могу примерно рассказать, как это делается с помощью ffmpeg, хотя примеров в Сети достаточно. Вот, например, несколько ссылок, которые Google дал первыми:
http://uppod.ru/talk_70
http://amvnews.ru/index.php?go=Pages&id=7&in=view
http://forum.kinozal.tv/showthread.php?t=13455
Ну и, наконец, вопрос волнующий всех. На данный момент поддержка HD-контента технически не осуществима - используются слишком медленные хранилища, и передача контента с центрального хранилища на раздающие сервера будет занимать неприемлемо долгое время. Но, скажу по секрету, HD скоро будет (по слухам - летом ;), так как мы планируем закупать скоростные хранилища, в работе которых задержка на копирование будет отсутствовать.