How to Implement HTTP byte-range requests in Spring MVC

The request for support for http byte-range was open at the time of this answer but is fixed in Spring 4.2.RC1. Check jira SPR-10805 or, the PR here. But based on the code that you linked in your question, Davin Kevin built a solution that could work for your request. Code for MultipartFileSender: import org.apache.commons.lang3.StringUtils; … Read more

streaming video FROM an iPhone

You could divide your recording to separate files with a length of say, 10sec, then send them separately. If you use AVCaptureSession‘s beginConfiguration and commitConfiguration methods to batch your output change you shouldn’t drop any frames between the files. This has many advantages over frame by frame upload: The files can be directly used for … Read more

Low latency (< 2s) live video streaming HTML5 solutions?

Technologies and Requirements The only web-based technology set really geared toward low latency is WebRTC. It’s built for video conferencing. Codecs are tuned for low latency over quality. Bitrates are usually variable, opting for a stable connection over quality. However, you don’t necessarily need this low latency optimization for all of your users. In fact, … Read more

How to record webcam and audio using webRTC and a server-based Peer connection

You should definitely have a look at Kurento. It provides a WebRTC server infrastructure that allows you to record from a WebRTC feed and much more. You can also find some examples for the application you are planning here. It is really easy to add recording capabilities to that demo, and store the media file … Read more

HTTP LIve Streaming

HTTP Live Streaming HTTP Live Streaming is a streaming standard proposed by Apple. See the latest draft standard. Files involved are .m4a for audio (if you want a stream of audio only). .ts for video. This is a MPEG-2 transport, usually with a h.264/AAC payload. It contains 10 seconds of video and it is created … Read more

Playing video on TextureView

Here is how you can do it: (solution by the question author, that he posted as an update in the question) Public class MediaPlayerDemo_Video extends Activity implements TextureView.SurfaceTextureListener { private MediaPlayer mMediaPlayer; private TextureView mPreview; @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); mPreview = new TextureView(this); mPreview.setLayoutParams(new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); mPreview.setSurfaceTextureListener(this); extras = getIntent().getExtras(); setContentView(mPreview); } … Read more

Post processing in ffmpeg to move ‘moov atom’ in MP4 files (qt-faststart)

Seems like faststart support has been included in ffmpeg. FFmpeg Formats Documentation: -movflags faststart Run a second pass moving the moov atom on top of the file. This operation can take a while, and will not work in various situations such as fragmented output, thus it is not enabled by default.

tech