I've been testing with Elastic Transcoder for a while. I've been using Zencoder currently and plan to replace it with Elastic Transcoder. I've an issue about transcoding time with multiple outputs and I've trying to find a solution to reduce the time of transcoding if anyway to achieve that.
I've uploaded an input video file, it can be any format and any resolution. I want Elastic Transcoder encodes them to produce two output formats, mp4 and webm, with the resolution of 640x360 with one request. I've define two presets for this.
The first one is for mp4 files, like this:
Codec H.264
Codec Options
InterlacedMode:Progressive,MaxReferenceFrames:3,Level:3,ColorSpaceConversionMode:None,Profile:baseline
Maximum Number of
Frames Between Keyframes 90
Fixed Number of Frames
Between Keyframes false
Bit Rate 720
Frame Rate 29.97
Video Max Frame Rate
Max Width 640
Max Height 360
Sizing Policy Fill
Padding Policy NoPad
Display Aspect Ratio auto
The second one for webm,like this:
Codec Options
Maximum Number of
Frames Between Keyframes 90
Fixed Number of Frames
Between Keyframes false
Bit Rate 600
Frame Rate 30
Video Max Frame Rate
Max Width 640
Max Height 360
Sizing Policy Fill
Padding Policy NoPad
Display Aspect Ratio auto
In Zencoder, encoding process for mp4 and webm starts concurrently. So, for ex: if input video duration is 13 seconds then encoding process takes time 13 seconds approximately for two outputs, mp4 and webm.
In Aws Elastic Transcoder, this encoding process takes time 26 seconds approximately. I think it's because of, it doesn't encode two outputs at the same time. So, this is a problem. I need to reduce this time.
Can I configure it in Elastic Transcoder to process two outputs at the same time? Or Do I need to send two request at the same time for getting two output formats to reduce the transcoding time?
I've go deeper into the details and found the solution.
Actually, AWS processes two outputs concurrently but the problem is related with the webm takes so much longer. It is because VP9 codec have been configured in preset settings and it takes so much time comparing to VP8 codec. Change it to VP8 has solved my problem.
Both of codec types has pros and cons. But nothing is important than speed in my situation.