Комментарии 26
а зачем такую обработку делать в процессе? Какие входные данные нельзя знать заранее? Ради борьбы с задержками и написания своего проигрывателя?
Привет!
во первых, ребята из МТС просили именно обратить внимание на обработку видео потока в процессе просмотра, нежели обрабатывать заранее; чтобы тифлокомментарии были доступны сразу же, без ожидания со стороны пользователя - так что это основная причина;
во вторых, мы постарались повторить опыт команды Яндекса с реализацией закадрового перевода видео; как мы помним изначальное их решение заставляло ждать загрузки видео, но потом они переделали и теперь популярные видео обрабатываются и переводятся в процессе
спасибо за ответ.
... чтобы тифлокомментарии были доступны сразу же
И если их делать заранее, то они доступны вместе с фильмом.
во вторых, мы постарались повторить опыт команды Яндекса
Kion'у это зачем? У него вполне конкретный набор, который можно заранее обработать (наверное), а не видеохостинг, как у Яндекса
Хотя если библиотека большая, то решение делать обработку по запросу может быть более разумным, можно туда же ещё кэширование прикрутить, чтоб один раз только обработку делать.
Схожая задача на кинопоиске с распознаванием лиц - наверняка делается предобработка, потому что не на все фильмы работает.
о, спасибо, с кинопоиском действительно классный пример! мы что-то даже его забыли рассмотреть.
Если мы правильно понимаем, Кинопоиск(поддержка deep dive) и правда делает предобработку; но ведь здесь решается проблема не в пропускной способности, а оценки качества(что мы вообще ок предсказали правильно, например, отправили толокерам натыкать тот там актер или не тот, в нужном ли месте обозначен);
Мы тоже считаем, что предобработка нужна в том числе для проверки качества(будь то проверка актеров или проверка полученных тифлокомментариев)
зачем Kion'у обработка в процессе, я не знаю честно говоря) но в целом Kion изначально сказал, что им нужно было такое решение, возможно, это связано с их внутренними ограничениями, мы до конца не выяснили
/// если что, не являюсь сотрудником яндекса, и мои предположения о принципе их работы сложены лишь на основе опыта с кинопоиском как пользователя; могу ошибаться и они делают намного умнее, совсем по-другому!
Зачем вы напихали в статью на английском языке столько русских слов?
Тейки, мувиборды, кейсы, имплементация... Я вроде русский, но половину слов тут не понимаю.
Аз попробуйте изучать современный русский язык.
Я вообще-то в ваше время живу и говорю на современном вам русском языке, но это арго все равно не понимаю. Можно, конечно, мысленно переводить все английские слова в латиницу, но все равно непонятно. Take, к примеру, - это "брать". Тогда "Пара холиварных тейков" - это "пара holywar takes" - "пара холиварных взятий во время религиозной войны". Взятий чего? Иерусалима? Константинополя? Мекки?
А тифлокомментарии - это тиф + low + сommеnts ? Сноски в учебнике, описывающем лечение тифа?
Нам жаль, что вы столкнулись с такими трудностями при прочтении статьи. В следующем тексте постараюсь использовать более точные термины с русскими корнями)
На самом деле, комментарий про Иннополис в начале статьи был дан не просто так; жизнь в подобного рода социуме так или иначе на тебя влияет, настолько что даже перестаешь замечать, как забываешь русский язык.
Извините, возможно я что-то пропустил, но для чего вы впихнули Flutter в теги и хаб?
В статье нет абсолютно ничего по теме Flutter...
Видимо, данной реплики было достаточно:
Оргами было предложено взять за основу любой доступный медиаплеер с открытым исходным кодом. Поэтому мы решили взять популярный плагин от флаттеровой команды с пабдева.
А так у товарища ui на flutter (предпоследний скриншот). Однако, конечно, этого явно недостаточно, чтобы приклеить одноименную плашку к материалу...@smthshere,есть что-либо интересное по dart-коду?
Привет!
да, все верно отмечено, фронт(android/ios/TV/web) был полностью поддержан силами Flutter'а и одной кодбазой;
поход сильно в технические детали касательно этого тянет на отдельную статью, поэтому мы не стали перегружать текст такими подробностями. Вообще, архитектурно здесь мы выбрали Riverpod
+ freezed
+ flutter_hooks
+ DI силами провайдера;
Из интересного можно отметить оптимизацию интерфейса под устройства без сенсорного ввода (телевизоры). Это кажется очевидным, пока не нырнешь в имплементацию и становится не так комфортно.
Накидаю ссылок для изучения интересующимся:
https://github.com/flutter-tizen/flutter-tizen/blob/master/doc/develop-plugin-csharp.md
https://developer.samsung.com/smarttv/develop/native/flutter.html
https://www.dltlabs.com/blog/how-to-create-an-android-tv-app-using-flutter-362536
Что касается перформанса:
с точки зрения опыта пользователя глобальных никаких просадок мы не заметили; а немного попроффилируя в девтулзах в целом мы убедились что фпсы не страдают относительно нативных решений, но это очень не точные данные, причины очевидны.
Мой опыт участия в хакатоне таков:
Я лазил по сайту с профилем и как-то нашел что если зайти в редактирование своего профиля, а на соседней странице открыть редактирование профиля из команды, то при смене своего пароля менялся и у него тоже. Так же можно было под своим токеном авторизации "выходить" из команды за другого участника поставив в бади его ид.
Я написал в поддержку сайта, что ребята у вас баг. Мне сказали писать на почту.
Админы не смогли его воспроизвести, я сменил пароль админу, в доказательство того, что баг есть.
Мне удалили аккаунт и запретили участие на всех проводимых им хакатонах.
Больше не горю желанием
Как только дочитал до "в одном реквайрменте" я понял что автор полный думб и ассхол и закрыл пост. На хрена совать через слово англицизмы да ещё и на русском? Чем плоха фраза "в одном требовании".
Почему мне противно от хакатонов, но все равно в них участвую