Question

I want to make a video transcoder as a holiday project in Java. I was looking into the basics of video files and came across terms like containers, bit rate, bit depth and so on.

I have questions regarding bitrate.

I know bitrate is the amount of data that is contained in the video per second. Sound also has a bit rate but is considerably lower than that of video, obviously.

So, say there is a video that is of 8 Mbps (YouTube HD 720p) and the user wants to transcode it to a lower bitrate of 4 Mbps.
Will this cause the sound to go out of sync?

I am not doing the transcoding myself, I am using Xuggler for it which contains a lot of codecs like H264 and others.

Also, if, by an accident the user decides to convert a 4 Mbps video to a 8 Mbps video, what will happen ?
This situation is possible if the user gives a video captured from a phone camera and decides to store it in DVD quality.

Also, there are other things to take into consideration like frame rate right ? Because a low capacity device can not handle a higher frame rate. is frame rate related to bit rate?

Was it helpful?

Solution

There are several possibilities of what will happen, depending on the decoder and so on. I'm not familiar with Xuggler, but:

The sound should not go out of sync if you drop video bitrate with a proper software. It will not shorten the video or anything like that. Depending on what you do to it, either the frame-rate will drop ( it will discard every 2nd frame) or each frame will be more compressed.

OTHER TIPS

The audio and video are generally independent, so changing the bitrate of one will not affect the other. In the case of changing to a higher bitrate, the transcoder will either throw an error, or produce a larger file at the same quality as the original.

The frame rate is not directly related. The bit rate is just a measure of how many bits are being used to encode one second of audio or video.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top