Help needed for video surveillance application

Hi, I'm looking to build a simple java based video surveillance program and I need some guidance. What I want to do is get video from a web cam and send it over the internet to another computer which will be able to view the video. I'm not nessecarily interested in sound right now but in the future I will probably like to implement audio capibilites. Also I would like be able to switch the recieving machines internet location every once and a while. I'm also looking forward to implementing a way to record the video content to a file straight from the stream.

So this is where I am with my understanding of what I have to do so far. I have to make a application that runs on the server side (sending machine) that listens for a connection request. When it recieves a connection request it should probably check for a password make a connection and then start streaming the video or other media accross the connection. On the client side (recieving machine) I will have to send a connection request make a connection and then recieve the video data from the connection and display it on the screen.

In order to do the above, I've been looking at JMF and RTP. If anybody can give me small examples or some basic source code for what I'm describing it would be appreciated, otherwise if using JMF and RTP is not a wise decision for what I'm trying to achieve please let me know what else I should do. TIA
Who is Participating?
MindphaserConnect With a Mentor Commented:
Force accepted

** Mindphaser - Community Support Moderator **

the JMF is hte way to go, i dont have examples, but check with

The connection is simple enough, a UDP socket connection (not a TCP due to overhead and no real need for perfect transmission), you then need to register a driver for the input device, and hten you should be able to get the stream(/s eg audio), and bung them on to the network/internet.

i may be able to get some source, or amore detailed idea of what you need to do and some resources to look at on monday.

Googly Ralph.
kainhartAuthor Commented:
Ok, I've decied to use RTP in my Java JMF based application. Right now I'm concentrating on the recieving end only but I'm getting very confused with the SessionManager, RTPManager, RTPStream, ... lingo. All the examples I see out there try to open a new player for each stream that is present in a session which bloats the examples so much that I can't follow the meaningful code. ]

All I want to start with is a single connection to a RTP server, which should only be sending information that has come from a single capture device. So as far as I can tell I don't really have much use for code that checks for format changes, payload changes, additional participants, or additional streams. I just need one player to play video that is being sent by one transmitter. What do I need as far as code to do just this?

I've already made a player window type of GUI form which encapsulates the player and it's funcionality so that a player can just be passed the window when created. From what I understand so far I have to get an address and port number for the transmitting machine and then I have to use it to somehow down the line create a player to view the video and a DataSink to record the data to a file. The thing I don't understand is that I create a player by just passing a MediaLocator to the Manager.createPlayer() method, so why do I even need a manager? I don't even see where RTP comes into play because all I have to do is pass the address, port information, and TTL in and get the player out then use it. If somebody can help me with all this confusion please do.
This old question needs to be finalized -- accept an answer, split points, or get a refund.  For information on your options, please click here-> http:/help/closing.jsp#1 
Post your closing recommendations!  No comment means you don't care.
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:

[paq'ed and points refunded]

Please leave any comments here within the next seven days.
EE Cleanup Volunteer
If you feel that your question was not properly addressed, or that none of the comments received were appropriate answers, please post your concern in THIS thread.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.