Интересные находки в интерактивных технологиях — в Интернете, Unity, смешанной реальности, глубоком обучении, JavaScript, C#, 3D, аудио, искусстве и многом другом.

На этой неделе мы рассмотрим:
 – Пространственное аудио (Ambisonics) для 360 / VR / AR / XR
 – GraphQL для более быстрых интерфейсных итераций
 – Live Потоковое видео 360° на YouTube изнутри Unity
 — различные находки для глубокого обучения: поэзия, аудио, изображения высокого разрешения, агенты Unity

Привет! Я начинаю серию постов, в которых буду собирать некоторые интересные репозитории и статьи, с которыми я сталкивался в последнее время. Я также найду ссылки из моего постоянно растущего списка звезд Github. Я люблю исследования, изучение закономерностей, установление связей и создание новых возможностей.

У меня есть компания, которая специализируется на впечатлениях — свяжитесь со мной в LinkedIn!

Пространственный звук (Ambisonics) для 360 / VR / AR / XR

Я подумывал подать заявку в программу Google Jump Start, чтобы получить в свои руки их новые камеры YI HALO 360 для серии творческих съемок с участием волшебных существ в заброшенных местах. Один из вопросов в приложении касается пространственного звука, также известного как ambisonics, который остается несколько неизученным по сравнению с реактивными визуальными системами. Я вернулся к некоторым своим находкам:

У Google есть SDK пространственного звука для ambisonics под названием Resonance
https://developers.google.com/resonance-audio/

Пакет Unity находится на странице релизов здесь
https://github.com/resonance-audio/resonance-audio-unity-sdk

Веб-разработчики могут использовать эту библиотеку
https://github.com/resonance-audio/resonance-audio-web-sdk

Движок Web SDK
https://github.com/GoogleChrome/omnitone

Для продвинутых пользователей вы можете редактировать в своей любимой DAW как VST
https://github.com/resonance-audio/resonance-audio-daw-tools

Спецификации кодирования Google для аудио и видео
https://github.com/google/spatial-media

У Facebook есть отличное программное обеспечение, но его источник нигде не найден
https://facebook360.fb.com/spatial-workstation/

Амбисоническое решение для Ableton
https://github.com/EnvelopSound/EnvelopForLive

GraphQL для более быстрых итераций внешнего интерфейса

Разработчики внешнего интерфейса, создающие клиентские приложения, иногда могут быть заблокированы в ожидании изменений внутреннего API, чтобы не отставать от дизайна.

Что, если бы вы могли просто изменить этот API из внешнего интерфейса? Что, если бы вам не нужно было беспокоиться о том, существует ли конкретная конечная точка — если данные есть, вы можете создать ее самостоятельно. Еще лучше, если бы вы могли урезать это приложение, получая только те данные, которые вам нужны, когда вы делаете запрос, вместо тонны наворотов.

С этой целью я рассматривал вопрос о том, рекомендовать ли клиенту электронной коммерции GraphQL API вместо REST API. Важно, чтобы они могли двигаться быстро. Во время своего исследования я наткнулся на несколько интересных ресурсов:

Начиная с этой отличной статьи
https://time2hack.com/2018/02/introduction-quick-guide-to-graphql-for-backend-frontend/

Визуализатор запросов GraphQL
https://github.com/graphql/graphiql

Сервер GraphQL для Express
https://github.com/apollographql/apollo-server

Интересно, что GraphQL — это просто интерфейс поверх любой базы данных, которую вы хотите использовать. Например, вы можете использовать его с MongoDB https://www.compose.com/articles/using-graphql-with-mongodb/

Или PostgreSQL
https://github.com/postgraphql/postgraphql

Сама спецификация, хотя я бы начал со статей и туториалов
https://github.com/facebook/graphql

Некоторые интерфейсные инструменты для взаимодействия с GraphQL
https://github.com/apollographql/apollo-client

Специально для React
https://github.com/apollographql/react-apollo

Целый фреймворк от Facebook, сочетающий React с GraphQL
https://github.com/facebook/relay

Изменение потока управления запросами и результатами
https://github.com/apollographql/apollo-link

Сокращение для написания запросов
https://github.com/apollographql/graphql-tag

Прямая трансляция видео 360° на YouTube изнутри Unity

Я пытался разобраться с конвейером прямой трансляции равноугольного видео, снятого с камеры внутри сцены Unity, на YouTube 360. Я хочу, чтобы зрители могли видеть живые игровые миры, как они происходят. Я нашел пару полезных лидов:

Вот один для вывода с использованием FFMPEG (который затем может транслироваться на YouTube)
через удивительный Keijiro
https://github.com/keijiro/FFmpegOut

Но с какой скоростью? Новый конвейер рендеринга с поддержкой сценариев в Unity 2018 может обеспечить более быстрое решение
https://github.com/keijiro/AsyncCaptureTest

Я также оценил платный вариант
https://github.com/SystemFriend/GPUVideoEncoder-Trial

Платный вариант использует эту очень интересную библиотеку параллелизма
https://assetstore.unity.com/packages/tools/spicy-pixel-concurrency-kit-3586

Различные находки глубокого обучения

Создавайте стихи из изображений с помощью CNNS и RNN
https://github.com/rossgoodwin/neuralsnap

Перенесите звук в тензор Pytorch — пожалуйста, больше аудиопроектов Deep Learning!
https://github.com/pytorch/audio

Речь в сверхвысоком разрешении может привести к более четкому общению.
https://github.com/jhetherly/EnglishSpeechUpsampler

Создавайте музыку вместе с искусственным интеллектом Google — инструменты нового поколения и живые выступления могут быть совместными с компьютером
https://github.com/tensorflow/magenta

Предупреждение о будущем: с правильными датчиками глубокое обучение должно обеспечивать субвокальное распознавание речи — способность общаться без звука, что пригодится в умном снаряжении для водолазов или пожарных
https://github.com /Мохамед-Эльбиалли/ThesisCodes

Многие современные сети были обучены на очень маленьких изображениях (300 на 300 пикселей) из-за ограничений размера памяти графического процессора, однако они были очень точными, несмотря на это ограничение. Я в восторге от всего, что тренируется на изображениях с высоким разрешением, так как это поможет нам понять, достаточно ли меньших тренировочных изображений или это только царапает поверхность того, что возможно. Больше пикселей!
https://github.com/NVIDIA/pix2pixHD

Unity — отличная среда для обучения агентов глубокого обучения, особенно многоагентных сред.
https://github.com/Unity-Technologies/ml-agents

Вот пример скрытия/экранирования
https://github.com/HappySlice/hide-escape

Вот с пиратами!
https://github.com/HugoCMU/pirateAI