Хочу рассказать о своем небольшом проекте для изучающих английский язык.
Как известно, чтобы изучать и не забывать язык, им надо пользоваться. И один из способов практиковать язык — это начать смотреть фильмы в оригинале.
Но как можно начать смотреть фильмы и получать при этом удовольствие, если в каждом диалоге актеров встречаются незнакомые слова?
В интернете полно методик, где советуют, например, смотреть по 3 раза или подготавливаться к просмотру, выписывая и заучивая заранее слова из субтитров. Да, возможно это эффективно, и кому-то подойдут такие способы, но это же так скучно… Я бы не смог смотреть 3 раза подряд один и тот же фильм. Хочется получать удовольствие от просмотра, смотреть сразу и без подготовки и все понимать.
И вот однажды я увидел идею — перевод субтитров на лету: встретилось незнакомое слово — нажал — получил перевод! И не надо отвлекаться от просмотра и искать что-то в словарях — идеально, как же я сам не додумался… И эта идея мне понравилась настолько, что я захотел сделать свой плеер, через который можно было бы открывать любое видео в интернете, подгружать субтитры и смотреть, пользуясь встроенным переводчиком.
В целом — мне это удалось, но есть нюансы.
И прежде чем поделиться ссылкой на проект, хочу рассказать о проблемах, возникших при разработке, которые привели к тому, что у плеера есть особенности.
На всякий случай, уточню, я сделал плеер для просмотра онлайн-видео (через него можно открывать видео с youtube, вконтакте и т.д., но нельзя открыть видео с компьютера).
Почему именно онлайн-видео?
Наверное, потому что в последнее время я мало, что качал с торрентов, а все находил онлайн. А еще, потому что я понимал как это можно реализовать на веб-технологиях.
И, судя по тенденциям на Западе, будущее все же за онлайн-видео.
Выглядит это так:
Вы находите в интернете фильм — извлекаете ссылку для просмотра — открываете ее через мой плеер — находите и загружаете субтитры… Профит!
Суровая реальность такова, что найти нужный фильм онлайн гораздо сложнее, чем скачать его с торрентов. И чтобы облегчить вам поиски, я сделал пользовательский каталог видео, куда посетители сами могут добавлять ссылки на просмотренные фильмы.
Для видео из каталога даже не придется искать субтитры, все уже готово к просмотру.
Демонстрация возможностей
Вот несколько примеров, как это выглядит на практике:
Перевод выполняется по клику мыши на слове:
Доступно несколько словарей, даже есть UrbanDictionary:
Можно переводить словосочетания, если кликать правой кнопкой мыши:
Можно переводить фрагменты слов или целые предложения. Это делается выделением фрагмента:
Проблемы и особенности
Разработка состояла из серии взлетов и падений.
И первый облом был такой —
нельзя просто взять и открыть видео с чужого сайта через свой плеер
Что вообще-то вполне логично, иначе уже давно бы каждый школьник имел свой собственный ютуб.
Каждый крупный видеохостинг генерирует уникальную временную ссылку на видеофайл для каждого отдельного посетителя (например, на основе IP зашедшего). Мой сервер не может знать по какой ссылке будет доступно видео для вас, ему нужно об этом сообщить с клиента.
Отсюда появляется первая особенность — необходимо расширение для браузера, которое будет заниматься извлечением ссылок на видеофайл.
Для пользования сервисом вас попросят установить расширение (на примере Chrome):
Почему расширению требуются такие права
Расширение имеет следующие права:
- Доступ ко всем сайтам
Расширение пытается найти видео на всех посещаемых сайтах. Видеохостинги появляются и исчезают, переезжают с одного домена на другой и т.д. Всех не перечислить, поэтому разрешен доступ ко всем сайтам.
- Доступ к вкладкам и журналу посещений
API расширений для Chrome делится на несколько модулей. Чтобы воспользоваться нужной функцией, надо добавить разрешения для целого модуля. Например, чтобы узнать адрес во вкладке, на которой найдено видео, нужна функция из модуля tabs — модуля для работы с вкладками и журналом посещений.
Расширение есть для всех браузеров на основе Chromium и для Firefox.
Установка расширения — досадная необходимость. Интересно было бы узнать процент отказавшихся от использования сервиса по этом причине.
Для тех, кто все же не доверяет расширению, есть простой совет: если у вас основной браузер chrome — поставьте расширение в firefox, и наоборот.
Следующая головная боль — форматы видео
Плееру приходится работать со всеми возможными форматами видео, которые используются в интернете. Но не все гладко в браузерах с поддержкой этих самых форматов, у каждого есть свои особенности.
Если вы попытаетесь найти онлайн фильм, то, скорее всего, он будет в формате mp4 или flv. И с тем, и с другим форматом есть проблемы. Я скопировал сюда с сайта памятку по особенностям браузеров:
Особенности поддержки видео в разных браузерах
Google Chrome
Firefox
Chromium
- Видео в формате flv (flash video) при переходе в полноэкранный режим и назад начинается сначала (в отличие от Firefox!). Перемотка работает только в той области, которая уже загрузилась.
- У определенных пользователей при просмотре периодически возникает ошибка «Network Error». Причины неизвестны.
- При определенных сочетаниях браузера Chrome и аппаратного обеспечения возникает ошибка «Video not properly encoded» или есть только звук и субтитры, а вместо видео — черный экран. Решение этой проблемы описано в разделе: Известные проблемы и решения
Firefox
- При неактивности со стороны пользователя монитор гаснет (в соответствии с настройками энергосбережения в системе)
- Приятная особенность: flash-видео при переходе в полноэкранный режим и назад не перезапускается
Chromium
- Браузеры на основе Chromium имеют те же особенности, что и Google Chrome
- Кроме того, т.к. Chromium является свободным веб-обозревателем, поддержка аудио- и видеоформатов ограничена исключительно свободными форматами Ogv, Ogg и WebM. Для пользователя это значит, что видео в формате mp4 будет открываться через flash-плеер с его особенностями (перемотка работает только в загруженной области; переход в полноэкранный режим и назад приводит к перезапуску видео; возрастает нагрузка на процессор)
В двух словах, нужно использовать Chrome или Firefox и избегать flash-видео.
Приятный бонус
Т.к. расширение извлекает прямые ссылки на видео, это значит, что видео можно не только посмотреть, а еще и скачать. Получился такой приятный бонус — можно скачивать видео с большинства видеохостингов в интернете (YouTube, Вконтакте, Mail.ru, Vimeo, Ivi и многих других сервисов).
Барабанная дробь
Теперь, когда я вас предупредил об этих нюансах, могу дать ссылку на проект — http://hamatata.com
Результаты
Очень часто я видел такие советы — сначала нужно сделать прототип и проверить, а нужен ли вообще кому-нибудь такой сервис. Я решил последовать этому совету и не стал строить грандиозные планы, а сделал простой сервис, без регистраций, без личных кабинетов, карточек и прочего. Но, к сожалению, застрял на продвижении этого прототипа в массы.
Время летит быстро, и так получилось, что этому сайту скоро уже будет год. Он работает, у него есть постоянные пользователи, периодически получаю приятные отзывы и встречаю упоминания о нем от незнакомых людей. Но я все равно отношусь к нему как к прототипу и надеюсь когда-нибудь выпустить версию 2.0, где будут учтены все пожелания.
Буду рад услышать любые предложения по улучшению, но не могу пока обещать, когда они будут учтены :)
Монетизация
Учитывая сказанное в предыдущем абзаце, я особо не думал о монетизации, ведь это всего лишь прототип.
Конечно же, в самом начале разработки были мысли получать прибыль, но когда столкнулся со всеми нюансами и проблемами, то отказался от идеи брать деньги за такой сервис. Поэтому сервис бесплатный и без ограничений.
Заключение
В заключении хочу вернуться к тому, с чего начал — помогает ли мой сервис в изучении английского языка? Абсолютно точно могу сказать, что он не навредит.
У этого метода есть 2 огромных плюса:
Во-первых, он никогда не надоест. Уже полтора года я смотрю фильмы и сериалы только в оригинале и не собираюсь возвращаться. А как известно, регулярность занятий — одна из самых важных вещей в любом деле, не только в изучении языка.
И второе преимущество — новые слова запоминаются в контексте, а не зазубриваются. Что тоже очень важно.
В общем, для тех:
— кто всегда мечтал смотреть фильмы в оригинале, но недостаточно хорошо владеет английским
— кому скучно учить английский, но хочется время от времени практиковаться, совмещая приятное с полезным
для вас — http://hamatata.com!