Thread: Video streamin server

  1. #1
    Registered User
    Join Date
    May 2011

    Video streamin server

    Hi, I would like to write my own video streaming server for linux , so could you tell me how diffcult it will be, what I should do first and what kind of programing tools I need ?

  2. #2
    Registered User
    Join Date
    Nov 2010
    Long Beach, CA
    Well, it really depends on your programming skills. Given your question, I'd wager you have little to no experience with C or C++. Pick one (it doesn't matter which), and take the time to learn it -- not just the syntax, but how to use it effectively. We have some tutorials, and the individual C and C++ forums have book recommendations. Of course, Google has much more on that. Eventually, I would recommend learning both, as they are two different tools, each capable of solving the same problems, but in different ways, each with their own strengths and weaknesses and their own suitability for different tasks. But just pick one for starters.

    You also need good development methodologies for any project bigger than Hello World. This involves defining the problem, then understanding it, then coming up with a solution. That solution is not code. It's a general way of solving the problem. Then you can start coding, in small chunks, remembering to test little by little as you go. I can't stress that last part enough. It took me a few years of programming for a living to really learn to appreciate that one. Finding a bug in the last 20 lines of code you wrote is much easier than finding one in the last 20,000 lines.

    You should learn to use a debugger like GDB. It's invaluable for tracking down exactly what's going wrong in your code.

    Make sure you use a clear, consistent coding style, probably one of the first 3 styles mentioned here: Indent style - Wikipedia, the free encyclopedia. Also, you should comment your code. Make sure not to state the obvious, like:
    x++;  // increment x
    You want your comments to be informative, and to provide a higher-level explanation of your code, and to explain why your code does what it does. Always write your comments as if your code is going to be read by somebody who speaks fluent C, but has no idea what your program is supposed to do or why. That is how you will feel when you look back on it in a few months or a year -- you wont remember most of it.

    Another great tip is to use version control. I use it for all of my personal projects, even if they're 50 line scripts I use for automating little tasks on my home computer. This will be thousands of lines of code, and having the ability to go back to a previous incarnation of code you know worked, and analyze what's different between that version and the last one you checked in. There are lots of options, but as for free ones for Linux, I would suggest git or svn. Git is much harder to use, but more powerful and probably a more worthwhile skill in the long run (if you can handle git, svn is easy), especially if you intend to make a job out of coding or if you want to work on open source software.

    As for programming tools, you need a text editor and a compiler. Your Linux system almost certainly has vi and gcc installed (and g++), and probably a few other "friendlier" editors. I recommend something with syntax highlighting and auto-indent as a bare minimum. Fancier IDE editors are also available. You'll have to learn to use them too, but most of this stuff has decent documentation and tutorials on line.

    Lastly, realize that none of this was meant to discourage you, but rather to make sure you can accomplish this by approaching it intelligently, and with reasonable expectations. Otherwise, you will likely end up frustrated and give up, which we don't want. So get cracking, and come back if you have more questions.
    Last edited by anduril462; 05-31-2011 at 06:19 PM. Reason: added some links

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Connection between proxy server and the server
    By vbx_wx in forum Networking/Device Communication
    Replies: 2
    Last Post: 02-07-2011, 01:51 PM
  2. Send integers to server and server can read them?
    By rahul.hbk007 in forum C Programming
    Replies: 7
    Last Post: 05-02-2010, 10:14 AM
  3. Client/server problem; server either stops receiving data or client stops sending
    By robot-ic in forum Networking/Device Communication
    Replies: 10
    Last Post: 02-16-2009, 11:45 AM
  4. File streamin question in|out
    By kennny2004 in forum C++ Programming
    Replies: 5
    Last Post: 03-21-2006, 11:12 PM
  5. C#: Server.Execute() and Server.Transfer()
    By Grayson_Peddie in forum Networking/Device Communication
    Replies: 3
    Last Post: 09-24-2003, 06:50 PM