Подтвердить что ты не робот

Проигрыватель RTMP/RTSP в реальном времени без использования веб-браузера (WOWZA-сервера) на Android

Я разрабатываю приложение для Android, в котором хочу опубликовать, а также потоковое видео...

Я хочу:

  • Мое приложение записывает видео и видео отправляется на сервер

  • Записанное видео будет транслироваться в реальном времени на другое устройство Android одновременно.

Я выполнил первую задачу, используя javac и ffmpeg. Я застрял во второй задаче. Я много искал для потокового видео с сервера, но мне это не удалось. Я не хочу использовать WebView и воспроизводить видео в нем. Я хочу проигрыватель RTMP. Эта задача была завершена в iOS... Я хочу то же самое для Android. Какая ссылка для выполнения моей задачи?

P.S:.

Я использую wowza server и RTMP-поток. Я хотел бы транслировать RTMP-видео (.flv)... Если какое-либо решение не доступно, я бы хотел переключиться на RTSP, и для этого также потребуется рабочая ссылка.

Теперь я переключился на проигрыватель RTSP [с сервером wowza], так как я не нашел проигрывателя RTMP без веб-просмотра. Как исправить эту проблему?

4b9b3361

Ответ 1

Вы можете легко сделать это через Vitamio Lib. Vitamio может воспроизводить 720p/1080p HD, mp4, mkv, m4v, mov, flv, avi, rmvb, rm, ts, tp и многие другие видеоформаты в Android и iOS. Почти все популярные потоковые протоколы поддерживаются Vitamio, включая HLS (m3u8), MMS, RTSP, RTMP и HTTP.

Скачайте Vitamio Bundle из здесь.

И демо от здесь.

Учебник здесь.

Ответ 2

Я использую Adobe AIR для воспроизведения RTMP, и это потрясающе. Я нашел ответ здесь; см. код:

function init_RTMP():void
{
    streamID  = "RT_2";
    videoURL = "rtmp://fms5.visionip.tv/live/RT_2";

    vid = new Video();

    nc = new NetConnection();
    nc.addEventListener(NetStatusEvent.NET_STATUS, onConnectionStatus);
    nc.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
    nc.connect(videoURL);
}

private function onConnectionStatus(e:NetStatusEvent):void
{
    if (e.info.code == "NetConnection.Connect.Success")
    {
        trace("Creating NetStream");
        netStreamObj = new NetStream(nc);

        metaListener = new Object();
        metaListener.onMetaData = received_Meta;
        netStreamObj.client = metaListener;

        netStreamObj.play(streamID);
        vid.attachNetStream(netStreamObj);
        addChild(vid);
    }
}

Ответ 3

Если у вас нет других опций, вы можете использовать spydroid-ipcamera, который является проектом с открытым исходным кодом. Это альтернатива вашим требованиям. Я проверил его, и он обеспечивает видео в реальном времени.