![]() |
Работа музыки и ресурсных файлов
простите за флуд , кто имеет опыт использования музыки и ресурсов в мидлетах ?
две простейшие программы у меня компилятся но работать упорно не хотят как надо (ни на телефоне ни даже на компе в эмуляторе) . вопрос , что неправильно , ставит в полнейший ступор . просто нЕгде ошибке спрятаться . что написано в справке я уже читал . вот код var res : resource; line : string; index : integer; begin res := openResource('/data.txt'); setcolor(0,0,0); if (resourceAvailable(res)) then begin line := readLine(res); closeResource(res); end; showForm; index := formAddString('Line is: ' + line); repaint; delay(5); end. (эксперимент на использование ресурсов) program NewProject; uses user; var exit:command; begin exit:=createcommand('Выход',CM_BACK,1); addcommand(exit); setcolor(100,100,100); if openPlayer('/Rahmaninov.mp3','audio/mpeg') then drawtext('Слушаем музыку',7,7) else drawtext('ошибка',7,7); if startplayer then delay(2000); clrscr; drawtext('продожлжительность музыки',7,17); drawtext(integertostring(getPlayerDuration),7,27); delay(getPlayerDuration); repeat delay(100); until getclickedcommand=exit; repaint; delay(2000); end. (на использование музыки) |
Ответ: Работа музыки и ресурсных файлов
1. проверь регистр музыкально файла. Большие буквы<>маленькие буквы.
2. Формат mp3 (впрочем, как и wav) имеет в своих настройках 100500 кодеков. На мобильных устройствах работают только некоторые. |
Ответ: Работа музыки и ресурсных файлов
1 пункт - исключено , я не настолько юзер . 2 - увы , возможно
|
Ответ: Работа музыки и ресурсных файлов
1 пункт - исключено , я не настолько юзер . 2 - увы , возможно . а ресурсные файлы ???? в чем проблема ? я читал что JAVA внутри себя понимает UTF-8 , ну и создал data.txt блокнотом в UTF-8. смотрю в книгу вижу фигу . даже если у меня была задержка после основного кода программы delay(5), мидлет выдавал титанически большую задержку . при попытке выяснить , какое значение принимает resourceAvailable(res) , цикл if не дал ни одну из своих двух веток-результатов . толи выполнение виснет даже раньше , толи определение resourceAvailable(res) глючит . из-за этих двух казалось бы элементарных вещей я не могу написать мои классные задумки . ПЛИЗЗЗЗЗ ХЕЛП !!!!
Цитата:
|
Ответ: Работа музыки и ресурсных файлов
Начет ресурсов могу подсказать 2 вещи:
1. Всегда сать в конце ресурса (доплнительно) пустую строчку, иначе при прочтении виснет. 2. Если используеш MidletPascal второй версии, и тебе хочеться читать из ресурса русские символы, держи: PHP код:
|
Ответ: Работа музыки и ресурсных файлов
Я так русский текст из ресурсов загружаю:
Код:
openres('lang.txt'); |
Ответ: Работа музыки и ресурсных файлов
Дык тут даже библиотека не нужна =)
|
Ответ: Работа музыки и ресурсных файлов
Во-первых, resloader вроде как жрет меньше оперативки, чем стандартные функции, во-вторых, проще перекодировать в utf8, и в-третьих, стандартные функции вроде как не видят конец файла.
|
Ответ: Работа музыки и ресурсных файлов
Цитата:
|
Ответ: Работа музыки и ресурсных файлов
Перепутал немного. Вот нормальный вариант:
Код:
openres('lang.txt'); |
Ответ: Работа музыки и ресурсных файлов
Цитата:
|
Ответ: Работа музыки и ресурсных файлов
Работаю с 2.01 , но есть 3.4 , в удобстве которого я пока не уверился
AVL , не знаю какую версию библиотеки реслодер используешь ты ( коих тут около двух-трех ) , но снова не работает надеюсь , мне не придется писать свою версию библиотеки , в которой я всю понимаю и знаю что к чему (( |
Ответ: Работа музыки и ресурсных файлов
придется экспериментировать с файлами и кодировками . хотя это титанически неудобно . а насчет музыки никто ничего полезного не скажет ??????
|
Ответ: Работа музыки и ресурсных файлов
Цитата:
|
Ответ: Работа музыки и ресурсных файлов
PHP код:
|
Ответ: Работа музыки и ресурсных файлов
Цитата:
PHP код:
И вообще, держись подальше от форм, с ними одно мучение. |
Ответ: Работа музыки и ресурсных файлов
repaint при showform не нужен
|
Ответ: Работа музыки и ресурсных файлов
я человек ленивый , поленился писать новый код
PHP код:
как вы вообще можете достучаться до клавы ????? |
Ответ: Работа музыки и ресурсных файлов
простите , в режиме canvas этот GetKeyPressed работает
может кому пригодится ерундовая процедурка Код:
procedure clrscr; |
Ответ: Работа музыки и ресурсных файлов
Вложений: 1
а насчет музыки никто ничего не скажет ?? просто влом лезть в Sound Forge не зная точно поможет ли. у кого уже получалось вшивать в игры какую-либо музыку ??? поделитесь опытом
заодно и напишу список вопросов интересующих меня. увы,я не настолько терпеливый чтобы самостоятельно отвечать на них на ВСЕ СРАЗУ. 1. Какой средний размер опер.памяти телефона ? сколько и каких переменных я могу себе позволить для хорошей работы почти на любом телефоне ?? сколько памяти отъедает каждая переменная типа integer например?? этого нема в учебниках и справках по мидлетпаскалю , а хотелось бы там видеть 2. Какие пределы и возможности у хранилищ кроме записи строк? сколько инфы я могу туда накачать в одно хранилище ? сколько их может быть всего , и т.д и т.п. 3.Подскажите какие-нить декомпиляторы поудобнее и попроще в использовании 4.Где-то тут на булке видел сообщение что java-платформа работает не как процессор. по типу - "нашел эту команду- выполнил" . или что-то вроде того. поясните 5.Где-то тут же на булке видел что для некоторых телефонов для пикселя есть параметр "прозрачность". Как в MP можно задать этот параметр или только на java ? 6.Посоветуйте книжки/учебники по java . не сильно замудреные, понятные . если не сильно испугаюсь сложности , буду изучать легендарный и (как говорят) один из самых сложных языков. 7.Какие штуки умеют замерять скорость работы алгоритмов ( я имею ввиду другие алгоритмы или что-нибудь еще , а не эмуль) , ФПС (FPS) телефона?? 9.Есть ли какой-нибудь список оптимальных алгоритмов , которым можно было бы пользоваться хотя бы для стандартных случаев ??? уж для отдельных случаев придется подбирать 10.Есть ли программы читающие файл побайтово ? чтобы все что прочитал вывел на экран . у блокнота например есть такая шняга - первый один или несколько файлов у него обозначение кодировки ( не помню как называется этот байт ). то есть уже не все что прочитал - вывел на экран. Хотелось бы видеть абсолютно все из файла чтобы например подбирать к незнакомой кодировке способ её прочесть 11.Слыхал я про сборщик мусора . Что считается мусором в памяти телефона ??? переменные к которым давно не обращались ?? 12. У меня на телефоне иногда вылетает сообщение - "Недостаточно свободного места - освободите память" . Это при том что на самом деле 1 Мб есть ( у меня всего 10 Мб под пользовательские файлы :-D :-D :-D ). фигли он жалуется , раз место есть ??? в довершение покажу одну прогу-книжку которую заметил случайно . представьте себе, что вам нужно создать тему на телефон с помощью телефона. почитайте книжку, найдите нужные программы в интернете ... лично мне хватило только прочтения книжки . представив сколько на это уйдет терпения , забросил в самый дальний угол . На какой такой крайний случай темы придется лепить на телефоне ?? конечно полезно знать как слеплена каждая тема в архив , но лучше с помощью компа |
Ответ: Работа музыки и ресурсных файлов
Со звуками вообще проблемы редко бывают, либо регистр в имени не соблюден, либо файл поврежденный, так обычно все воспроизводится, даже из ФС (соответствующей библиотекой).
Что касается памяти - это сугубо индивидуально для разных аппаратов, от сотен КБ до нескольких МБ. То же самое и с хранилищем (на сколько мне известно). Занимаемую оперативку надо не по размерам переменных считать, а мониторить под эмулятором или даже лучше прямо в телефоне. Декомпилятор можно использовать DJ Java Decompiler. Java это виртуальная машина, то есть код выполняется не процессором напрямую, а программным модулем ОС телефона. Прозрачность можно задавать только в объекте Image, для этого его нужно преобразовать в ARGB, установить прозрачность и преобразовать ARGB обратно в Image. Работает не на всех телефонах. Чтобы читать все байты файла любого формата, нужно использовать любой HEX-редактор. Сборщик мусора работает довольно хитро, я сам не вникал, главное, что "полезные" данные он точно не уничтожит. |
Ответ: Работа музыки и ресурсных файлов
Ну тоже внесу свою лепту в дискуссию.
Для того, чтобы узнать, сколько данных можно загрузить в память, пока он не повиснет, можно так: 1. Создаем некий графический массив (около 500 элементов) 2. Создаем цикл, который загружает изображение (что угодно) размером 120х120 в массив, и выводит цифру УЖЕ загруженных в память изображений. 3. Ждем, пока телефон не сдохнет. Следует запомнить последнюю цифру 4. С учетом того, что обычно 1 пиксель занимает 4 байта, 1 изображение кушает 120*120*4=57600 байт. Умножаем на количество успешно загруженных изображений. Да, это тупо способ, однако даёт весьма точную оценку общей памяти. Можно даже запеживать эту процедуру прямо в приложение, и вызывать его, скажем, кнопкой 7, чтобы быть в курсе - сколько еще данных можно запихнуть в память без вреда приложению. Насчет того, сколько занимает переменные: Integer - 4 байта Real - незнаю, честно. надо погуглить :В String - по 2 байта каждый символ (ибо ява юзает Юникод, таки да) Char - 1 байт Boolean - 1 бит (что какбэ очевидно) К сожалению, автор, видимо решил, что такой тип как Byte никому не нужен, и он отсутствует в мидлет паскале. А зря. Насчет вместимости хранилища - туда можно записать до фига всего. Лишь бы памяти на телефоне хватило. "5.Где-то тут же на булке видел что для некоторых телефонов для пикселя есть параметр "прозрачность". " Сейчас прозрачность есть практически в любом телефоне. Любое изображение, вне зависимости, если там хоть 1 прозрачный пиксель, будет иметь альфа канал, описывающий прозрачность каждого пикселя. Средствами самого мидлетпаскаля нельзя работать с альфа каналом, но зато можно с помощью библиотек. "6.Посоветуйте книжки/учебники по java . не сильно замудреные, понятные." Я и сам такие ищу. Как найду - сообщу :В "7.Какие штуки умеют замерять скорость работы алгоритмов" Можно просто взять, изамерить время (в миллисекундах) на выполнение алгоритма Оо. Стандартные функции МП: Код:
"9.Есть ли какой-нибудь список оптимальных алгоритмов , которым можно было бы пользоваться хотя бы для стандартных случаев ??? " Ну тебе может пригодиться алгоритм "сортировки-прорисовки" (не знаю, как это правильно называется), чтобы первыми прорисовывались те объекты, которые находятся выше (а не так, чтобы солнце затмевало тучу, и так, что бы камень, стоящий за деревом, прорисовывался позади него, а не поверх). Если интересно, могу раскрыть по подробнее эту тему. Потом еще может понадобится алгоритм сжатия информации, для пущей оптимизации. Хотя он нужен довольно редко. Ну и может быть какие нибудь алгоритмы шифрования (а лучше изобрети свой :В), чтобы спрятать некоторые ресурсы от сильно очумелых ручек (от модеров, например, если ты конечно не против, чтобы твое приложение ковыряли и модифицировали) "12. У меня на телефоне иногда вылетает сообщение - "Недостаточно свободного места - освободите память" . Это при том что на самом деле 1 Мб есть ( у меня всего 10 Мб под пользовательские файлы ). фигли он жалуется , раз место есть ???" скорее всего имеется ввиду оперативная память. А может, просто телефон тупит. "Попробуй выключить и снова включить"(с), так как мой телефон таким образом лечиться. |
Ответ: Работа музыки и ресурсных файлов
пардон . некоторые ответы как-то сильно очевидные , мог бы и сам додуматься
|
Ответ: Работа музыки и ресурсных файлов
эмм . а про шифрование (я знаком с основами и простейшими шифрами) . никакой шифр наверно не спасет он декомпилятора. короче если сильно уметь ковырятся , можно залезть и расшифровать любой ресурс и хранку
|
Ответ: Работа музыки и ресурсных файлов
Ну да, даже если зашифровать ресурсы, народные умельцы просто возьмут и подсмотрят алгоритм расшифровки, дизассемблировав ява класс.
Хотя можно потанцевать с бубном насчет запутывания кода. Но это уже отдельная тема. |
Ответ: Работа музыки и ресурсных файлов
хотя есть наверно способ. надобно теорию по алгоритмам с открытым ключом почитать. там вроде алгоритм зашифровки и проверки подлинности шифра просты, зато расшифровка жутко сложная.
чет я замахнулся сильно ))) такая безопасность информации в редких случаях нужна |
Часовой пояс GMT +4, время: 15:23. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot