Why is the FPS in Handbrake's status bar so low relative to the FPS of the output video?

Multi tool use
I'm using Handbrake to re-encode an MKV video with the goal of shaving a hundred or so megabytes off it to keep it under FAT32's 4.2GB file size limit.
During encode, Handbrake's status bar shows a frame rate of 1.2, and an average frame rate of 1.7, which is ridiculously low:
However, when I use MPC-HC's CtrlJ to show the frame on the output file (by pausing the encode job and playing the partially-encoded file) it shows a frame rate fluctuating at much more normal FPS speeds:
What relevance do the frame rates shown in Handbrake's status bar while encoding have to the frame rates of the output video, and why are they so low? Would I be correct in thinking that the FPS shown in the status is nothing but a measure of performance, and has no direct bearing on the quality of the output?
video video-conversion encoding handbrake
add a comment |
I'm using Handbrake to re-encode an MKV video with the goal of shaving a hundred or so megabytes off it to keep it under FAT32's 4.2GB file size limit.
During encode, Handbrake's status bar shows a frame rate of 1.2, and an average frame rate of 1.7, which is ridiculously low:
However, when I use MPC-HC's CtrlJ to show the frame on the output file (by pausing the encode job and playing the partially-encoded file) it shows a frame rate fluctuating at much more normal FPS speeds:
What relevance do the frame rates shown in Handbrake's status bar while encoding have to the frame rates of the output video, and why are they so low? Would I be correct in thinking that the FPS shown in the status is nothing but a measure of performance, and has no direct bearing on the quality of the output?
video video-conversion encoding handbrake
Why was this downvoted?
– Hashim
Jan 7 at 23:04
add a comment |
I'm using Handbrake to re-encode an MKV video with the goal of shaving a hundred or so megabytes off it to keep it under FAT32's 4.2GB file size limit.
During encode, Handbrake's status bar shows a frame rate of 1.2, and an average frame rate of 1.7, which is ridiculously low:
However, when I use MPC-HC's CtrlJ to show the frame on the output file (by pausing the encode job and playing the partially-encoded file) it shows a frame rate fluctuating at much more normal FPS speeds:
What relevance do the frame rates shown in Handbrake's status bar while encoding have to the frame rates of the output video, and why are they so low? Would I be correct in thinking that the FPS shown in the status is nothing but a measure of performance, and has no direct bearing on the quality of the output?
video video-conversion encoding handbrake
I'm using Handbrake to re-encode an MKV video with the goal of shaving a hundred or so megabytes off it to keep it under FAT32's 4.2GB file size limit.
During encode, Handbrake's status bar shows a frame rate of 1.2, and an average frame rate of 1.7, which is ridiculously low:
However, when I use MPC-HC's CtrlJ to show the frame on the output file (by pausing the encode job and playing the partially-encoded file) it shows a frame rate fluctuating at much more normal FPS speeds:
What relevance do the frame rates shown in Handbrake's status bar while encoding have to the frame rates of the output video, and why are they so low? Would I be correct in thinking that the FPS shown in the status is nothing but a measure of performance, and has no direct bearing on the quality of the output?
video video-conversion encoding handbrake
video video-conversion encoding handbrake
asked Jan 6 at 22:43


HashimHashim
3,04063060
3,04063060
Why was this downvoted?
– Hashim
Jan 7 at 23:04
add a comment |
Why was this downvoted?
– Hashim
Jan 7 at 23:04
Why was this downvoted?
– Hashim
Jan 7 at 23:04
Why was this downvoted?
– Hashim
Jan 7 at 23:04
add a comment |
2 Answers
2
active
oldest
votes
The value for encoding a video is different from the value for playing a video.
For example, videos use to play a 24 (Film), 25 (PAL), 29.97 (NTSC) Frames-per-second(FPS).
But creating a video stream of one second may consume more processor time for a second of video than one second. So to create one second of video, several seconds of encoding time on the CPU may be necessary. Therefore the FPS of the encoding may be lower that the FPS of playing and you can experience that you need 10 hours to encode an 1:30h movie.
If you encoded a movie using an old codec like MJPEG
, you could get a FPS higher than your playing FPS.
The encoding FPS is independent from the playing FPS.
Would I be correct in thinking that the FPS shown in the status is nothing but a measure of performance, and has no direct bearing on the quality of the output?
Not exactly. The FPS shown are a measure of performance in encoding a video, and the output FPS of the video is fixed. But the higher the quality of the encode, the longer it (usually) takes (and the better the quality). The FPS of the playback is - unsurprisingly and as desired - constant.
Good answer, but I think it might be confusing to call the FPS of the encoded file "constant" - in my case it's actually variable, although I understood your meaning.
– Hashim
Jan 7 at 3:02
There is no video format with a variable FPS so no it should not be confusing
– silmaril
Jan 7 at 11:29
@silmaril Handbrake seems to disagree with you, see the first screenshot.
– Hashim
Jan 7 at 23:05
In the newer h.264 video streams the (playback) frame rate can be adjusted in the SPS (Sequence-Parameter-Set) of a NAL (Network Abstraction Layer) with the fieldsnum_units_in_tick : value
,time_scale : ...
andfixed_frame_rate_flag
. If you're interested in that, I found this posting about SPS. You always want to watch a video that appears to have a constant frame-rate.
– zx485
Jan 8 at 0:03
add a comment |
Encoding a video is generally more computationally expensive than playing it and is also not bound by the video playback speed.
Depending on the speed of your processor the encode may be faster or slower than the actual playback speed and it is that performance that handbrake is showing.
It is how many frames per second are being processed, not the actual playback speed.
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1391282%2fwhy-is-the-fps-in-handbrakes-status-bar-so-low-relative-to-the-fps-of-the-outpu%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
The value for encoding a video is different from the value for playing a video.
For example, videos use to play a 24 (Film), 25 (PAL), 29.97 (NTSC) Frames-per-second(FPS).
But creating a video stream of one second may consume more processor time for a second of video than one second. So to create one second of video, several seconds of encoding time on the CPU may be necessary. Therefore the FPS of the encoding may be lower that the FPS of playing and you can experience that you need 10 hours to encode an 1:30h movie.
If you encoded a movie using an old codec like MJPEG
, you could get a FPS higher than your playing FPS.
The encoding FPS is independent from the playing FPS.
Would I be correct in thinking that the FPS shown in the status is nothing but a measure of performance, and has no direct bearing on the quality of the output?
Not exactly. The FPS shown are a measure of performance in encoding a video, and the output FPS of the video is fixed. But the higher the quality of the encode, the longer it (usually) takes (and the better the quality). The FPS of the playback is - unsurprisingly and as desired - constant.
Good answer, but I think it might be confusing to call the FPS of the encoded file "constant" - in my case it's actually variable, although I understood your meaning.
– Hashim
Jan 7 at 3:02
There is no video format with a variable FPS so no it should not be confusing
– silmaril
Jan 7 at 11:29
@silmaril Handbrake seems to disagree with you, see the first screenshot.
– Hashim
Jan 7 at 23:05
In the newer h.264 video streams the (playback) frame rate can be adjusted in the SPS (Sequence-Parameter-Set) of a NAL (Network Abstraction Layer) with the fieldsnum_units_in_tick : value
,time_scale : ...
andfixed_frame_rate_flag
. If you're interested in that, I found this posting about SPS. You always want to watch a video that appears to have a constant frame-rate.
– zx485
Jan 8 at 0:03
add a comment |
The value for encoding a video is different from the value for playing a video.
For example, videos use to play a 24 (Film), 25 (PAL), 29.97 (NTSC) Frames-per-second(FPS).
But creating a video stream of one second may consume more processor time for a second of video than one second. So to create one second of video, several seconds of encoding time on the CPU may be necessary. Therefore the FPS of the encoding may be lower that the FPS of playing and you can experience that you need 10 hours to encode an 1:30h movie.
If you encoded a movie using an old codec like MJPEG
, you could get a FPS higher than your playing FPS.
The encoding FPS is independent from the playing FPS.
Would I be correct in thinking that the FPS shown in the status is nothing but a measure of performance, and has no direct bearing on the quality of the output?
Not exactly. The FPS shown are a measure of performance in encoding a video, and the output FPS of the video is fixed. But the higher the quality of the encode, the longer it (usually) takes (and the better the quality). The FPS of the playback is - unsurprisingly and as desired - constant.
Good answer, but I think it might be confusing to call the FPS of the encoded file "constant" - in my case it's actually variable, although I understood your meaning.
– Hashim
Jan 7 at 3:02
There is no video format with a variable FPS so no it should not be confusing
– silmaril
Jan 7 at 11:29
@silmaril Handbrake seems to disagree with you, see the first screenshot.
– Hashim
Jan 7 at 23:05
In the newer h.264 video streams the (playback) frame rate can be adjusted in the SPS (Sequence-Parameter-Set) of a NAL (Network Abstraction Layer) with the fieldsnum_units_in_tick : value
,time_scale : ...
andfixed_frame_rate_flag
. If you're interested in that, I found this posting about SPS. You always want to watch a video that appears to have a constant frame-rate.
– zx485
Jan 8 at 0:03
add a comment |
The value for encoding a video is different from the value for playing a video.
For example, videos use to play a 24 (Film), 25 (PAL), 29.97 (NTSC) Frames-per-second(FPS).
But creating a video stream of one second may consume more processor time for a second of video than one second. So to create one second of video, several seconds of encoding time on the CPU may be necessary. Therefore the FPS of the encoding may be lower that the FPS of playing and you can experience that you need 10 hours to encode an 1:30h movie.
If you encoded a movie using an old codec like MJPEG
, you could get a FPS higher than your playing FPS.
The encoding FPS is independent from the playing FPS.
Would I be correct in thinking that the FPS shown in the status is nothing but a measure of performance, and has no direct bearing on the quality of the output?
Not exactly. The FPS shown are a measure of performance in encoding a video, and the output FPS of the video is fixed. But the higher the quality of the encode, the longer it (usually) takes (and the better the quality). The FPS of the playback is - unsurprisingly and as desired - constant.
The value for encoding a video is different from the value for playing a video.
For example, videos use to play a 24 (Film), 25 (PAL), 29.97 (NTSC) Frames-per-second(FPS).
But creating a video stream of one second may consume more processor time for a second of video than one second. So to create one second of video, several seconds of encoding time on the CPU may be necessary. Therefore the FPS of the encoding may be lower that the FPS of playing and you can experience that you need 10 hours to encode an 1:30h movie.
If you encoded a movie using an old codec like MJPEG
, you could get a FPS higher than your playing FPS.
The encoding FPS is independent from the playing FPS.
Would I be correct in thinking that the FPS shown in the status is nothing but a measure of performance, and has no direct bearing on the quality of the output?
Not exactly. The FPS shown are a measure of performance in encoding a video, and the output FPS of the video is fixed. But the higher the quality of the encode, the longer it (usually) takes (and the better the quality). The FPS of the playback is - unsurprisingly and as desired - constant.
edited Jan 6 at 23:04
answered Jan 6 at 22:58


zx485zx485
822613
822613
Good answer, but I think it might be confusing to call the FPS of the encoded file "constant" - in my case it's actually variable, although I understood your meaning.
– Hashim
Jan 7 at 3:02
There is no video format with a variable FPS so no it should not be confusing
– silmaril
Jan 7 at 11:29
@silmaril Handbrake seems to disagree with you, see the first screenshot.
– Hashim
Jan 7 at 23:05
In the newer h.264 video streams the (playback) frame rate can be adjusted in the SPS (Sequence-Parameter-Set) of a NAL (Network Abstraction Layer) with the fieldsnum_units_in_tick : value
,time_scale : ...
andfixed_frame_rate_flag
. If you're interested in that, I found this posting about SPS. You always want to watch a video that appears to have a constant frame-rate.
– zx485
Jan 8 at 0:03
add a comment |
Good answer, but I think it might be confusing to call the FPS of the encoded file "constant" - in my case it's actually variable, although I understood your meaning.
– Hashim
Jan 7 at 3:02
There is no video format with a variable FPS so no it should not be confusing
– silmaril
Jan 7 at 11:29
@silmaril Handbrake seems to disagree with you, see the first screenshot.
– Hashim
Jan 7 at 23:05
In the newer h.264 video streams the (playback) frame rate can be adjusted in the SPS (Sequence-Parameter-Set) of a NAL (Network Abstraction Layer) with the fieldsnum_units_in_tick : value
,time_scale : ...
andfixed_frame_rate_flag
. If you're interested in that, I found this posting about SPS. You always want to watch a video that appears to have a constant frame-rate.
– zx485
Jan 8 at 0:03
Good answer, but I think it might be confusing to call the FPS of the encoded file "constant" - in my case it's actually variable, although I understood your meaning.
– Hashim
Jan 7 at 3:02
Good answer, but I think it might be confusing to call the FPS of the encoded file "constant" - in my case it's actually variable, although I understood your meaning.
– Hashim
Jan 7 at 3:02
There is no video format with a variable FPS so no it should not be confusing
– silmaril
Jan 7 at 11:29
There is no video format with a variable FPS so no it should not be confusing
– silmaril
Jan 7 at 11:29
@silmaril Handbrake seems to disagree with you, see the first screenshot.
– Hashim
Jan 7 at 23:05
@silmaril Handbrake seems to disagree with you, see the first screenshot.
– Hashim
Jan 7 at 23:05
In the newer h.264 video streams the (playback) frame rate can be adjusted in the SPS (Sequence-Parameter-Set) of a NAL (Network Abstraction Layer) with the fields
num_units_in_tick : value
,time_scale : ...
and fixed_frame_rate_flag
. If you're interested in that, I found this posting about SPS. You always want to watch a video that appears to have a constant frame-rate.– zx485
Jan 8 at 0:03
In the newer h.264 video streams the (playback) frame rate can be adjusted in the SPS (Sequence-Parameter-Set) of a NAL (Network Abstraction Layer) with the fields
num_units_in_tick : value
,time_scale : ...
and fixed_frame_rate_flag
. If you're interested in that, I found this posting about SPS. You always want to watch a video that appears to have a constant frame-rate.– zx485
Jan 8 at 0:03
add a comment |
Encoding a video is generally more computationally expensive than playing it and is also not bound by the video playback speed.
Depending on the speed of your processor the encode may be faster or slower than the actual playback speed and it is that performance that handbrake is showing.
It is how many frames per second are being processed, not the actual playback speed.
add a comment |
Encoding a video is generally more computationally expensive than playing it and is also not bound by the video playback speed.
Depending on the speed of your processor the encode may be faster or slower than the actual playback speed and it is that performance that handbrake is showing.
It is how many frames per second are being processed, not the actual playback speed.
add a comment |
Encoding a video is generally more computationally expensive than playing it and is also not bound by the video playback speed.
Depending on the speed of your processor the encode may be faster or slower than the actual playback speed and it is that performance that handbrake is showing.
It is how many frames per second are being processed, not the actual playback speed.
Encoding a video is generally more computationally expensive than playing it and is also not bound by the video playback speed.
Depending on the speed of your processor the encode may be faster or slower than the actual playback speed and it is that performance that handbrake is showing.
It is how many frames per second are being processed, not the actual playback speed.
answered Jan 7 at 8:15
Mokubai♦Mokubai
56.9k16135153
56.9k16135153
add a comment |
add a comment |
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1391282%2fwhy-is-the-fps-in-handbrakes-status-bar-so-low-relative-to-the-fps-of-the-outpu%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
DkxzjvVfQZf5fQP739COS QNs InrehR5N4rdFK
Why was this downvoted?
– Hashim
Jan 7 at 23:04