AS3 Встраивание ресурсов - «Предупреждение. Не удалось проанализировать поврежденные данные» - PullRequest
0 голосов
/ 18 августа 2010

У меня есть проект AS3, где я пытаюсь скомпилировать несколько изображений, звуковую дорожку и видео с помощью метаданных [Embed].Это требование продукта, чтобы они были встроены, поэтому передача по сети не вариант.

Я получаю действительно странное поведение - своего рода прерывистое повреждение скомпилированных данных.Иногда после компиляции проекта я запускаю swf, и он немедленно закрывается и пишет «Предупреждение: не удалось разобрать поврежденные данные» во флэш-журнал.Если я удаляю двоичный файл и очищаю проект, иногда он будет работать нормально после его повторной сборки.Иногда это не так.

Это, вероятно, самая странная часть этой проблемы, но иногда, когда я вижу эту ошибку, я могу физически переместить строки видео [Embed] в конец файла, затем очистить проект, и он соберети запустить без проблем.Иногда я перемещаю их обратно в начало файла, и он собирается и работает нормально.

Похоже, что это может быть ошибка в компиляторе.Кто-нибудь еще испытывал нечто подобное?Я нацеливаюсь на Flash 10.1 и использую sprout (http://projectsprouts.org) для создания моего проекта. Это строка mxmlc, которая используется для компиляции (mxmlc версии 4.1.0, сборка 16076):

mxmlc -as3 -static-link-runtime-shared-libraries=true -debug -default-background-color=#ffffff -default-size 712 400 -output=bin/ProjectName.swf -source-path+=.preprocessed/src -source-path+=.preprocessed/assets .preprocessed/src/ProjectName.as

Я попытался удалить опцию компилятора -debug и добавить опцию -optimize, но не повезло.

Все выполняется через препроцессор GNU C для некоторых других задач, поэтому, возможно, я попробуюудаление препроцессора и жесткое кодирование этих переменных ... Я попробую это и опубликую результаты завтра.

Любое понимание будет высоко ценится. Спасибо!

РЕДАКТИРОВАТЬ:

Этот проект будет динамически скомпилирован с различными ресурсами, встроенными в одну и ту же кодовую базу, поэтому переключение на что-то вроде Flash Builder для компиляции действительно не вариант ... это нужно сделать с помощьюкомандная строка mxmlc.

ОБНОВЛЕНИЕ:

Оказывается, что поврежденное сообщение с данными было связано с изображениями, созданными с помощью функции «Сохранить для Интернета» в Photoshop.я прямо как изображения PNG Я не понимаю сообщение.Тем не менее, временная природа компиляции фильма все еще остается проблемой.Теперь иногда, когда проект компилируется, он не выдает никаких ошибок компилятора, но я получаю пустое окно флеш-плеера.Если щелкнуть правой кнопкой мыши во Flash Player, откроется контекстное меню с сообщением «Фильм не загружен ...». Похоже, это не имеет ничего общего с тем, что сначала запускается через CPP.

[Скриншот]

Ответы [ 2 ]

1 голос
/ 20 августа 2010

Это, по-видимому, ошибка в mxmlc под Mac OS X. После публикации я заметил еще одно действительно странное поведение, поэтому я переключил всю кодовую базу на Windows 7. Там все работает, как и ожидалось (все еще используя Project Sprouts в качестве сборки инструмент).

0 голосов
/ 19 августа 2010

Flash Builder в порядке.

Можно ли разделить вашу проблему только для видео или музыки, или проблема справедлива для обоих включений?

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