मैं चाहता हूं कि broadcast
दूरस्थ स्थानों पर एक एंड्रॉइड कैमरा वीडियो है, किसी को भी उस वीडियो को उनके मोबाइल या वेबसाइट पर देखने के लिए। मैं अपने पीसी पर वीएलसी प्लेयर के लिए unicast
पर सफल रहा हूं। मैंने red5
सर्वर, Adobe media server
, ffmpeg
सर्वर पर सभी की कोशिश की लेकिन सभी की जय हो गई। उनमें से प्रत्येक केवल पूर्ववर्ती फ़ाइल से broadcast
वीडियो करने में सक्षम था लेकिन किसी भी लाइव स्ट्रीम से नहीं। क्या कोई मुझे बता सकता है कि मैं क्या करता हूं।ब्रॉडकास्टिंग एंड्रॉइड कैमरा वीडियो
उत्तर
मैंने पढ़ा (मुझे लगता है कि यह स्टैक ओवरफ्लो पर भी था) कि आप मीडियाआरकॉर्डर को एक टीसीपी-कनेक्शन के फाइलहैंडल के साथ प्रदान कर सकते हैं। फिर आप उस कनेक्शन को सुन सकते हैं, डेटा पढ़ सकते हैं, इसे पैकेट कर सकते हैं और इसे आरटीएसपी/आरटीपी-स्ट्रीम के रूप में भेज सकते हैं।
यदि मुझे मूल पोस्ट मिलती है, तो मैं इसे यहां संदर्भित करूंगा।
संपादित करें:
मूल पोस्ट किया गया था: Streaming Video From Android
और Filedescriptor के बारे में हिस्से से है: http://www.mattakis.com/blog/kisg/20090708/broadcasting-video-with-android-without-writing-to-the-file-system
शायद ज़रुरत पड़े, मैं ब्लॉग से अनुसार उदाहरण का हवाला देते हैं:
String hostname = "your.host.name";
int port = 1234;
Socket socket = new Socket(InetAddress.getByName(hostname), port);
ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(socket);
MediaRecorder recorder = new MediaRecorder(); // Additional MediaRecorder setup (output format ... etc.) omitted
recorder.setOutputFile(pfd.getFileDescriptor());
recorder.prepare();
recorder.start();
हालांकि यह केवल वीडियो फाई भेजता है तार पर ले डेटा। आप इसे बचा सकते हैं और फिर इसे वापस चला सकते हैं। लेकिन जैसा कि बताया गया है, यह अभी तक एक धारा नहीं है।
अद्यतन: आपको पहले चरण के लिए एक टीसीपी सॉकेट का उपयोग भी नहीं करना है। मैंने बस "लोकलसेट" (1) पर ट्राइप किया, जो आपको MediaRecorder को खिलाने के लिए फ़ाइलहेंडल भी प्राप्त करता है। वे स्थानीय सॉकेट "AF_LOCAL/यूनिक्स डोमेन स्ट्रीम सॉकेट" हैं। http://developer.android.com/reference/android/net/LocalSocket.html
मैंने अपने ऊपर से ऊपर की सभी कोशिश नहीं की है, लेकिन जल्द ही बहुत जल्द। तो हो सकता है कि मैं निकट भविष्य में और अधिक सहायता प्राप्त कर सकूं :)
(1) लोकलसेट सुरक्षा कारणों से नए एंड्रॉइड संस्करणों पर उपयोग करने योग्य नहीं है! 2015-11-25 से अपडेट देखें।
अद्यतन 2: बस एंड्रॉयड सूत्रों का कहना है "OUTPUT_FORMAT_RTP_AVP" में देखा था। लेकिन यह :(छिपा हुआ है तो मुझे लगता है कि यह एंड्रॉयड के भविष्य के API संस्करण में उपलब्ध हो जाएगा https://github.com/android/platform_frameworks_base/blob/master/media/java/android/media/MediaRecorder.java लाइन 219:।
public static final int OUTPUT_FORMAT_RTP_AVP = 7;
मैं सिर्फ एक हार्डकोडेड 7
प्रदान करके छिपाने को धोखा देना प्रयास नहीं किया है ... तो किसी को भी, एक टिप्पणी यहाँ छोड़ दें करता
अद्यतन 2015-11-25
मैं सिर्फ libstreaming में भाग: https://github.com/fyhertz/libstreaming मैंने किया इसे बहुत गहराई से न देखें, लेकिन ऐसा लगता है कि इस परियोजना से एंड्रॉइड से स्ट्रीमिंग के बारे में बहुत कुछ सीखना है (अगर इसका उपयोग न केवल)।मैं वहाँ पढ़ा है कि LocalSocket समाधान नए Android संस्करणों के लिए अवैध है :(लेकिन वे एक विकल्प मौजूद:। ParcelFileDescriptor
- 1. कैमरा वीडियो
- 2. एंड्रॉइड कैमरा
- 3. एंड्रॉइड कैमरा
- 4. आईफोन वीडियो कैमरा स्ट्रीमिंग
- 5. एंड्रॉइड कैमरा से सर्वर पर स्ट्रीमिंग लाइव वीडियो
- 6. एंड्रॉइड कैमरा
- 7. एंड्रॉइड: कैमरा
- 8. एंड्रॉइड कैमरा
- 9. एंड्रॉइड वीडियो फ्रेम प्रोसेसिंग
- 10. एंड्रॉइड वीडियो व्यू - वीडियो
- 11. पूर्वावलोकन कैमरा से एंड्रॉइड कैमरा रिलीज त्रुटि
- 12. आईपैड कैमरा और वेबव्यू यूट्यूब वीडियो प्लेइंग
- 13. एंड्रॉइड कैमरा पूर्वावलोकन कॉलबैक 4.1
- 14. एंड्रॉइड - कैमरा पूर्वावलोकन
- 15. एंड्रॉइड कैमरा सतह लगातार
- 16. कस्टम कैमरा एंड्रॉइड
- 17. एंड्रॉइड आईसीएस एमुलेटर कैमरा
- 18. कैमरा लॉन्च एंड्रॉइड
- 19. एंड्रॉइड ऐप लॉकिंग कैमरा
- 20. एंड्रॉइड कैमरा पोर्ट्रेट अभिविन्यास
- 21. एंड्रॉइड कैमरा सेट रेज़ोल्यूशन
- 22. एंड्रॉइड x86 वर्चुअलबॉक्स + कैमरा
- 23. एंड्रॉइड कैमरा पूर्वावलोकन ट्यूटोरियल
- 24. एंड्रॉइड कैमरा सतह देखें
- 25. एंड्रॉइड एपीआई इनबिल्ट कैमरा और माइक्रो
- 26. ऑडियो के बिना एंड्रॉइड रिकॉर्ड वीडियो
- 27. एंड्रॉइड: पोर्ट्रेट मोड में कैमरा पूर्वावलोकन अभिविन्यास
- 28. एंड्रॉइड - फोटो का अभिविन्यास कैमरा
- 29. कैमरा पूर्वावलोकन पर एंड्रॉइड ड्रॉ
- 30. पोर्ट्रेट पर एंड्रॉइड कैमरा SurfaceView
मैं से बाहर कोई मतलब करने में सक्षम सर्वर से इस तरह से कच्चे धारा धक्का करने में सक्षम था, लेकिन कभी नहीं किया गया यह आप क्लाइंट सॉकेट के हैंडल दे सकते हैं और सबकुछ सर्वर –
पर धक्का दे सकते हैं। मुझे लगता है कि यह कुछ फ़ाइल पैकेटिज़ेशन में होगा। इसलिए आपको इसे कच्चे डेटा प्राप्त करने के लिए पहले इसे डिमैकेट करना होगा और फिर इसे आरटीपी पैकेट में दोबारा डालना होगा। ध्यान दें: H264 फ़ाइलफॉर्मैट में एमपीईजी_4_एसपी से अलग है। – Fildor
यह मेरे एंड्रॉइड पर लॉकल संग्रहीत ऑडियो फ़ाइल लेने के लिए बहुत अंतरंग होगा और इसे मेरे पीसी (उसी वलान) में आरटीपी के माध्यम से भेज देगा जहां मैं इसे सुन सकता हूं। कोई विचार मैं कैसे कर सकता हूं यह करें? – B770