JS .mp3-плеер с загрузкой
От: VikDD  
Дата: 22.01.14 09:47
Оценка:
Задача — проигрывать музыку, точнее, mp3 файлы как один сплошной (т.е. пользователь видит одну сплошную полосу воспроизведения, скажем на 20 минут, а реально это 10 файлов по 2 минуты каждый) с возможностью быстро перемещаться в любую точку воспроизведения (фиксируя этот момент, грубо говоря, что бы его сохранить как "закладку").
Собственно, всё реализовал, сделал за основу был взят audio.js + управление им через jQuery. Создаю "список воспроизведения", аналогичный этому, разве что пользователь его не видит (в принципе, его даже не должно интересовать, что это не 1 20-ти минутный файл, а 10 2-х минутных), подгружаю новый файл при окончании старого, а так же нужный при клике на "полосе прогресса".
Но, есть нюанс, заключающийся в том, что если пользователь хочет переместиться в "любую точку", то он не всегда это может осуществить, т.к. соответствующий фрагмент ещё не подгружен (при клике на полосу я определяю какой это файл, подгружаю его, пытаюсь перемотать на нужное место, но не могу, т.к. он ещё не подгружен).
Я думал, может быть сделать несколько плееров-объектов, каждый "загрузить", а потом между ними переключаться. Но подвох в том, что все они загружают файл не полностью, а на 40-50 секунд, а догрузку осуществляют лишь по необходимости.
Собственно, вопрос — есть ли такой плеер, который бы позволял сразу подгружать в память все файлы (ну, максимум их будет 15 с суммарной длительностью до 25 минут). Меня не интересует время "инициализации" страницы (т.е. пока не подгрузится всё, что мне надо) и трафик. Важно именно удобство пользователя "кликнуть в нужное место — слушать с него".
С уважением, VikDD
Re: JS .mp3-плеер с загрузкой
От: ldarcy  
Дата: 23.01.14 22:20
Оценка:
Здравствуйте, VikDD, Вы писали:

VDD>Задача — проигрывать музыку, точнее, mp3 файлы как один сплошной


вытащить файлы на клиенте в блобы, а потом audioUrl = URL.createObjectURL(blob) и плейер покормить этими урлами?
Re[2]: JS .mp3-плеер с загрузкой
От: VikDD  
Дата: 24.01.14 10:36
Оценка:
Здравствуйте, ldarcy, Вы писали:
L>вытащить файлы на клиенте в блобы, а потом audioUrl = URL.createObjectURL(blob) и плейер покормить этими урлами?
Это FileAPI, как я понимаю? Просто у меня точно будут ИЕ8 пользователи, а там может не прокатить.
Но в любом случае — спасибо, попробую.
С уважением, VikDD
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.