Wednesday 15 June 2011

c# - Real-time video encoding for mobile -


Does a real-time video know a good way to re-encoding (target format 3GP S 263 AMR Enerband and MP4 MP4V is not Mp4a, but at the same time of the course.Input files can be WMV, but support for more input formats is better?)

Currently we use a C # service Do asynchronous processing which is the ffmpeg command line, but a sink The idea of ​​doing this for aon request is a little sub-optimal because the user has to wait for some time before the playback starts (though, if it is the best condition then I know and I think that I I'll stay with it).

It would be terrible if we could serve and save the file together (so that we could store it for future requests), but if we can not do this, then it will not be a disaster. .

As a sidenote, I prefer to avoid a streaming solution because fewer devices will support it, but if I do not want to have any good methods then I would love to hear the option, even if Only Y streaming is included.

Update

To keep you up-to-date in order to keep you, I am currently playing with the idea of ​​writing a cover where I got it Called FEMPEG's DLL directly to CEE, to think that I can be able to achieve that methodology, I am in that way (instead of holding the data slowly, instead of finishing it once, Enough for enough time Quantity can be found).

Still, it will work and it is trying to find the best samples of how it will work (even the ones written in C. will show the interface with DLL due to C # ). / P>

For a streaming solution, we use it to convert any MGG based video to 3GP / H263 Worked fine for us for streaming in However, you should know exactly in terms of spectacles, formats, encoding etc. This is a large area and their product does not "interpret" some basic conditions, they believe that you already know what you are doing besides, as far as I miss, you can get audio and video Channels must be synchronized manually. Their demo app shows how to do this (but then, it's just a demo app, so you can end up with your optimization).

I think you can use it for re-encoding as well as streaming, I have not tried it myself recently. How do you plan to output results? A System.IO.MemoryStream ?

Another streaming solution is a well-known streaming server such as, and it is to use "back-to-back" technology: your handler receives a request and Requests for streaming server. The response to the streaming server is displayed to the customer. It's like a hack, but for some time this works very well for us.

Your ffmpeg solution is fine, and if you can "tolerate" this low-level near-real time conversion, then it may be better to leave it.

Update : If you wrap ffmpeg with Android, which seems like a great solution, because ffmpeg is a great library, if you can share your solution then it will be great we tried to play with it but we did not take enough time.


No comments:

Post a Comment