ОглавлениеНазадВпередНастройки
Добавить цитату

Slice Me Nice

Программисты Spotify всерьез намерены создать первоклассный продукт. Пользователь должен мгновенно находить нужный трек и слушать его без задержки звука. Все крутится вокруг скорости, и всплывает цифра: 200 миллисекунд. Фредрик Ниемеле определяет: если музыка начинает звучать в течение 0,2 секунды, это воспринимается как «немедленно». Пропускная способность сети уже позволяет загружать треки быстрее, чем проигрывать их. Поэтому должна быть возможность начать воспроизведение трека, пока загружается его остальная часть.

Проблема с торрент-технологией в том, что фрагменты поступают беспорядочно. А если заставить протокол начинать с первых частей, все идет значительно медленнее. Именно эту задачу и решает команда Андреаса Эна. Комната с окнами на Риддаргатан и шторами в цветочек начинает походить на конференц-зал. Несколько недель обсуждений, постоянно исчерканная маркерная доска – и разработчикам, похоже, удается найти элегантное решение. Существующая торрент-система режет файлы «по высоте» – как хлеб для тостера. Только когда все фрагменты на месте, можно проиграть трек слева направо. Но если разрезать файл как булку для гамбургера, то есть послойно, «в ширину», каждый фрагмент будет представлять собой горизонтальную часть целого трека, от начала и до конца. В этом случае протокол может брать фрагменты и не по порядку. Треки начинают проигрываться сразу. Команда программистов не верит своим глазам: идея заработала с ходу, с первой попытки. Их серверы передают фрагменты – и сразу можно слушать музыку.

Но плеер должен работать и при нестабильном подключении. Поэтому программисты придумывают систему, которая загружает или буферизирует те треки, которые, как предполагается, пользователь захочет прослушать дальше. Всегда сложнее предугадать самый первый трек после текущего. Но если он есть в плей-листе, то остальные треки – кандидаты на скачивание – загружаются заранее и ждут очереди в кэше компьютера.

Разработчики пошли на хитрость: стриминг непрогнозируемо выбранного трека напрямую с собственных быстрых серверов Spotify. Только после начала прослушивания пользователя переключают на пиринговую модель с загрузкой через других слушателей в сети. Еще одна уловка – загрузить любимые треки слушателя и оставить их в памяти компьютера. Это тоже защита от задержек при воспроизведении. Иными словами, Spotify создает своеобразный гибридный протокол.

Это торрент-сеть, дополненная центральным сервером, плюс множество собственных «фишек». Система практически безупречна. Первая демоверсия Spotify готова в январе 2007-го. Примерно в это время Фредрик Ниемеле становится директором по продукту. Каждый, кто тестирует систему, считает, что это магия. Да и сами программисты не до конца верят, что у них все получилось. За несколько месяцев они создали лучший продукт на рынке. «Это просто бомба!» – восторженно отзывается один из первых поклонников.

Почти все треки Spotify – пиратские музыкальные файлы с торрент-трекеров вроде The Pirate Bay. Ирония налицо. Но что же делать? Купить миллионы треков на iTunes? Но все равно это не даст никакого законного права транслировать музыку. Впрочем, пока Spotify заканчивает разработку продукта, подает заявку на патент и ведет переговоры со звукозаписывающими компаниями на предмет лицензий, все должно устроиться. Команда надеется, если повезет, запустить проект осенью 2007 года.