View Full Version : Adaptive Bit Rate encoding in x264
dvdboy
26th July 2011, 17:19
I know Carbon Coder and Expression offer Adaptive Streaming via VC-1, and that Expression Encoder Pro offers H.264, but I was wondering if it was possible to create Adaptive Streaming compliant files with x264. Other than a fixed I-frames, I'm honestly not sure what else may be required.
Thanks
EDIT: From speaking with the client, they're only requirement is "fixed GOP aligned bit rate streams" - is it possible to ensure all streams have the same GOP structure?
Blue_MiSfit
27th July 2011, 09:37
Hello dvdboy,
x264 is perfectly capable of ensuring GOP allignment for the various bitstreams associated with adaptive streaming. In fact, according to Dark_Shikari, if you don't change the resolution of your video among the various adaptive streams (only change the bitrate), the GOP structure will not change at all.
If you're paranoid you can simply run an encode with --pass 1, writing out a stats file, then re-use this stats file for all your different bitrates via --pass 3. I'd suggest starting at your lowest bitrate and working your way up.
The tricky bit, and "special sauce" offered by any "pro" encoder is the encapsulation and DRM required to "plug in" to existing adaptive streaming systems. Carbon Coder (which can do H.264 adaptive streaming with recent versions I think), various Digital Rapids or Inlet (now Cisco) devices have these capabilities out of the box.
If you're only expected to deliver the bitstreams, then x264 is a perfect fit. If you're expected to deliver prepared packages for a specific streaming system, you will either need to develop this out via x264, or go with an off the shelf product.
Long story short, x264 is perfectly capable of generating H.264 bitstreams for the purposes of adaptive streaming. In fact it is used by several very large commercial adaptive streaming companies, for a variety of reasons that anyone familiar with x264 should instantly recognize ;)
Derek
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.