2013-10-08 9 views
9

का उपयोग कर Android 4.1 पर एक आरटीएसपी धारा खेलने के लिए एक सरल अनुप्रयोग का विकास करना है, लेकिन ऐसा करने में असमर्थAndroid 4.1 - RTSP VideoView और MediaController

अद्यतन

मैं अगर मैं BigBuckBunny_115k का उपयोग खेलने में सक्षम में सक्षम हूँ .mov

Uri video = Uri.parse("rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov"); 

लेकिन मैंने कोशिश की RTSP की बहुत धाराओं के साथ mentioned here और here, लेकिन कोई भी काम नहीं किया :(

**** समस्या: मुझे अपने फोन पर कोई स्ट्रीम नहीं दिखाई दे रही थी, केवल ब्लैक स्क्रीन दिखाई दे रही है .. कुछ समय बाद, एक संवाद बॉक्स "इस वीडियो को नहीं चला सकता" दिखाई देता है। मैंने कई आरटीएसपी धाराओं के साथ प्रयास किया, लेकिन एक ही परिणाम, क्या यह सभी धाराओं के साथ जारी है? या .sdp ठीक से पार्स नहीं किया गया है? कोड स्निपेट में कुछ याद आ रही है? ****

public class MainActivity extends Activity { 


    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     VideoView videoView = (VideoView) findViewById(R.id.video); 
     MediaController mediaController = new MediaController(this); 
     mediaController.setAnchorView(videoView); 
     mediaController.setMediaPlayer(videoView); 

     Uri video = Uri.parse("rtsp://ss1c6.idc.mundu.tv:554/prf0/cid_29.sdp"); 
     videoView.setMediaController(mediaController); 
     videoView.setVideoURI(video); 
     videoView.start(); 
    } 

<VideoView 
    android:id="@+id/video" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentTop="true" /> 

<uses-sdk 
    android:minSdkVersion="11" 
    android:targetSdkVersion="17" /> 
<uses-permission android:name="android.permission.INTERNET"/> 

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name="com.rdx.livetv.MainActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
</application> 

10-08 17:53:03.674: D/libEGL(22488): loaded /vendor/lib/egl/libEGL_POWERVR_SGX540_120.so 
10-08 17:53:03.682: D/libEGL(22488): loaded /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so 
10-08 17:53:03.682: D/libEGL(22488): loaded /vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so 
10-08 17:53:03.775: D/OpenGLRenderer(22488): Enabling debug mode 0 
10-08 17:53:03.783: D/MediaPlayer(22488): Couldn't open file on client side, trying server side 
10-08 17:53:03.900: D/MediaPlayer(22488): getMetadata 
10-08 17:53:06.596: D/dalvikvm(22488): GC_CONCURRENT freed 102K, 2% free 11074K/11207K, paused 14ms+3ms, total 42ms 
10-08 17:55:05.799: E/MediaPlayer(22488): error (1, -2147483648) 
10-08 17:55:05.799: E/MediaPlayer(22488): Error (1,-2147483648) 
10-08 17:55:05.799: D/VideoView(22488): Error: 1,-2147483648 

उत्तर

6

मैंने openRTSP का उपयोग करके इन लिंक में दी गई धाराओं का विश्लेषण किया।

"openRTSP" एक कमांड लाइन प्रोग्राम है जिसका उपयोग आरटीएसपी यूआरएल द्वारा निर्दिष्ट किए गए रिकॉर्ड मीडिया स्ट्रीम को खोलने, स्ट्रीम करने, प्राप्त करने और (वैकल्पिक रूप से) करने के लिए किया जा सकता है - यानी, एक यूआरएल जो आरटीएसपी से शुरू होता है: //

इस उपयोगिता का उपयोग करके, मैंने पाया कि एसडीपी फाइलों में से अधिकांश में समस्याएं थीं, और यह एप्लिकेशन में आने वाले मुद्दों का कारण है।

+0

क्या यह एंड्रॉइड डेवलपमेंट से संबंधित है? – alacerda

+0

@ रोहित फिर, क्या आप उन लोगों को श्रेणियां दे सकते हैं जो काम करने वाले और गैर-काम करने वाले हैं जो मुझे पसंद करते हैं। –

7

देशी प्लेयर का उपयोग करके आरटीएसपी खेलने के लिए एक और अच्छा समाधान।

mediaURL = "rtsp://192.168.0.119/Bolt.ts" 
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(mediaURL)); 
startActivity(intent); 
संबंधित मुद्दे