2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Mathematica 10.0: экспорт анимаций в AVI-формат
Сообщение23.09.2015, 23:13 


24/07/14
138
При создании в Математике анимаций в AVI-формате полученный файл имеет огромный размер. Например одна и та же 20-секундная анимация в FLV весит 7 Мб, а в AVI – 1 400 Мб, т.е. в 200 раз больше, при одинаковом качестве картинки.

Анимацию делаю следующим образом: сначала создаю в Математике набор кадров и сохраняю их на диске в формате .PNG, потом, когда все кадры созданы, импортирую их в Математику в виде таблицы TABLE и наконец экспортирую в анимацию Export["movie.avi", TABLE, "FrameRate" -> 30].

Можно ли как-нибудь сделать нормальный экспорт в AVI? Другие форматы, тот же FLV, например, не подключаются к PowerPoint, или если и подключаются, то с большим трудом и очень нерационально.

 Профиль  
                  
 
 Re: Mathematica 10.0: экспорт анимаций в AVI-формат
Сообщение24.09.2015, 20:04 


24/01/09
1228
Украина, Днепр
Дело не в AVI, это только контейнер. Проблема в том, что Математика не сжимает кадры, помещая "как есть".
Самый простой вариант - прогнать получившееся через какой-то видеокодер, тот же Virtual Dub.

Вроде для .qt есть опция кодирования, можно попробовать.

 Профиль  
                  
 
 Re: Mathematica 10.0: экспорт анимаций в AVI-формат
Сообщение25.09.2015, 00:16 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
В справке по формату AVI так и написано:
Цитата:
Export generates uncompressed RGB frames, using a color resolution of 8 bits per channel.
_Er, а что, если сначала сохранять не в PNG, а в JPEG?

 Профиль  
                  
 
 Re: Mathematica 10.0: экспорт анимаций в AVI-формат
Сообщение25.09.2015, 22:46 


24/07/14
138
Aritaborian в сообщении #1056413 писал(а):
_Er, а что, если сначала сохранять не в PNG, а в JPEG?
Попробовал. Во-первых, JPEG портит картинку при экспорте. И весит при этом в несколько раз больше, чем PNG. Во-вторых, разницы при экспорте AVI нет. Размер файла один и тот же, хотя JPG экспортируется в AVI гораздо быстрее. При экспорте в FLV из JPEG размер получается в несколько раз больше, чем при экспорте из PNG.
Theoristos в сообщении #1056337 писал(а):
Проблема в том, что Математика не сжимает кадры, помещая "как есть".
Если Вы имеете в виду то, что исходные картинки в Математике имеют большой размер, то мне кажется тут дело не в этом, потому что картинки сохранены на диске в уже нормальном размере. Чисто папка с кадрами например весит 100 Мб, а полученный из нее AVI-файл – 2 Гб. В это же время FLV будет весить всего 10 Мб.

На случай, если проблема не будет решена, может кто-нибудь посоветовать хороший конвертер из FLV в AVI? Я попробовал уже штук пять их, и все хоть в каком-то месте, но обязательно сделают что-нибудь криво.

 Профиль  
                  
 
 Re: Mathematica 10.0: экспорт анимаций в AVI-формат
Сообщение28.09.2015, 08:06 


24/01/09
1228
Украина, Днепр
_Er в сообщении #1056708 писал(а):
При экспорте в FLV из JPEG размер получается в несколько раз больше, чем при экспорте из PNG.

Насколько понимаю, там слабенький GZip архиватор работает. На картинках с равномерной заливкой будет выигрыш.

_Er в сообщении #1056708 писал(а):
Theoristos в сообщении #1056337 писал(а):
Проблема в том, что Математика не сжимает кадры, помещая "как есть".
Если Вы имеете в виду то, что исходные картинки в Математике имеют большой размер, то мне кажется тут дело не в этом, потому что картинки сохранены на диске в уже нормальном размере. Чисто папка с кадрами например весит 100 Мб, а полученный из нее AVI-файл – 2 Гб. В это же время FLV будет весить всего 10 Мб.

Говорил о том, что при стандартном кодировании видео, определяется и сохраняется (с потерями) разница между картинками, так что для 10-секундной неподвижной хороший кодек использует памяти как всего на одну картинку, а не будет пихать 10*30 отдельных картинок.
Если конечный файл ещё и весит в 20 раз больше чем сами картинки - есть подозрение, что они в данном случае в Математике хранятся не как JPEG, а как банальный битмап. И сохраняются в видео так же, ужасный вариант.


На случай, если проблема не будет решена, может кто-нибудь посоветовать хороший конвертер из FLV в AVI? Я попробовал уже штук пять их, и все хоть в каком-то месте, но обязательно сделают что-нибудь криво.

Тут всё на любителя, говорят новейший стандарт H265 хорошо жмет такое слайдовое видео. Но пока экзотика.
Из универсальных конвертеров посоветую бесплатный XMedia Recode http://www.xmedia-recode.de/en/download.html
Но не уверен, что есть глубокий смысл переводить именно в flv, как говорил, avi - только контейнер. Для кодирования-сжатия просто avi-шек можно посоветовать классический VirtualDub http://www.virtualdub.org/ .
В любом случае, скорее всего нужны будут установленные на машину видеокодеки (для 64-битных систем с этим есть некоторая проблема) и небольшая настройка кодирования для получения наилучшего размер/качество.
Плюс, скажу, что если презентация предполагается на какой-то чужой машине гнаться за редким форматом сжатия не стоит - такого кодека может не найтись и тогда видео вообще не будет показываться.

 Профиль  
                  
 
 Re: Mathematica 10.0: экспорт анимаций в AVI-формат
Сообщение28.09.2015, 12:08 


24/07/14
138
Theoristos в сообщении #1057231 писал(а):
Тут всё на любителя, говорят новейший стандарт H265 хорошо жмет такое слайдовое видео. Но пока экзотика.
Я не буду сжимать AVI, который выдает Математика, хотя бы потому что она портит качество картинки при экспорте в AVI. Так что я как и раньше буду экспортировать в FLV и попробую конвертировать его в AVI.
Theoristos в сообщении #1057231 писал(а):
Плюс, скажу, что если презентация предполагается на какой-то чужой машине гнаться за редким форматом сжатия не стоит - такого кодека может не найтись и тогда видео вообще не будет показываться.
Поэтому и хочу конвертировать в AVI. Видео в FLV я даже на своей машине пока не смог подключить к презентации (SWF, например, смог, но с ним неудобно работать). А AVI вроде бы как чуть ли не самый распространенный формат, поэтому я попробую работать с ним. Вот только очень странно, что в Математике не сделан нормальный экспорт в этот "самый распространенный формат".

За конвертеры спасибо. Попробую.

 Профиль  
                  
 
 Re: Mathematica 10.0: экспорт анимаций в AVI-формат
Сообщение28.09.2015, 16:24 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
_Er, вам вроде бы всё качественно объяснили, но вы продолжаете путать медиаконтейнеры и кодеки. AVI — медиаконтейнер, а не алгоритм сжатия аудио- и видеопотока, не кодек. Данные, упакованные в файл с расширением AVI, могут быть сжаты с помощью разных алгоритмов. С другой стороны, данные, сжатые определённым алгоритмом (кодеком), могут быть упакованы в какой-то другой контейнер. К примеру, MKV.

 Профиль  
                  
 
 Re: Mathematica 10.0: экспорт анимаций в AVI-формат
Сообщение29.09.2015, 00:02 


24/07/14
138
Aritaborian, можно конкретно, где я что тут путаю? А то я пока что не очень понимаю, в чем проблема.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: DariaRychenkova


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group