View Full Version : AVC Extended Profiles
infante
8th February 2009, 15:10
Can someone please point me to where an AVC Extended Profile (XP) might be beyond the general one found in wikipedia? I realize that most of the needs, expecially from this forum, has been to backup your purchased DVDs - but that's so "90's" . This is the Hulu Generation... The pre-defined settings in Megui have Main, Baseline and High (unless I'm missing it, which easily could be the case)
Some of us, who have the rights to stream content, would love to tap the brain power of this community. You'll get it back in watching higher quality shows on TV, Internet and mobile...
Thanks!
Guest
8th February 2009, 17:12
Your question is not clear.
infante
8th February 2009, 17:32
sorry for being unclear.
As you know the H264/AVC project has defined three primary groups (with subgroups within those) for profiles: High, Main, Extended, and Baseline.
There are many presets/profiles available in megui (and Handbrake) for Main, Baseline and High but nothing available (that I can find) for Extended (XP), which is for streaming. Perhaps this is really directed to Sharktooth, but I thought I would ask the community if their has been any profiles/presets in terms of x264 settings that have been suggested for Extended (XP).
thank you.
rg
LoRd_MuldeR
8th February 2009, 18:05
Look here:
http://de.wikipedia.org/wiki/H.264#Profile
In order to get "Extended" Profile compliant output, just configure x264 accordingly.
It seems the most important difference to "Main" is that you must not use CABAC in "Extended" profile.
Also the "Extended" and "Baseline" profiles support some features that the higher profiles don't support (e.g. Redundant Slices).
Maybe these are the ones related to streaming. Does x264 support these features at all ???
Trahald
8th February 2009, 18:07
these are the profiles x264 (and thereby any GUIs based on it) supports
sps->i_profile_idc = PROFILE_HIGH444_PREDICTIVE;
else if( param->analyse.b_transform_8x8 || param->i_cqm_preset != X264_CQM_FLAT )
sps->i_profile_idc = PROFILE_HIGH;
else if( param->b_cabac || param->i_bframe > 0 )
sps->i_profile_idc = PROFILE_MAIN;
else
sps->i_profile_idc = PROFILE_BASELINE;
sps->i_level_idc = param->i_level_idc;
the AVC document can be easily had by a google search if you wanted to code a patch.
LoRd_MuldeR
8th February 2009, 18:15
Looking at that code snippet, I have to assume that x264 doesn't support any of the features that are allowed in Baseline/Extended but forbidden in Main/High.
(That's because it tests the profiles from "High 4:4:4" down to "Baseline" to select the highest profile required, never checking if a lower profile may be needed)
J_Darnley
8th February 2009, 18:39
Wow, on de.wikipedia.org you get ticks and crosses.
The English article mentions the various encoders and their features:
http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC#Applications
It seems that most encoders don't support/use the baseline- and extended-only features
infante
8th February 2009, 20:27
Just reading a bit on the history of the Extended Profile - it seems like it was a subset of Baseline initially (and this was back in 2004). It was used for video conferencing and not for delivering Spiderman in HD via your broadband connection without going down to the local rental store.
Things have radically changed since then and I guess my question is what exactly in "streaming" would prevent a High Profile from being used? One key factor I would think would be the bitrate as users have different bandwidth. I would think you would have three subcategories of Extended (or hopefully in High Profile for streaming) - low (for low bandwidth users, say 360 kpbs), medium (say 700 kpbs) and high (maybe 1000).
If anyone wants to post a sample file, with your with the current encoders/ GUI capability, I'll be happy to donate CDN bandwidth and a test server for either http progressive and/or RTMP using Wowza. just PM me and I'll send back the info.
Because looks like given unlimited resources and the best studio sources available hulu is using H.264, VP6 >flv . And it's not that good... http://compressionmatters.com/content/case-study-hulu-high-defintion-h264-and-vp6-flash-video
cheers
rg
LoRd_MuldeR
8th February 2009, 20:42
Things have radically changed since then and I guess my question is what exactly in "streaming" would prevent a High Profile from being used?
High profile doesn't have special features for streaming, such as "Redundant Slices" for error resilience (according to Wikipedia)
Also High profile is more complex than Baseline/Extended and hence requires more CPU power to decode - not very suitable for mobile (streaming) devices...
One key factor I would think would be the bitrate as users have different bandwidth
That in fact is a point to prefer High/Main over Baseline/Extended, because they encode more efficient (use the available bitrate more efficiently)
If anyone wants to post a sample file, with your with the current encoders/ GUI capability, I'll be happy to donate CDN bandwidth and a test server for either http progressive and/or RTMP using Wowza. just PM me and I'll send back the info.
It seems x264 does not support any of the "Baseline/Extended profile only" features!
So we can't create any samples with x264 that use these features. Maybe some commercial encoders can do?
Dark Shikari
8th February 2009, 21:03
Extended has an interesting history, most of it related to the merits of stuffing enormous amounts of junk into the H.264 spec that nobody was ever intended to use. ;)
infante
8th February 2009, 22:09
it's interesting that Adobe in their H.264 matrix http://www.adobe.com/products/hdvideo/supported_technologies/h264.html has eliminated Extended and has catagorized baseline as videoconferencing and mobile. And Redundant Slices are only used in their baseline profile.
So based on the Adobe "view," premium content for encoding that does not fit into the videoconferencing and mobile would have main or high profiles without Redundant Slices (RS).
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.