![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 5
|
Здравствуйте!
У меня маленький вопрос. Я лепил mp3-плеер на локалке. Все замечательно работает но на локалке. Как только дело дошло до испытаний в интернете, случилось следующее: 1. ID3-теги читаются только после того, как звук полностью будет загружен. 2. Самодельный seek bar скачет, т.к. my_sound.duration во время загрузки меняется. Как бороться с первой проблемой - я ума не приложу. Вторая проблема кажется мне разрешимой: ведь еще до завершения загрузки можно получить общее кол-во данных... и кол-во загруженных. Получается, в случае когда звук еще не загружен (байтс лоадед != байтс тотал) мы можем динамически вычислить длину трека. То есть.. ну конечно если кол-во байтов целиком и полностью зависит от длины трека (в чем я кстати сомневаюсь), мы можем прикинуть сколько в загруженной длительности трека байтов и спроецировать это на общее кол-во байтов. И хоть как-то отрисовать сикбар... Господа, посоветуйте, пожалуйста, что делать... |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
1. Значит они записаны в конце файла;
2. Конечно изменяется, это время проигрывания загруженной части. |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 5
|
Ну хорошо... я просто не разбираюсь в спецификации мп3... нельзя разобрать id3-теги до полной загрузки - черт с ними, уберем их совсем.
Парит seek bar. Как определить суммарную длину трека (время) до (в процессе) загрузки? Или посоветуйте как выйти из положения? |
|
|||||
|
Регистрация: Jun 2008
Адрес: курский вокзал
Сообщений: 1,114
|
Выдаст в секундах
__________________
Я просто добрый шутник. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
alexeyco, надо сделать так, чтобы ID3-теги шли в начале файла (а это, кажется, теги первой версии). Тогда при получении тегов можно получить и время трека (тег TIME или как-то так).
scarbo, никаких секунд не будет, будет некая цифра, которая от реальных секунд такая же далекая, как Москва от Токио. |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 5
|
Ну а как (какой программой ли) сделать чтобы теги шли в начале?
|
|
|||||
|
Регистрация: Jun 2008
Адрес: курский вокзал
Сообщений: 1,114
|
ну не так уж и на много,на 2-4 сек,Понятно дело,что время трека можно и через xml и ID3-теги передавать.
__________________
Я просто добрый шутник. |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 5
|
Я пока вот что придумал:
function getDuration (my_sound:Sound) { var total = my_sound.getBytesTotal(); var loaded = my_sound.getBytesLoaded(); if (loaded == total) { _root.isLoaded = true; return my_sound.duration; } else if (my_sound.id3.TIME != undefined) { return my_sound.id3.TIME; } else { return my_sound.duration * (total / loaded); } } // getDuration(); Возникает другой вопрос - я пользовался AIMP'ом - так вот после очистки ID3 и его восстановлении ничего хорошего не произошло - то есть, переменная my_sound.id3.TIME не перестала быть undefined... помогите пожалуйста разобраться Последний раз редактировалось alexeyco; 13.11.2008 в 02:29. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Битрейты разные бывают, более того — переменные.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 19:15. |
|
|
« Предыдущая тема | Следующая тема » |
|
|