PDA

Просмотр полной версии : Параметр сжатия jpg и опция "use imported jpeg data"


Stargazer
27.02.2009, 15:33
У нас развернулась дискуссия по поводу того, нужно ли использовать оптимизацию графики перед импортированием во флеш или нет (из соображения, что фотошоп сжимает в jpeg лучше, чем флеш).

Я исходил из соображения, что флеш в любом случае пересжимает jpeg при компиляции до тех пор, пока мне не напомнили про опцию "use imported jpeg data". Теперь я уже не столь уверен. Действительно ли при использовании этой опции флеш компилирует jpg "как есть" или он всё-таки пересжимает картинку, основываясь просто на информации о качестве исходного jpeg?

Wolsh
27.02.2009, 16:09
Как есть. Больше не пережимает.
Иначе как Вы себе представляете? Загрузили в него 50% качества, он посмотрел - ага, 50, давай ка я сожму ее еще в 50% ??? Вы не забывайте, что джипег это не зип, исходного-то качества в картинке не сохраняется))))) Сжатие от сжатого будет серьезно портить качество. Ответ - никак не сжимает при включении этой опции.

Stargazer
27.02.2009, 16:29
Конечно. Логичнее всего оставлять без изменений.

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

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

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

Вот я и подумал, что если то, что я слышал ранее - правда, то единственный способом увязать всё это вместе - это предположить, что флеш берёт из jpeg информацию о сжатии, после чего сжимает так, чтобы конечный результат соответствовал степени сжатия оригинала (например, сжатие в jpeg2000 позволяет задавать конечный размер картинки и подбирает качество автоматически).

Идея, конечно, странная, но подумав, решил, что и не такая уж она бредовая. Нужно проверить. Всё-таки, как-то неприятно оттого, что я так заблуждался (и других людей успел пообманывать). Поэтому не хочется так сразу на слово расставаться с привычной мыслью.

Wolsh
27.02.2009, 23:16
предположить, что флеш берёт из jpeg информацию о сжатии, после чего сжимает так, чтобы конечный результат соответствовал степени сжатия оригинала"сжимает так" - что? Оригинала-то нет! Есть уже ужатая картинка. И еще раз - это зип или рар сжимает данные, не изменяя их а сохраняя, поэтому называется "архив". А джипег сжимает ЗА СЧЕТ ПОТЕРЬ. За счет удаления неважной информации. Вы не можете взять джипег с качеством 10% от оригинала, открыть его в фотошопе и сохранить с качеством 80%. Это будет 80 от 10, т.е. 8% от оригинала. Надо ли еще чтото говорить?

Stargazer
28.02.2009, 01:53
Упрямец :).
Надо ли еще чтото говорить? Я бы предпочёл поговорить.

Я знаю как устроен и rar и jpg, а сжатием через вейвлеты я сам занимался несколько месяцев - поэтому что такое сжатие с потерями и без потерь я себе чётко представляю. Я работаю программистом и можно сказать, что достаточно профессионален в этой области (не слишком большой практический опыт по молодости лет, но я постоянно смотрю информацию и усваиваю что-нибудь новое).

Так вот.
Речь не о том, что логично, а что нет. Речь о том, как устроен формат swf и как происходит привдение данных к этому формату.

Например, во многих случаях флеш не моргнув глазом пересжимает jpg из более плохого качества в "более хорошее" (кавычки поставил специально). Вот скажите, есть в этом смысл или нет?

...
В основном, я недеюсь на отзывы специалистов, которые знают устройство начинки swf либо имеют большой практический опыт в плане оптимизации флешек. В идеале - был бы очень рад, если бы кто-то меня ткнул в спецификацию swf (совсем в идеале - на той странице, где написано, как флеш хранит в swf графику).


Я и не думаю, что прям уж вероятно, что флеш ведёт себя именно так, как я описал. Но если это так и есть - то я не удивлюсь.

Итак. Если у кого-то есть лишнее время и полезная информация - мне бы было очень любопытно :).

Wolsh
28.02.2009, 02:30
Вот скажите, есть в этом смысл или нет?Смысл в том, что ваш джипег 10% от оригинала для него и есть оригинал. Поскольку оригинала он никогда в глаза не видел. Это Вы знаете, что есть оригинал, пересохраненный с качеством 10%. Для него это - Оригинал, который он может сжать в 80% качества. Т.е. сделает с него попиксельный битмап и ужмет этот битмап с сохранением 80% изначальной информации... Право, я чувствую себя неловко, объясняя такие очевидные вещи маститому программисту.