Перейти к содержанию

pulsar636

Новичок
  • Постов

    1
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные pulsar636

  1. В 01.10.2009 в 12:18, дядя Фёдор сказал:

    По поводу медиаплейера в прошивках DGS, его убогости, багов, поддержке (точнее, НЕ поддержке) форматов и что можно с этим сделать.

    Ситуация с медиа плейером весьма плачевная. Для того чтобы понять почему, нужно уяснить 3 основных вещи.

    Первое.

    В ресивере есть чип, который декодирует файлы в видео и аудио потоки. У чипа есть (большой) ряд ограничений по поводу того, что он может декодировать, а что не может. И никогда не сможет, потому что это чип, то есть железо и никакой "софт" не поможет это изменить. Чип разработан с рассчетом на стандарты DVB вещания, а не на стандарт BlueRay или DVD. Это к вопросу о том, почему вы никогда не услышите звука DTS или видео 1080p на этом ресивере... и еще пару дюжин форматов. И ответ на вопрос, "почему на компьютере играет, а на ресивере нет. Там же тоже Линукс!". Да, там Линукс, но декодирование осуществляется на компьютере не железом, а софтом. А на ресивере взять и "проинсталлировать видео кодек" или "другой плейер" просто так нельзя. Как нельзя микроволновку научить проигрывать mp3, хотя там тоже есть "какой то чип".

    Хорошо, скажете вы, но чип ресивера по крайней мере же рассчитан на воспроизведение HDTV (MPEG4) и MPEG2 для SD, и должен понимать звук DOLBY AC3 и PCM или MP3. Никто не просит, скажете вы, показывать BlueRay или DTS, покажите обыкновенный DivX нормально с MP3 звуком. Да, вы частично правы, и теперь перейдем ко второму.

    Второе.

    В теории, чип должен позволять проигрывать видео сжатое MPEG4 и звук MP3, но учитывая ограничения чипа, задача усложняется. Почитайте в Википедии, если сильно интересно, по поводу того СКОЛЬКО существует различных профилей и уровней кодирования под одним лейблом MPEG4. Драйверы чипа ST в IPBox заточены под воспроизведение стандартных DVB потоков, то есть малой горстки из этого огромного списка. При чем, только 25 или 50 кадров в секунду. Говоря короче, не всё MPEG4, что MPEG4.

    Что же мы имеем в реальности, в файлах "с Интернета"? Да абсолютно все, что угодно. Начиная с того, что огромная куча файлов не 25 и не 50 кадров в секунду, а 24 и 29 и 30 (это тоже стандарты, но другие). Продолжая тем, что для сжатия в MPEG4 используется какой угодно софт с какими угодно настройками (в КАЖДОМ профиле MPEG4, которых самих куча, есть еще куча "опций", и некоторые из этих опций не по зубам даже некоторым компьютерам). И заканчивая тем, что даже если все таки видео в таком формате, который чип потенциально может декодировать, еще есть и аудио, которое нужно теперь правильно синхронизировать.

    Аудио может иметь постоянный и переменный битрейт, и зачастую, для экономии на размере файлов используется переменный, что крайне противопоказано для таких чипов, как в этом ресивере, потому что (из за того как реализован сам формат mp3) для правильного подгона его по времени, нужна дополнительная обработка, уже не в железе, а в софте. А это уже "костыли" и "подпорки".

    Кроме того, одно и то же видео и аудио может находиться в разных контейнерах (AVI, MKV, MP4, VOB и т.д), откуда их нужно извлечь и скормить чипу. Если с MKV, который создавался уже с пониманием того, что нужен надежный стандарт, еще все не так плохо (в плане доставания из него потоков), то AVI - самый популярный контейнер - это один сплошной гадкий хак. AVI должен был умереть еще с Windows 3.11, но к сожалению выжил. И в этом процессе мутировал в совершенно отвратительный с точки зрения стандартов "формат", в который умудрились запихнуть DivX и XviD при помощи разных "подкруток болтов". В результате, не всё AVI, что AVI.

    А дальше еще возникают такие вопросы как "перемотка" во время проигрывания, что является темой для отдельного трактата по timecode и interleaving, который может в тех же AVI файлах быть совершенно по-разному реализован. Даже не буду этого касаться, а то никогда не закончу.

    Можно еще дальше много рассказывать по поводу форматов, но суть во всем этом одна: для того чтобы то видео и аудио которое потенциально может быть проиграно, начало проигрываться на "железе", нужно приложится к нему софтом до и во время проигрывания. Где мы подходим к заключительной части.

    Третье

    После пересмотра исходников корейского софта выяснилось следующее. Интерфейс плейера написан УБОГО и исходный код ЗАПУТАН ТАК, что его по-хорошему нужно переписать с нуля. Но самая главная проблема в том, что в конце концов поддержка форматов и такие проблемы как синхронизация аудио и видео упираются в пару библиотек компании ST - производителя главного чипа этого устройства. И исходников нет даже у корейцев, выпускающих эти устройства. А в этих библиотеках и есть главная засада и корень всего зла (синхронизация аудио и видео, перемотка, и поддержка форматов)

    Говоря другими словами, не ждите нормального плейера и не просите. Это всё - крики в бездну.

    Последнее

    Для тех, кому приведенные выше факты не внушают доверия, неубедительны или полны непонятных слов, теперь простым русским языком.

    Для начала, где на этом устройстве стоит пометка о том, что вы при покупке приобретаете полноценный мультимедиа комбайн? Если вы ожидаете от этого аппарата поддержки и проигрывания всякого разного, вы ошиблись в своем выборе. Первоочередная задача ресивера хорошо показывать и записывать каналы, а воспроизведение "не DVB" форматов - это уже третьестепенная фича.

    Все жаждующие нормально работающего медиа центра должны понять простой факт - чип этих ресиверов НЕ РАЗРАБОТАН для проигрывания альтернативных форматов в железе. Как следствие этого, всё проигрывание реализуется через кривые хаки в софте, который и так сам по себе до невозможности крив (потому что, как уже было сказано, в конечном счете все упирается в пару библиотек компании ST, которым явно эта тема неинтересна, потому что крайне сложна). Все эти "медиа плейеры" от команд хакеров (типа Энигмы и т.д.) - как мертвому припарка, потому что ни у одной "команды хакеров" нет исходников драйверов для видеочипа ST.

    Другое дело, скажем, продукция компании Sigma Designs, которая ИЗНАЧАЛЬНО заточена под воспроизведение всего подряд в железе, а не в софте! Мой медиа плейер Popcorn Hour, который уже несколько лет проигрывает и перематывает все на свете самым лучшим образом, включая HD 1080p, h.264, MKV, WMV HD и всякую другую экзотику, тому лучшее свидетельство! AzBox - единственный спутниковый ресивер на основе Sigma Designs, хотя и там у людей масса проблем и нереализованых хотелок.

    Давайте будем реалистами. И в следующий раз, перед покупкой подобного девайса, смотрите на каком железе он работает, чтобы потом самого себя не разочаровывать какими-то ожиданиями, взятыми с неба.

    Самое последнее

    Для тех, кто даже после всего этого считает, что можно сделать более-менее нормальный плейер. Да, наверное, все-таки можно сделать хоть что-то минимально толковое (очень ограниченное по форматам, но работающее получше), НО...

    - на это нужно убить месяцы времени, не занимаясь больше ничем другим

    - заниматься этим неблагодарным (ибо конечный результат не гарантирован!) занятием забесплатно может только мазохист. За платно - тоже.

    - если когда-то что-то более-менее нормальное и возникнет, то это будет сделано на основе (закрытых) разработок проивоздителя чипа ST самим же производителем и никем другим (и скорее всего, с этой линейкой - никогда)

    Самое-пре-самое последнее

    Для тех, кто дочитал и что-то понял и хочет теперь спросить так какой же формат потенциально имеет шансы на успех? Отвечаю.

    1) Видео должно быть в MPEG4 Advanced Simple Profile без наворотов типа QPEL и GMC и очень желательно 25 кадров в секунду.

    2) Аудио должно быть закодировано с постоянным битрейтом, а не переменным.

    3) При перекодировании видео и аудио лучше всего его засунуть в MKV (на худой конец - AVI с interleaving в 1 секунду)

     

×
×
  • Создать...