video - مشغل بث مباشر RTMP / RTSP بدون استخدام عرض الويب(خادم WOWZA)على Android




ffmpeg (6)

يمكنك القيام بذلك بسهولة عن طريق 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 من here .

وعرض من here .

برنامج تعليمي من here .

أطور تطبيق Android وأرغب في نشره بالإضافة إلى بث فيديو ...

ما أريده هو:

  1. يسجل تطبيقي مقطع فيديو ويتم إرسال هذا الفيديو إلى الخادم

  2. سيتم بث الفيديو المسجل مباشرة إلى جهاز Android آخر في نفس الوقت ..

لقد أكملت المهمة الأولى باستخدام javac و ffmpeg . أنا عالق في المهمة الثانية. لقد بحثت كثيرًا عن بث الفيديو من الخادم ، لكنني لم أنجح. لا أريد استخدام WebView وتشغيل الفيديو فيه. اريد لاعب RTMP . اكتملت هذه المهمة في iOS ... أريد نفس الشيء لنظام التشغيل Android. ما هو بعض الارتباط لتنفيذ مهمتي؟

PS:

أنا أستخدم خادم wowza وتدفق RTMP. أرغب في بث فيديو RTMP (.flv) ... إذا لم يكن هناك حل متاح ، أرغب في التبديل إلى RTSP ، ولتحقيق ذلك أيضًا ، يجب أن يكون هناك رابط عمل يجب اتباعه ..

الآن لقد تحولت إلى لاعب RTSP [مع خادم wowza] لأنني لم أجد لاعب RTMP دون عرض ويب. كيف أقوم بإصلاح هذه المشكلة؟



أنا أستخدم Adobe AIR لتشغيل RTMP وهو رائع. لقد وجدت الإجابة here ؛ انظر الكود:

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);
    }
}


إذا لم يكن لديك أي خيارات أخرى ، يمكنك استخدام spydroid-ipcamera ، وهو مشروع مفتوح المصدر. إنه بديل لمتطلباتك. لقد راجعت ذلك ويوفر فيديو مباشرًا.


تحتاج إلى استخدام MPMoviePlayerViewController بدلاً من ذلك. لاحظ كلمة "عرض" هناك.







android video ffmpeg rtsp wowza