Суббота
20.12.2025, 07:05
Krinkels Inc
Приветствую Вас Гость|
ГлавнаяФорумРегистрация Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Модератор форума: Gnom  
Модули Inno Setup
DaRKdemoNДата: Пятница, 20.05.2011, 21:56 | Сообщение # 31
Пользователь
Сообщений: 26
Статус: Offline
Quote (Shegorat)
Думаю также надо будет сделать тракбар текущей позиции при проигрывании песни. Это тоже в принципе несложно сделать.

Трекбар то несложно(для себя уже сделал на ботве), я замучился думать как преобразовать из позиции побайтно в час:мин:сек. если надо подскажу.
 
ShegoratДата: Суббота, 21.05.2011, 07:38 | Сообщение # 32
Местный гуру
Администратор
Сообщений: 150
Статус: Offline
Quote (DaRKdemoN)
я замучился думать как преобразовать из позиции побайтно в час:мин:сек. если надо подскажу.

С этим проблемы не вижу, учитывая что весь необходимый для этого функционал предоставляет библиотека. Кстати это я за 10 минут сделал, правда тракбар еще не приделывал.
Единственное что не радует, так это то что в инно фиксированный тип буфера при чтении из TFileStream - string, из-за этого возникают трудности с чтением ID3-тегов, стабильно читаются только ID2-теги, т.к у них фиксированный размер и не требуется узнавать hex-значения размера тега т.д..


Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
 
DaRKdemoNДата: Вторник, 24.05.2011, 14:37 | Сообщение # 33
Пользователь
Сообщений: 26
Статус: Offline
Quote (Shegorat)
С этим проблемы не вижу, учитывая что весь необходимый для этого функционал предоставляет библиотека. Кстати это я за 10 минут сделал

А я за 1,5 часа smile . Просто я пытался написать функцию которая бы преобразовывала из секунд в час:мин:сек, а когда практически её написал случайно наткнулся на function FormatDateTime и остальное время с ней баловался smile

Quote (Shegorat)
Единственное что не радует, так это то что в инно фиксированный тип буфера при чтении из TFileStream - string, из-за этого возникают трудности с чтением ID3-тегов, стабильно читаются только ID2-теги, т.к у них фиксированный размер и не требуется узнавать hex-значения размера тега т.д..

А вот с тэгами, к сожалению не могу вам ничего подсказать, так как пока с ними ещё не работал.

PS. Всё время удивлялся почему у всех скриптов на инно(в том числе и ваш модуль басс) регулируется громкость в самой системе, а не в отдельном канале(как в плейерах).Почему никто не пользуется BASS_ChannelSetAttribute?
 
DaRKdemoNДата: Воскресенье, 29.05.2011, 14:54 | Сообщение # 34
Пользователь
Сообщений: 26
Статус: Offline
Shegorat
У меня в строчке
Code
while S[length(S)]=' ' do SetLength(S, Length(S)-1);

такое
Code
Out Of String Range.


Quote (Shegorat)
Такое чувство что все это мне одному надо

Нет. По крайней мере мне надо (интересно увидеть пример работы с тэгами так как сам с ними не работал, но хотелоь бы научиться).

Добавлено (29.05.2011, 14:54)
---------------------------------------------

Quote (Shegorat)
Жду графику, чтобы переделать на ботву.

А я делал под WMP 11(правда так до сих пор и не доделал). Попробуй так же. biggrin
 
ShegoratДата: Понедельник, 30.05.2011, 07:11 | Сообщение # 35
Местный гуру
Администратор
Сообщений: 150
Статус: Offline
В общем пока было время доделал вывод ID3v1-тегов в виде всплывающего сообщения. Также сделал показ длительности песни. Жду графику, чтобы переделать на ботву.

UPD: 30/05/2011 7:10 (МСК)
  • Исправил ошибку с удалением пробелов (спасибо DaRKdemoN)
  • Поправил вывод всплывающего сообщения с информацией о песне



    Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
    Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
  •  
    SouthДата: Понедельник, 30.05.2011, 10:12 | Сообщение # 36
    Проверенный
    Сообщений: 8
    Статус: Offline
    Shegorat,

    ID3 тэги 2-ой версии не читаются, либо с кодировкой проблемы


    Сообщение отредактировал South - Понедельник, 30.05.2011, 10:13
     
    ShegoratДата: Понедельник, 30.05.2011, 10:51 | Сообщение # 37
    Местный гуру
    Администратор
    Сообщений: 150
    Статус: Offline
    Quote (South)
    ID3 тэги 2-ой версии не читаются, либо с кодировкой проблемы

    Скорее всего проблемы с кодировкой. Можешь залить пару файлов для тестирования? Теги ID3v2 криво читаются в инно, поэтому я пока не стал их трогать, только ID3v1.


    Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
    Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
     
    SouthДата: Понедельник, 30.05.2011, 15:17 | Сообщение # 38
    Проверенный
    Сообщений: 8
    Статус: Offline
    Shegorat, вот файлики для тестов http://ifolder.ru/23850774
    в свое время Виктор Добров меня тоже попинал с этими тэгами, да и файлы эти он мне скинул когда-то для тестов
     
    ShegoratДата: Понедельник, 30.05.2011, 19:32 | Сообщение # 39
    Местный гуру
    Администратор
    Сообщений: 150
    Статус: Offline
    Quote (South)
    Shegorat, вот файлики для тестов http://ifolder.ru/23850774 в свое время Виктор Добров меня тоже попинал с этими тэгами, да и файлы эти он мне скинул когда-то для тестов

    Спасибо. Я это исправил вроде, сейчас тестирую. А вот теги ID3v2 в инно никак не получается читать, т.к текст из TFileStream читается до первого знака #0 считая его завершающим...


    Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
    Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
     
    SouthДата: Понедельник, 30.05.2011, 21:32 | Сообщение # 40
    Проверенный
    Сообщений: 8
    Статус: Offline
    Quote (Shegorat)
    А вот теги ID3v2 в инно никак не получается читать, т.к текст из TFileStream читается до первого знака #0 считая его завершающим...

    если память не изменяет, то там не до #0 читать надо, надо получать размер "секции" и считывать соответствующее кол-во байт и из этого месива получать содержимое тэга
    могу попробовать переписать модуль с делфи на инно, правда не помню как там с кодировками вопрос решался
     
    ShegoratДата: Вторник, 31.05.2011, 07:11 | Сообщение # 41
    Местный гуру
    Администратор
    Сообщений: 150
    Статус: Offline
    Quote (South)
    если память не изменяет, то там не до #0 читать надо, надо получать размер "секции" и считывать соответствующее кол-во байт и из этого месива получать содержимое тэга

    Я знаю это. Я и пытаюсь получить длину ID3v2 тега. Заголовок ID3 тега состоит из 10 байт, первые 3 это всегда "ID3", затем 2 байта - версия IDv2 тега, затем 1 байт - это флаги, и затем 4 байта в которых записан размер ID3v2 тега.
    И я не говорил что я читаю до первого #0 wink
    Просто я неправильно определял размер тега, не производя нужных преобразований с байтами, потому мне и выдавало невесть что. Сейчас порывшись в гугле нашел модуль для работы с ID3v2 тегами, из него выдрал вычисление размера тега. Вроде нормально работает. Осталась только проблема с кодировками.
    P.S. Та ошибка про которую ты говорил не из-за кодировок. У меня не было проверки на наличие ID3v1 тега, и он всегда читал 128 байт в конце файла. А в том файле-примере не было этого самого ID3v1 тега.


    Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
    Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
     
    SouthДата: Вторник, 31.05.2011, 21:20 | Сообщение # 42
    Проверенный
    Сообщений: 8
    Статус: Offline
    Shegorat, да, тут ты прав, это я подзабыл
    и я уже почти переписал модуль на инно, пока не могу нормально получить номер трека в альбоме и с кодировкой остался вопрос. точнее перекодирование работает, но непонятно откуда там еще один невнятный символ берется, пока просто его выкидываю, а так разобраться надо будет. остальное все пашет. может сегодня допишу, если время позволит

    ЗЫ на твой PS - вполне логично. примеры так и подбирались, чтобы все проверить можно было

    ЗЗЫ в принципе модуль я написал, только он не хочет работать на юникодном инно, на анси работает smile . сейчас у меня уже нет времени ковыряться, если есть желание, то могу выложить, а дальше сам подправишь

    Добавлено (31.05.2011, 21:20)
    ---------------------------------------------
    Shegorat,
    вот, написал чтение ID3-тэгов Доступно только для пользователей
    проверял на 5.4.2(a) и 5.4.2(u), все компилится и вроде работает smile
    естественно здесь может быть куча ошибок, т.к. на тестирование у меня нет времени
    оптимизацией кода я тоже не занимался, в паре мест точно можно упростить код, я просто получил рабочий вариант и на этом успокоился

    ЗЫ к тебе просьба - писать модули без использования рестулсовской сборки, а то прежде чем что-то протестить или просто посмотреть приходится еще тратить время на шаманство.


    Сообщение отредактировал South - Четверг, 02.06.2011, 18:42
     
    Edison007Дата: Понедельник, 06.06.2011, 15:29 | Сообщение # 43
    Энтузиаст
    Проверенный
    Сообщений: 110
    Статус: Offline
    Shegorat
    Слушай, а реально сделать, чтобы в модуле басс, громкость уменьшалась только в инсталляторе, а в самой системе оставалась прежней?


    Кто не с нами, тот в запое...
     
    ShegoratДата: Понедельник, 06.06.2011, 16:02 | Сообщение # 44
    Местный гуру
    Администратор
    Сообщений: 150
    Статус: Offline
    Quote (Edison007)
    Слушай, а реально сделать, чтобы в модуле басс, громкость уменьшалась только в инсталляторе, а в самой системе оставалась прежней?

    Реально. Сделаю но попозже, сейчас времени нету...


    Как много дел считались невозможными, пока они не были осуществлены. (Гай Плиний Секунд)
    Не занимаюсь подключением FreeArc/ISDone к чужим скриптам.
     
    DaRKdemoNДата: Четверг, 09.06.2011, 17:30 | Сообщение # 45
    Пользователь
    Сообщений: 26
    Статус: Offline
    Quote (Edison007)
    громкость уменьшалась только в инсталляторе

    Раньше я этим вопросом тоже задавался, но потом как начал читать справку по басс многие такие же вопросы отпали(советую тоже почитать). Ответом на ваш вопрос будет функция BASS_ChannelSetAttribute со вторым параметром BASS_ATTRIB_VOL. Эксперементируйте biggrin
     
    • Страница 3 из 3
    • «
    • 1
    • 2
    • 3
    Поиск:


    Copyright Krinkels Inc © 2009 - 2025 Яндекс цитирования Яндекс.Метрика

    Бесплатный конструктор сайтовuCoz