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

Кто разрабатывал кодер/декодер MPEG4?

Литературы я уже накачал. Будет время закину на FTP, если будут заинтерисованные лица.

А вопрос к тем кто уже реализовывал кодер/декодер на ПЛИС или на DSP, с чего начинали, во что это вылилось, сколько времени забрало, есть ли готовые куски кода, корочки, функции?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно, потребуется вытягивать код Старый с Flash рабочей DVD-игралы со встроенным декодером MPEG4. DSP там не нужен...Ты хочешь сделать отдельным полным устройством с формированием выходного сигнала?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да. Стоит задача принять видеосигнал и в темпе лёта перевести его в mpeg4, а также другой канал в темпе лёта с mpeg4 в видео.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Комп+плата ввода-вывода (там DC10, например)...Это конечно не ход электронщика *)

Тебе нужно конечно контроллер скоростной, с возможностью доступа к большому количеству памяти, видеобуфер...При кодировании нужно будет в начале после декодера видеосигнала ставить АЦП для всех трех RGB составляющих, затем полученную цифру скидывать в буфер, причем не на один кадр, так как MPEG4 для кодирования нужна инфо о всей серии кадров между ключевыми, ключевые кадры надо на лету определять...

Декодер видеосигнала выполняется на одной мелкосхеме, на выходе - RGB и синхронизация. Вот для начала просто подсчитай необходимое быстродействие АЦП (их - 3 штуки будет, считай для одного) - пусть для ПАЛ это 50 полукадров в сек, каждый полукадр - 260 строк , пусть по гориз. - 720 элементов, тогда в секунду Твой АЦП должен делать 9360000 выборок. И так - 10 мегавыборок - то что надо нам, таких 3 штуки. Можно 16 битные (зайди на site maxim - недорогие АЦП с головой). Далее - память. Для 3 составляющих надо 3 буфера, длина буфера = максимальному интервалу между ключевыми кадрами (тут тоже проблемма - сигнал то не прогрессивный *))). Возьмем на 100 кадров. Тогда нам надо более 64M*3 = 192M только для входного буфера. Можно делать меньше, но тогда эффективность сжатия упадет (поэтому поточно недорогие устройства и не работают с MPEG4, а с mpeg2, где берут буфер на 1 секунду, сжимают ключевой кадр по JPEG, и fix расстояние между keyframes (25-29 кадров).

Память должна работать на 60MHz (только на запись) + 60Mhz (мы еще и читать должны между записями).

Далее - надо второй буфер. Это если идти по принципу - 1 буфер заполняется, со вторым ведется просчет, далее обрабатывается 2 буфер, а заполняется 1 й. И Твой алгоритм обработки должен быть так составлен, чтобы до того, как успеет заполнится один из буферов, второй должен быть полностью просчитан и скинут на выходной буфер (там - жесткий диск через память итд). При такой схеме в худшем случае за 3 секунды Ты должен(а) просчитать свои 100 кадров. Естевственно - все с постоянным битрейтом, который заранее выбирается.

Расчитать заранее необходимую мощность проца сложно - это от его системы комманд зависит, от Твоего кода, за сколько тактов в худшем случае он выполняется, естевственно -опираться на частоты P2 *))) никакого смысла нет *)

Продолжение следует *)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Видеокодер требует в 5 раз больше быстродействия, чем декодер.

MPEG4 очень трудоёмкий алгоритм(смотри черновик стандарта).

На сигнальном процессоре не успеть. Только FPGA+CPLD+FPGA_CPLD...

 

ISO_14496-2AMD1_MPEG4.pdf (11 Мбайт-не лезет в это письмо).

Я делал ведео кодер/декодер стандарта H.263

ISO_14496_2AMD1_MPEG4.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

интересная темка.

присоединился бы к реализации, правда будет ли время.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Стоит задача принять видеосигнал и в темпе лёта перевести его в mpeg4"

 

eslt' Philips coder vse pochti sam delaet.

MPEG1.....4

 

Polnoe MPEG4 delat' net smysla. deshevle Gotovyj kupit'.

 

A vot embedded-Video card s MJPEG delo nuzhnoe.

i resursov ne mnogo nado.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

MJPEG умеет делать только внутрикадровое сжатие, а межкадровое не умеет.

Поэтому и ресурсов не требует, но и сжимает хуже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Литературы я уже накачал. Будет время закину на FTP, если будут заинтерисованные лица.

 

Очень было бы интересно посмотреть на эту литературу.

А вообще можно было бы создать на фтп раздел - по обработке изображений. У меня к примеру есть кое какая литературка тоже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Очень было бы интересно посмотреть на эту литературу.

А вообще можно было бы создать на фтп раздел  - по обработке изображений. У меня к примеру есть кое какая литературка тоже.

Усистематизирую, сделаем. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И так - 10 мегавыборок - то что надо нам, таких 3 штуки. Можно 16 битные (зайди на site maxim - недорогие АЦП с головой).

 

16 бит на канал цвета - это перебор, 10-12 бит хватит за глаза да и дешевле обойдется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

eslt'  Philips coder vse pochti sam delaet.

MPEG1.....4

На какой частоте у Вас филипок работает? Не поделитесь ли реализацией?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да. Стоит задача принять видеосигнал и в темпе лёта перевести его в mpeg4, а также другой канал в темпе лёта с mpeg4 в видео.

 

ндя задача не тривиальная, есть след.вопросы :

1. Какое разрешение вы будете жать ? (CIF, D1, HD) ??

2. Какой фрейм рейт ?

3. Видео интерлейснутое или нет ?

4. Какой profile/level вы планируете использовать и реализовывать ?

5. Разжимать вы будете свой поток или любой ?

6. Будете ли использовать Rate Control ?

7. На какую цену решения вы закладываетесь ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да. Стоит задача принять видеосигнал и в темпе лёта перевести его в mpeg4, а также другой канал в темпе лёта с mpeg4 в видео.

 

ндя задача не тривиальная, есть след.вопросы :

1. Какое разрешение вы будете жать ? (CIF, D1, HD) ??

2. Какой фрейм рейт ?

3. Видео интерлейснутое или нет ?

4. Какой profile/level вы планируете использовать и реализовывать ?

5. Разжимать вы будете свой поток или любой ?

6. Будете ли использовать Rate Control ?

7. На какую цену решения вы закладываетесь ?

 

Добавлю еще один вопросик:

 

8. Усилия скольких человек планируете задействовать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

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