Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Видеоконвертер, очумелые ручки 
:(
    Опции темы
Riddik
Дата 16.6.2009, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 2.12.2006

Репутация: нет
Всего: нет



Всем привет!

Как самому написать видеоконвертер? Например, из mp4 в avi или в mpeg2? На GUI пофиг - хоть в консоле, для себя надо) 

С чего начать, куда копать?
PM MAIL   Вверх
jonie
Дата 16.6.2009, 19:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 15
Всего: 118



с исходников mplayer например начать. там есть конвертор.


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
andrew_121
Дата 16.6.2009, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



libffmpeg


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Riddik
Дата 17.6.2009, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 2.12.2006

Репутация: нет
Всего: нет



Спасибо!

Значит, только вариант смотреть на уже готовую реализацию. Почти копипаст ). 
PM MAIL   Вверх
Earnest
Дата 17.6.2009, 09:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 53
Всего: 183



Ну почему же. Можешь проштудировать описание форматов, которые собираешься конвертировать. И написать все ручками с нуля.


--------------------
...
PM   Вверх
andrew_121
Дата 17.6.2009, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Цитата(Earnest @  17.6.2009,  09:54 Найти цитируемый пост)
Ну почему же. Можешь проштудировать описание форматов, которые собираешься конвертировать. И написать все ручками с нуля. 

Ага. И пол жизни провести занимаясь только этим)))


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Любитель
Дата 17.6.2009, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Если нужно написать сам конвертер, а не кодек для конкретного формата или сплиттер конкретного контейнера - то лучше использовать готовые библиотеки smile


--------------------
PM MAIL ICQ Skype   Вверх
Riddik
Дата 17.6.2009, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 2.12.2006

Репутация: нет
Всего: нет



А если нужно просто принцип понять - как это делается, по-сути один бинарный файл перегнать в другой - я правильно говорю?
Тогда нужно действительно смотреть описание форматов?
PM MAIL   Вверх
Любитель
Дата 17.6.2009, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Просто принцип понять - тогда написать конвертер из одного конкретного формата в другой конкретный формат. И опять так - большинство контейнеров предполагают возможность использования разных кодеков...


--------------------
PM MAIL ICQ Skype   Вверх
jonie
Дата 17.6.2009, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 15
Всего: 118



Цитата
А если нужно просто принцип понять - как это делается, по-сути один бинарный файл перегнать в другой - я правильно говорю?

есть кодеки видео\аудио, а есть контейнеры, которые хранят потоки, кодированные в указанных для потока закодированных данных. Например AVI, MKV - это контейнеры. А вот всякие divX, xVid, mpeg3 и другие это уже принципы кодирования. Про принципы кодирования можно прочитать погуглив по слову "DSP" (digital signal processing). Так что перекодирование весьма не тривиальный процесс и, обычно напрямую не производится. Производится сначала декодирование в raw формат (несжатый) потока, кодированного одним алгоритмом, а уже затем сжатие потока указанным кодеком. Именно по этой причине запись например videoCD из avi файла в программе вроде Nero занимает столь значительное время.

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


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Riddik
Дата 18.6.2009, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 2.12.2006

Репутация: нет
Всего: нет



jonie, большое спасибо! 
Иными словами, если уж этим заниматься, то явно не на пару вечеров, а сигать с головой в эту тему.
PM MAIL   Вверх
andrew_121
Дата 18.6.2009, 02:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Ага)


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0507 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.