Log in

View Full Version : streaming and transmission of h.264 encoded file


asifjnajua88
8th March 2012, 17:06
HI GUYS
i have final year project of video transmission over wifi using h.264 compression technique.Some how i manged to encode a video using JM refrence software of h.264.And now i have a encoded video file.Now i want to transmit over wifi to other computer using any protocol.I have no idea how i do this.Please guide me how i do this.
plzzzzzzzzzzzzzzzzzzzzz

pandy
8th March 2012, 18:59
http://www.videolan.org/vlc/

LoRd_MuldeR
9th March 2012, 00:25
First of all: For any real encoding job, you shouldn't be using a "proof of concept" encoder, such as JM. Instead use a serious encoder, such as x264 (http://x264.nl/) ;)

For transmitting a H.264 stream from one computer to another one there is a zillion of possibilities.

The easiest one, probably, is muxing your H.264 stream into an MP4 container (note: x264 can output MP4 files directly!) and putting that MP4 file onto some HTTP server.

You can install Apache (on Windows you would use the XAMPP (http://www.apachefriends.org/en/xampp.html) package) on your computer, if you don't have access to a dedicated web-server.

If you then want to embed the video into some web-site, you may use Flash Player with JW Player (http://www.longtailvideo.com/players/jw-flv-player/) for that purpose...

malikcis
9th March 2012, 11:55
This works fine with a file.
It is more chalenging to find good live streaming solutions using hardware encoding devices.
For me, only directshow based Unreal Media Server worked fine.
I tried to use FFMPEG with a named pipe input feed, VLC with no success.
I also tried live555 with a picture by picture feed but it was not that reliable either.

asifjnajua88
9th March 2012, 16:46
HI
THANKS FOR YOUR REPLYS
I am so new to this field.i want to send a file from one pc to another pc using wifi.i m using MVS c++ 2008.
THANKS

LoRd_MuldeR
9th March 2012, 16:56
WiFi is an organization which has developed various standards for wireless networks (WLAN).

So I assume you simply want to transfer the encoded H.264 file from one computer to another one over the local WLAN. Obviously, the easiest way for doing so, is using a Windows network share.

Using Visual C++ 2008 would imply that you are developing a software yourself. But so far you have not explained what that software is supposed to be doing...

(Neither encoding a H.264 file, e.g. via x264 encoder, nor transferring that file to another computer, e.g. via Windows network share over a WLAN, requires you to write your own software)

asifjnajua88
9th March 2012, 17:41
HI
basecally i want to make a client server application through which i send a video file. means on one computer run a server programe and other on client programe. after doing this i want send a encoded file as frame by frame. after doing first
step then i move to study how access frames from h.264 encoded video file.
THANKS

LoRd_MuldeR
9th March 2012, 18:06
You can make two "shared" folders (to be accessed over the WLAN) on the server machine. One where the client puts the file that is to be encoded and one where the encoded file will be put.

The server program would then have to monitor the "input" folder for new files and start the encoding job as soon as a new file appears. Encoded files go to the "output" folder, from where the client can download them.

To make this work over the internet, you would of course need to create some Web front-end, which allows the user to upload his file to the "input" folder. The encoder back-end would still work similarly though...

asifjnajua88
10th March 2012, 14:48
HI LORD_ MULDER
YA I simply want to transfer the encoded H.264 file from one computer to another one over the local WLAN. But through windows socket programming.
I am a newbie to socket prog. I was able to send some text using windows socket programming from a clent to a server. Now I wanted to know about sending a file to the server. So please help me and how should I proceed. It would be very helpful if I get a pseudocode or some sample code based on that . i m using MSV c++v 2008. i think this is better question from previous. my file is h.264 encoded video file .

LoRd_MuldeR
10th March 2012, 16:13
I think using the Windows file sharing service or some HTTP server (like Apache) or even FTP would be much easier for transferring a file.

But if you want to do it with "low level" sockets on the Win32 platform and with C++, you should start by studying the Winsock API:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms738545%28v=vs.85%29.aspx

Alternatively you may look at the Qt framework. It provides a higher level (and cross-platform!) abstraction of sockets that should be more easy to use:
http://qt-project.org/doc/qt-4.8/qtnetwork.html