2024-10-30, 10:03 AM
The original post is not related to the ISP nor any rate-limiting that the ISP might be doing. The original post is stating a claim about the decision to transcode. I will restate here in a form that might be easier to understand:
The client specifies a max-bitrate of 40Mbit/sec.
The video states an average bit-rate of 32MBit/sec.
The decision is made not to transcode because the average bit-rate of the video 32Mbit < 40Mbit
The observable network data transfer varies between 5Mbit/sec and 150Mbit/sec for this 32Mbit/sec video, because of the encoding used (CRF) and more bits being allocated to scenes with a lot of change that are sufficiently brief on a 90 minute film to not push the average bit-rate particularly high.
The decision to transcode should be made based on the *peak* bitrate of the video, not the average bitrate. If the client specifies a max-bitrate of 40Mbit/sec, then the client should expect an observable data transfer that does not exceed 40Mbit/sec.
The probe of the film by ffmpeg_bitrate_stats shows the large skew between min-bitrate (6Mbit, avg ~28Mbit and max 150Mbit):
"avg_bitrate": 29690.019,
"avg_bitrate_over_chunks": 27318.108,
"max_bitrate": 150388.377,
"min_bitrate": 64.551,
And you can see a wide variance in required bandwidth in the first few frame-chunks:
"bitrate_per_chunk": [
68.771,
21202.516,
44067.783,
58371.812,
53273.463,
20805.554,
17189.768,
16395.582,
9278.021,
The client specifies a max-bitrate of 40Mbit/sec.
The video states an average bit-rate of 32MBit/sec.
The decision is made not to transcode because the average bit-rate of the video 32Mbit < 40Mbit
The observable network data transfer varies between 5Mbit/sec and 150Mbit/sec for this 32Mbit/sec video, because of the encoding used (CRF) and more bits being allocated to scenes with a lot of change that are sufficiently brief on a 90 minute film to not push the average bit-rate particularly high.
The decision to transcode should be made based on the *peak* bitrate of the video, not the average bitrate. If the client specifies a max-bitrate of 40Mbit/sec, then the client should expect an observable data transfer that does not exceed 40Mbit/sec.
The probe of the film by ffmpeg_bitrate_stats shows the large skew between min-bitrate (6Mbit, avg ~28Mbit and max 150Mbit):
"avg_bitrate": 29690.019,
"avg_bitrate_over_chunks": 27318.108,
"max_bitrate": 150388.377,
"min_bitrate": 64.551,
And you can see a wide variance in required bandwidth in the first few frame-chunks:
"bitrate_per_chunk": [
68.771,
21202.516,
44067.783,
58371.812,
53273.463,
20805.554,
17189.768,
16395.582,
9278.021,