Hardware for FFMPEG video encoding?
up vote
0
down vote
favorite
So I am trying to find out what the best way to transcode using FFMPEG would be on a commercial scale. I currently just have very CPU heavy cloud instances that run FFMPEG with parameters set as a balance between speed and quality. However I am now looking into a long term solution that will allow me to really transcode hundreds of video files daily maybe a few dozen at one time. So I looked into GPU acceleration and it seems due to the way the compression algorithms are structured CPU is generally faster than GPU anyway (more on that here). So next up is dedicated hardware, is there some sort of dedicated h.264 / h.264 encoder I could get and physically install in my server that would make FFMPEG transcoding blazing fast?
video ffmpeg hardware-acceleration
migrated from stackoverflow.com Feb 13 at 1:14
This question came from our site for professional and enthusiast programmers.
add a comment |
up vote
0
down vote
favorite
So I am trying to find out what the best way to transcode using FFMPEG would be on a commercial scale. I currently just have very CPU heavy cloud instances that run FFMPEG with parameters set as a balance between speed and quality. However I am now looking into a long term solution that will allow me to really transcode hundreds of video files daily maybe a few dozen at one time. So I looked into GPU acceleration and it seems due to the way the compression algorithms are structured CPU is generally faster than GPU anyway (more on that here). So next up is dedicated hardware, is there some sort of dedicated h.264 / h.264 encoder I could get and physically install in my server that would make FFMPEG transcoding blazing fast?
video ffmpeg hardware-acceleration
migrated from stackoverflow.com Feb 13 at 1:14
This question came from our site for professional and enthusiast programmers.
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
So I am trying to find out what the best way to transcode using FFMPEG would be on a commercial scale. I currently just have very CPU heavy cloud instances that run FFMPEG with parameters set as a balance between speed and quality. However I am now looking into a long term solution that will allow me to really transcode hundreds of video files daily maybe a few dozen at one time. So I looked into GPU acceleration and it seems due to the way the compression algorithms are structured CPU is generally faster than GPU anyway (more on that here). So next up is dedicated hardware, is there some sort of dedicated h.264 / h.264 encoder I could get and physically install in my server that would make FFMPEG transcoding blazing fast?
video ffmpeg hardware-acceleration
So I am trying to find out what the best way to transcode using FFMPEG would be on a commercial scale. I currently just have very CPU heavy cloud instances that run FFMPEG with parameters set as a balance between speed and quality. However I am now looking into a long term solution that will allow me to really transcode hundreds of video files daily maybe a few dozen at one time. So I looked into GPU acceleration and it seems due to the way the compression algorithms are structured CPU is generally faster than GPU anyway (more on that here). So next up is dedicated hardware, is there some sort of dedicated h.264 / h.264 encoder I could get and physically install in my server that would make FFMPEG transcoding blazing fast?
video ffmpeg hardware-acceleration
video ffmpeg hardware-acceleration
asked Feb 12 at 19:32
CMOS
1161
1161
migrated from stackoverflow.com Feb 13 at 1:14
This question came from our site for professional and enthusiast programmers.
migrated from stackoverflow.com Feb 13 at 1:14
This question came from our site for professional and enthusiast programmers.
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
up vote
1
down vote
You need to understand that hardware encoders generally produce slightly lower quality images at the same bitrate (or larger files at the same quality). If that’s ok, your best options are quick sync on intel CPUs, or nvenc on Nvidia GPUs. If you go Nvidia, make sure you check the specs on the card, as most of them are limited to 2 parallel encodes.
add a comment |
up vote
0
down vote
Hardware encoders are generally used for live encoding, providing a lot more stability than software which relies on an general purpose operating system.
Also Hardware encoders are limited to a certain set of options while software encoders are open for any thinkable option. Developing a hardware encoder costs multiple million dollars and it is not a flexible thing at all. E.g. Nvidia NVENC chips do not yet support any 4:2:2 colorspace profile (but future generations will do). Why is Nvidia not building encoder boards without all the graphics features? ...that is because because there is no money in this business.
Assumed what you want is to store the encoded result as a "file on harddrive", hardware encoders is not the way to go for you. Any professional hardware encoder that i know is built for network distribution and "live" usage only.
So, as long as you are in a cloud environment, you better use CPU encoding and just go for the CPU with highest frequency if you want speed.
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
You need to understand that hardware encoders generally produce slightly lower quality images at the same bitrate (or larger files at the same quality). If that’s ok, your best options are quick sync on intel CPUs, or nvenc on Nvidia GPUs. If you go Nvidia, make sure you check the specs on the card, as most of them are limited to 2 parallel encodes.
add a comment |
up vote
1
down vote
You need to understand that hardware encoders generally produce slightly lower quality images at the same bitrate (or larger files at the same quality). If that’s ok, your best options are quick sync on intel CPUs, or nvenc on Nvidia GPUs. If you go Nvidia, make sure you check the specs on the card, as most of them are limited to 2 parallel encodes.
add a comment |
up vote
1
down vote
up vote
1
down vote
You need to understand that hardware encoders generally produce slightly lower quality images at the same bitrate (or larger files at the same quality). If that’s ok, your best options are quick sync on intel CPUs, or nvenc on Nvidia GPUs. If you go Nvidia, make sure you check the specs on the card, as most of them are limited to 2 parallel encodes.
You need to understand that hardware encoders generally produce slightly lower quality images at the same bitrate (or larger files at the same quality). If that’s ok, your best options are quick sync on intel CPUs, or nvenc on Nvidia GPUs. If you go Nvidia, make sure you check the specs on the card, as most of them are limited to 2 parallel encodes.
answered Feb 13 at 2:22
szatmary
1,671710
1,671710
add a comment |
add a comment |
up vote
0
down vote
Hardware encoders are generally used for live encoding, providing a lot more stability than software which relies on an general purpose operating system.
Also Hardware encoders are limited to a certain set of options while software encoders are open for any thinkable option. Developing a hardware encoder costs multiple million dollars and it is not a flexible thing at all. E.g. Nvidia NVENC chips do not yet support any 4:2:2 colorspace profile (but future generations will do). Why is Nvidia not building encoder boards without all the graphics features? ...that is because because there is no money in this business.
Assumed what you want is to store the encoded result as a "file on harddrive", hardware encoders is not the way to go for you. Any professional hardware encoder that i know is built for network distribution and "live" usage only.
So, as long as you are in a cloud environment, you better use CPU encoding and just go for the CPU with highest frequency if you want speed.
add a comment |
up vote
0
down vote
Hardware encoders are generally used for live encoding, providing a lot more stability than software which relies on an general purpose operating system.
Also Hardware encoders are limited to a certain set of options while software encoders are open for any thinkable option. Developing a hardware encoder costs multiple million dollars and it is not a flexible thing at all. E.g. Nvidia NVENC chips do not yet support any 4:2:2 colorspace profile (but future generations will do). Why is Nvidia not building encoder boards without all the graphics features? ...that is because because there is no money in this business.
Assumed what you want is to store the encoded result as a "file on harddrive", hardware encoders is not the way to go for you. Any professional hardware encoder that i know is built for network distribution and "live" usage only.
So, as long as you are in a cloud environment, you better use CPU encoding and just go for the CPU with highest frequency if you want speed.
add a comment |
up vote
0
down vote
up vote
0
down vote
Hardware encoders are generally used for live encoding, providing a lot more stability than software which relies on an general purpose operating system.
Also Hardware encoders are limited to a certain set of options while software encoders are open for any thinkable option. Developing a hardware encoder costs multiple million dollars and it is not a flexible thing at all. E.g. Nvidia NVENC chips do not yet support any 4:2:2 colorspace profile (but future generations will do). Why is Nvidia not building encoder boards without all the graphics features? ...that is because because there is no money in this business.
Assumed what you want is to store the encoded result as a "file on harddrive", hardware encoders is not the way to go for you. Any professional hardware encoder that i know is built for network distribution and "live" usage only.
So, as long as you are in a cloud environment, you better use CPU encoding and just go for the CPU with highest frequency if you want speed.
Hardware encoders are generally used for live encoding, providing a lot more stability than software which relies on an general purpose operating system.
Also Hardware encoders are limited to a certain set of options while software encoders are open for any thinkable option. Developing a hardware encoder costs multiple million dollars and it is not a flexible thing at all. E.g. Nvidia NVENC chips do not yet support any 4:2:2 colorspace profile (but future generations will do). Why is Nvidia not building encoder boards without all the graphics features? ...that is because because there is no money in this business.
Assumed what you want is to store the encoded result as a "file on harddrive", hardware encoders is not the way to go for you. Any professional hardware encoder that i know is built for network distribution and "live" usage only.
So, as long as you are in a cloud environment, you better use CPU encoding and just go for the CPU with highest frequency if you want speed.
answered Nov 23 at 22:19
Harry
34419
34419
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.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- 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%2f1294446%2fhardware-for-ffmpeg-video-encoding%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