Streaming from multiple URLs (Peer-to-Peer)

by Hun » Wed, 04 Mar 2009 06:58:04 GMT

Sponsored Links

I am developing a peer-to-peer video streaming application for
Android, and I have been around this discussion for two months. Still
I haven't been able to find a good approach for my application.

Basically, I have multiple sources in the network (as peers). Each of
them sends a substream of a video to an Android mobile. A P2P
application (I plan to develop) is running on the mobile, and
assembles these substreams into a single stream. Then, the P2P
application passes the assembled stream to a media player for

For my purpose, none of "local file playback" and "RTSP/HTTP
streaming" work. I tried to send an MP4 clip from the multiple
sources, but I couldn't remove "gaps" between the playback of clips.

Next, I have been thinking about creating a local MP4 file by
encapsulating an assembled stream. I don't think it is a good idea,
because 1) MP4 encapsulation should be done in real time, and since
the file will grow over time, fileOpen() won't work. 2) It is just an
unnecessary, awkward step.

Finally, I came to a conclusion that I should write a new dataSource
node that will be used by PVPlayerEngine. This node will get input
from my P2P app ( I think this app should reside on top of JAVA API ),
and pass the assembled stream to the next node ( decoder node? ).

The assembled stream will be a train of H264 NAL units (created by
x264 encoder). I believe the AVC decoder included in OpenCore will
handle pure H264 NAL units, since any format parser  (such as MP4)
will return one or multiple NAL units that correspond to a single
video frame, if the input is an H264 encoded video.

Please share your thoughts on my plan. Can someone provide a better,
or strikingly easy solution?


Streaming from multiple URLs (Peer-to-Peer)

by Prajnashi S » Wed, 04 Mar 2009 13:28:32 GMT

 What's assembled stream? Do you mean you receive H264 streams from
multisite, then play them together (display each stream in an separated

-- Prajnashi S


Sponsored Links

Streaming from multiple URLs (Peer-to-Peer)

by Hun » Wed, 04 Mar 2009 20:11:29 GMT

 An original video is split into many substreams, and they are
assembled back to the original stream at the mobile. So, it is just a
single H264 video stream. I'm simply using multiple sites as a video

I wonder what would be the easiest way to achieve this plan.


Streaming from multiple URLs (Peer-to-Peer)

by Prajnashi S » Thu, 05 Mar 2009 05:07:41 GMT

 our requirement seems to play a raw 264 NAL streams, which shall be
recieved and assembled in a Java app. If you want to reuse opencore
framework, you need write a new source and file parser to receive data from
java side. Since opencore is a standalone process, you shall use any IPC
mechanism to do that (Binder, share memory, ...). To make opencore lauch
your plugins, you can define a specific URL for this case, for example,


On Thu, Mar 5, 2009 at 4:11 AM, Hun <> wrote:

-- Prajnashi S


Streaming from multiple URLs (Peer-to-Peer)

by Hun » Thu, 05 Mar 2009 07:47:17 GMT

 hank you, Prajnashi. Based on your suggestion, I think I should:

- Understand how "URL" is parsed in the OpenCore (to launch a specific
- Write a source node that receives a raw NAL unit from a JAVA
application (P2P layer).
- Understand the communication between the OpenCore process and the
JAVA application (using Binder or shared memory)

I still don't understand where "file parser" is used. Looks like the
new source node which I should add can't communicate with the next
node ( assuming it's a decoder node?) directly. In the OpenCore
source, I see "fileformats/*", where various file formats are defined.
In addition, "nodes/" contain several parser nodes. What folder is

Thank you!

On Mar 4, 9:07pm, Prajnashi S <> wrote:

Other Threads

1. Complete Newbie - Looking for some help :)

Hi there.

Well i decided today that I want to create a very simple app to
compliment my website at

I basically want to make a simple app with nice looking buttons,
leading to the different areas of help/tutorial, then work from there.

I have installed everything need, Eclipse etc and have made my first
"hello world" app in the process.

I am no stumped as to where to go next. So hoping for some friendly
advice :)




2. How to create uses-library

In android manifest file there is a tag to include libraries called
Suppose if i have some java files in the package hierarchy called
i used the following tag in my manifest file
<uses-library android:name="" />
Now it is compiled successfully.
But if i want to launch to emulator it is throwing the following error
[2010-05-10 10:38:18 - MyMusicPlayer] Installing MyMusicPlayer.apk...
[2010-05-10 10:38:20 - MyMusicPlayer] Installation error:
[2010-05-10 10:38:20 - MyMusicPlayer] Please check logcat output for more
[2010-05-10 10:38:20 - MyMusicPlayer] Launch canceled!
And application is not running on emulator.
Any help please


3. Android 2.1 & MS SQL Server

4. Gak bisa buka youtube

5. pdf download problem

6. moving wifi source code library to vendor's folder

7. Paging Renner