Codename One: Как транслировать живое видео на YouTube Live

Я разрабатываю приложение, которое мне нужно для потоковой передачи видео, снятого с видеокамеры смартфона (на iPhone и телефонах Android), непосредственно на YouTube Live.

Я изучил метод Capture.captureVideo (ActionListener response) Codename One, который должен дождаться остановки видео, сохранения файла и вызова ActionListener. Очевидно, это не сработает, потому что видео должно постоянно передаваться в выходной поток (по URL-адресу, заданному API YouTube Live). Есть ли другой способ добиться этого? (А как насчет любого неофициального API, такого как метод переопределения, для получения входного потока с камеры?) Если нет, будет ли Codename One рассматривать возможность предоставления этой функции для обновления версии, поскольку рыночная тенденция, похоже, распространяется на приложения для потоковой передачи видео в реальном времени?

Если это невозможно сделать с помощью API Codename One, то единственный способ - написать собственный код для Android и iOS. Я прочитал статью об интеграции собственного API и использовании Freshdesk API в качестве примера, поэтому есть ли какие-либо указания о том, как интегрировать YouTube API для потоковой передачи видео в реальном времени?

https://developers.google.com/youtube/v3/live/getting-started
https://developers.google.com/youtube/v3/live/libraries
https://developers.google.com/api-client-library/java/apis/youtube/v3
https://developers.google.com/youtube/v3/live/code_samples/

person ikevin8me    schedule 14.04.2017    source источник


Ответы (1)


Я не вижу REST API в списке API, хотя есть JavaScript API, который вы можете использовать для его реализации. В качестве альтернативы вы можете использовать что-то вроде того, что было сделано с API freshdesk. Вам нужно будет встроить собственное представление из прямой трансляции, вы можете посмотреть реализацию Google Карты, чтобы увидеть, как мы встроили этот собственный виджет.

person Shai Almog    schedule 15.04.2017
comment
Спасибо за ответ! После долгих размышлений я думаю, что самый простой способ - открыть веб-просмотр (Display.getInstance (). Execute () - правильный метод для получения веб-просмотра?), А затем использовать HTML5 для потоковой передачи на YouTube Live. URL-адрес для потоковой передачи будет протоколом RMTP, например. rtmp: //a.rtmp.youtube.com/live2. Что вы думаете? - person ikevin8me; 15.04.2017
comment
Просто чтобы уточнить: есть 2 проблемы, которые мне нужно решить для моего приложения. Во-первых, это трансляция со смартфона на YouTube Live по протоколу RTMP. Во-вторых, это для просмотра (т. Е. Воспроизведения) видео с YouTube (я считаю, что это легко сделать с помощью класса Media / MediaPlayer Codename One). - person ikevin8me; 15.04.2017
comment
Возможно, вы можете просто захватить поток rtmp и поместить его в медиа-объект. Я не уверен, что это соответствует условиям использования YouTube. Обратите внимание, что это будет работать только на устройствах, поскольку симулятор, вероятно, не поддерживает rtmp. - person Shai Almog; 16.04.2017