"правда"
- Игнорировать и продолжить.
--mailru-user-agent
По умолчанию используется "rclone/VERSION" или "--user-agent", указанные в командной строке.
- Конфигурация: user_agent
- Вариант окружения: RCLONE_MAILRU_USER_AGENT
- Тип: строка
- По умолчанию: ""
--mailru-quirks
Список внутренних флагов обслуживания, разделенных запятыми.
Эта опция не должна использоваться обычным пользователем. Он предназначен только для облегчения удаленного устранения неполадок серверной части. Строгое значение флагов не задокументировано, и его сохранение между выпусками не гарантируется. Причуды будут удалены, когда бэкенд станет стабильным. Поддерживаемые особенности: atomicmkdir binlist unknowndirs
![]()
Новая инициатива предоставляет потребителям в США коммуникационные и развлекательные приложения, предназначенные для управления электронной почтой, поддержания связи с людьми и поиска новых игр.
С сегодняшнего дня myMail, myChat и myGames доступны в виде мобильных приложений для пользователей телефонов и планшетов iOS и Android. Каждый из них можно бесплатно загрузить из магазинов Apple iTunes Store и Google Play.
Родственные приложения myChat и myGames предоставляют пользователям доступ к бесплатному обмену текстовыми сообщениями, голосовым и видеовызовам, а также к коллекции бесплатных мобильных игр. Приложение myGames Jungle Heat, уже доступное в США, вошло в число 25 лучших приложений для Android и было скачано почти 1,5 миллиона раз на платформе iOS.
«Российские разработчики, как правило, имеют выдающиеся знания в области математики, физики и инженерии, что позволило российским компаниям занять лидирующие позиции на отечественном интернет-рынке, — сказал Гришин. «Теперь мы будем использовать все полученные навыки и опыт, чтобы выйти на рынок США».
Приложения в стиле минимализма – не первые в своем роде: пользователи iOS месяцами проверяли различные учетные записи электронной почты в Mailbox, а такие приложения, как Viber и WhatsApp, упростили общение на расстоянии.
Но My.com приготовил нечто большее, надеясь создать интегрированную коммуникационную и развлекательную платформу, которую они называют "Communitainment", начиная с сегодняшней линейки приложений.
чтобы наши главные новости доставлялись вам на почту каждое утро.","first_published_at":"2021-09-30T21:30:40.000000Z","published_at":"2022-01-18T21:20:02.000000Z" ,"last_published_at":"2022-01-18T21:19:32.000000Z","created_at":null,"updated_at":"2022-01-18T21:20:02.000000Z">)" x-show="showEmailSignUp( )" >
Скачай наши лучшие истории!
Подпишитесь на раздел "Что нового сейчас", чтобы каждое утро получать наши главные новости в свой почтовый ящик.
Этот информационный бюллетень может содержать рекламу, предложения или партнерские ссылки. Подписка на информационный бюллетень означает ваше согласие с нашими Условиями использования и Политикой конфиденциальности. Вы можете отказаться от подписки на информационные бюллетени в любое время.
Мы планируем добавить такую функцию в одном из наших будущих выпусков, однако пока не можем назвать конкретную дату.
Как просмотреть все непрочитанные сообщения? (Как найти все отмеченные сообщения?)
![]()
Чтобы просмотреть все непрочитанные или все отмеченные сообщения, коснитесь значка «Меню» в верхнем левом углу, проведите пальцем вниз и коснитесь «Непрочитанные», «Отмеченные» или «С вложения».
Как настроить ежечасное обновление списка сообщений?
Список сообщений обновляется при получении нового сообщения независимо от времени.
Вы можете настроить уведомления о новых сообщениях в разделе «Уведомления» в настройках приложения.
Как добавить контакт из памяти устройства?
![]()
Вы можете использовать контакты из адресной книги вашего устройства. Для этого коснитесь значка «Добавить» рядом с полем «Кому:» или «Копия:» и выберите контакт. Чтобы использовать эту функцию, убедитесь, что синхронизация контактов включена.
Могу ли я добавить пароль для защиты приложения?
Чтобы повысить безопасность вашего приложения, вы можете настроить защиту PIN-кодом.
Как изменить пароль/настройки учетной записи/аватар с помощью приложения?
Вы можете изменить свой аватар и имя отправителя в настройках приложения. Чтобы изменить пароль, воспользуйтесь веб-интерфейсом.
Могу ли я добавить/редактировать/удалить контакт?
Текущая версия приложения не поддерживает редактирование контактов. Мы планируем добавить такую возможность в одном из наших будущих релизов, однако пока не можем назвать точную дату.
Для работы с контактами используйте веб-интерфейс.< /i>
Как выбрать все сообщения в папке? (Как удалить все сообщения в папке?/ Как переместить все сообщения в папке?)
Чтобы выбрать сообщение для дальнейших действий, нажмите на аватар отправителя. Чтобы выбрать все сообщения, сначала выберите одно сообщение, нажмите в правом верхнем углу экрана, затем «Выбрать все».
Как я могу добавить/удалить/переименовать папку в приложении?
Как настроить фильтр в приложении?
Когда приложение запущено на моем телефоне, мне постоянно нужно вводить имя пользователя и пароль в браузере. Как этого избежать?
Перейдите в раздел «Безопасность» настроек вашего почтового ящика в веб-интерфейсе и снимите флажок «Не разрешать одновременные сеансы». Мы также рекомендуем переместить приложение во внутреннюю память вашего устройства.
Я не получаю уведомления о новых сообщениях. В чем дело?
уведомление
Чтобы решить эту проблему, проверьте настройки уведомлений в своем приложении: возможно, уведомления отключены для этого почтового ящика, папки или в это время. Убедитесь, что дата и часовой пояс на вашем устройстве установлены правильно. Также проверьте настройки уведомлений вашего устройства: возможно, уведомления этого типа, в это время или от этого приложения отключены.
![Date]()
28 марта 2016 г., 8:56
![]()
Хранение и кэширование: два подхода
Еще один плюс конвертации "на лету" заключается в следующем: если мы решим изменить настройки конвертации или, например, добавить еще одну функцию, нам не придется повторно конвертировать старые видео (что не всегда возможно, так как оригинальное видео уже ушло). В этом случае все будет применяться автоматически.
Как это работает
Еще одна важная возможность, предоставляемая этим форматом, — адаптивный стриминг, позволяющий менять качество «на лету» в зависимости от скорости интернета у пользователя. Например, вы начинаете смотреть в формате 360p с 3G, но после того, как ваш поезд переезжает в зону LTE, вы продолжаете смотреть в формате 720p или 1080p. В HLS это реализовано довольно просто: плеер получает «основной плейлист», состоящий из альтернативных плейлистов для разной пропускной способности. После загрузки фрагмента плеер оценивает текущую скорость и на основании этого принимает решение о качестве следующего фрагмента: такое же, ниже или выше. В настоящее время мы поддерживаем 240p, 360p, 480p, 720p и 1080p.
Бэкенд
![]()
Первый сценарий: у нас есть преобразованный фрагмент. В этом случае мы отправляем его обратно сразу. Если вы или кто-то другой запросили его недавно, фрагмент уже будет существовать. Это первый уровень кэширования, который работает для всех преобразованных файлов. Стоит отметить, что мы также используем другой уровень кэширования, при котором часто запрашиваемые файлы распределяются по нескольким серверам, чтобы избежать перегрузки сетевого интерфейса.
Второй сценарий: у нас нет преобразованного фрагмента. В этом случае в базе создается задача конвертации, и мы ждем ее выполнения. Как мы уже говорили ранее, именно Tarantool (очень быстрая база данных NoSQL с открытым исходным кодом, позволяющая писать хранимые процедуры на Lua) отвечает за хранение информации о видео и управление очередью преобразования. Связь между серверами приложений и базой данных осуществляется следующим образом. Сервер приложений отправляет запрос: «Мне нужен второй фрагмент файла movie.mp4 в качестве 720p; готов ждать не более 4 секунд», и в течение 4 секунд получает информацию о том, где взять фрагмент, или сообщение об ошибке. Таким образом, клиенту базы данных не интересно, как выполняется его задача — сразу или через цепочку сложных действий: он использует очень простой интерфейс, позволяющий отправить запрос и получить запрошенное.
Наш способ обеспечить отказоустойчивость базы данных — переключение между мастер-репликой. Клиент базы данных отправляет запросы только на главный сервер. Если есть проблемы с текущим мастер-сервером, мы помечаем одну из реплик как мастер, и клиент перенаправляется на новый мастер. Такой переключатель мастер-реплика прозрачен для клиента, поскольку клиент продолжает взаимодействовать с мастером.
Реальный код немного сложнее: например, он рассматривает сценарии, когда фрагмент находится в состоянии «конвертируется» в момент запроса. Благодаря этой схеме конвертеры сразу уведомляются о новой задаче, а клиент — о завершении задачи. Это очень важно, потому что чем дольше пользователь видит индикатор загрузки видео, тем выше вероятность того, что он покинет страницу еще до того, как начнется воспроизведение видео.
Как видно на диаграмме ниже, большинство конверсий и, соответственно, время ожидания длятся не более пары секунд.
![]()
Конверсия
Для преобразования мы используем FFmpeg, который мы модифицировали для наших нужд. Наш первоначальный план состоял в том, чтобы использовать встроенные инструменты FFmpeg для преобразования HLS; однако мы столкнулись с проблемами для нашего варианта использования. Если вы попросите FFmpeg преобразовать 20-секундный файл в HLS с 10-секундными фрагментами, вы получите два файла и список воспроизведения, который без проблем их воспроизводит. Но если запросить конвертацию одного и того же файла сначала 0-10 секунд, а потом 10-20 секунд (запуск другого экземпляра конвертера FFmpeg), то при переходе от одного файла к другому (примерно на 10-й секунды) вы услышите явный щелчок. Мы потратили несколько дней, пробуя разные настройки FFmpeg, но безуспешно. Итак, нам пришлось залезть внутрь FFmpeg и написать небольшой патч. Требуется аргумент командной строки, чтобы исправить ошибку «щелчка», связанную с нюансами кодирования аудио- и видеодорожек.
Кроме того, мы использовали некоторые другие доступные патчи, которые на тот момент не были включены в основной поток FFmpeg; например, патч для решения известной проблемы медленной конвертации файлов MOV (видео, сделанное iPhone). Демон под названием «Аврора» управляет процессом получения задач из базы данных и запуска FFmpeg. Демон «Аврора», как и демон, расположенный по другую сторону базы данных, написан на Perl и работает асинхронно с циклом событий EV и различными полезными модулями, такими как: EV-Tarantool и Async::Chain.< /p>
Внешний интерфейс
Кроме того, при воспроизведении видео на мобильной платформе мы используем собственные библиотеки Android и iOS. Поэтому видео будет воспроизводиться на «коробочных» смартфонах и планшетах, в мобильных браузерах: нам не нужно создавать дополнительный плеер для используемого нами формата. Как и в веб-версии, на настольных компьютерах активируется адаптивный механизм потоковой передачи, и качество изображения динамически адаптируется к текущей пропускной способности.
Одно из основных отличий нашего проигрывателя от проигрывателя конкурентов заключается в том, что наш видеопроигрыватель не зависит от среды пользователя. Чаще всего разработчики создают два разных плеера: один — с интерфейсом Flash, а другой (для браузеров с нативной поддержкой HLS, например, Safari) — точно такой же, но реализованный на HTML5, с последующей загрузкой соответствующего интерфейс. У нас только один игрок. И мы стремились к тому, чтобы можно было легко менять интерфейс. Поэтому наш плеер выглядит очень похоже и для видео, и для аудио — все иконки, верстка и т. д. написаны на HTML5. Проигрыватель не зависит от технологии, используемой для воспроизведения видео.
Мы используем Flash для рисования видео, но весь интерфейс построен на HTML; поэтому мы не сталкиваемся с проблемами синхронизации версий, поскольку нет необходимости поддерживать определенные версии Flash. Библиотеки с открытым исходным кодом было достаточно, чтобы играть в HLS. Мы написали прокладку для перевода интерфейса видеоэлемента HTML5 во Flash.Вот почему мы могли написать весь наш интерфейс, предполагая, что всегда будем работать с HTML5. Если браузер не поддерживает этот формат, мы просто заменяем нативный элемент видео на собственный, реализующий тот же интерфейс.
Если устройство пользователя не поддерживает Flash, видео воспроизводится в формате HTML5 с поддержкой HLS (пока это реализовано только в Safari). HLS воспроизводится на Android 4.2+ и iOS с использованием собственных инструментов. В случае отсутствия поддержки и родного формата, мы предлагаем пользователю скачать файл.
Если у вас есть опыт внедрения видеоплеера, добро пожаловать в раздел комментариев: мне очень интересно узнать, как вы будете разбивать видео на фрагменты, выбирать между хранилищем и кэшированием и какие другие проблемы у вас возникнут. В общем, давайте делиться своим опытом.
Читайте также: