Encoding progress is presented as a percentage, but a percentage of what, exactly? Why does it jump to 34%, stay there for a while, jump to another percentage and then suddenly hit 100%. The simple answer is that it's not currently showing the percentage of time to completion. Instead, it's showing the percentage of tasks completed in the encoding pipeline. Each task requires a different amount of time to complete, so if the encoding pipeline is on task 2 of 10, it will show 20% completion.
When the encoding pipeline is creating adaptive bitrate quality versions, each version requires a separate task, and because each version requires a different amount of time to complete, the displayed progress will not be smooth. Here's a hypothetical example of a simplified pipeline with a 1080p adaptive bitrate streaming encoding job:
Task ID | Task description | Progress % | Time required | Elapsed time |
1 | copy file to encoder | 10 | 0:20 | 0:20 |
2 | inspect file | 20 | 0:01 | 0:21 |
3 | apply encoding presets | 30 | 0:01 | 0:22 |
4 | encode 480p version | 40 | 1:29 | 1:50 |
5 | encode 720p version | 50 | 2:10 | 4:00 |
6 | encode 360p version | 60 | 0:45 | 4:45 |
7 | encode 240p version | 70 | 0:32 | 5:17 |
8 | encode 1080p version | 80 | 3:58 | 9:15 |
9 | create thumbnails | 90 | 0:23 | 9:38 |
10 | clean up | 100 | 0:05 | 9:43 |
You can see that progress immediately jumps to 30% whereas the jump from 70% to 80% takes 3:58. This can be frustrating for users that are expecting time-based progress reporting. We understand that and agree. Our roadmap includes applying AI analysis to the pipeline progress and changing the reporting to time-based progress rather than task-based.