![]() |
![]() |
![]() |
GStreamer Base Plugins 1.0 Library Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
#include <gst/pbutils/codec-utils.h> guint gst_codec_utils_aac_get_sample_rate_from_index (guint sr_idx
); const gchar * gst_codec_utils_aac_get_profile (const guint8 *audio_config
,guint len
); const gchar * gst_codec_utils_aac_get_level (const guint8 *audio_config
,guint len
); gboolean gst_codec_utils_aac_caps_set_level_and_profile (GstCaps *caps
,const guint8 *audio_config
,guint len
); const gchar * gst_codec_utils_h264_get_profile (const guint8 *sps
,guint len
); const gchar * gst_codec_utils_h264_get_level (const guint8 *sps
,guint len
); gboolean gst_codec_utils_h264_caps_set_level_and_profile (GstCaps *caps
,const guint8 *sps
,guint len
); guint8 gst_codec_utils_h264_get_level_idc (const gchar *level
); const gchar * gst_codec_utils_mpeg4video_get_profile (const guint8 *vis_obj_seq
,guint len
); const gchar * gst_codec_utils_mpeg4video_get_level (const guint8 *vis_obj_seq
,guint len
); gboolean gst_codec_utils_mpeg4video_caps_set_level_and_profile (GstCaps *caps
,const guint8 *vis_obj_seq
,guint len
);
Provides codec-specific ulility functions such as functions to provide the codec profile and level in human-readable string form from header data.
guint gst_codec_utils_aac_get_sample_rate_from_index
(guint sr_idx
);
Translates the sample rate index found in AAC headers to the actual sample rate.
|
Sample rate index as from the AudioSpecificConfig (MPEG-4 container) or ADTS frame header |
Returns : |
The sample rate if sr_idx is valid, 0 otherwise. |
const gchar * gst_codec_utils_aac_get_profile (const guint8 *audio_config
,guint len
);
Returns the profile of the given AAC stream as a string. The profile is
determined using the AudioObjectType field which is in the first 5 bits of
audio_config
.
|
a pointer to the AudioSpecificConfig as specified in the
Elementary Stream Descriptor (esds) in ISO/IEC 14496-1 (see
gst_codec_utils_aac_get_level() for a more details). |
|
Length of audio_config in bytes |
Returns : |
The profile as a const string and NULL if the profile could not be
determined. |
const gchar * gst_codec_utils_aac_get_level (const guint8 *audio_config
,guint len
);
Determines the level of a stream as defined in ISO/IEC 14496-3. For AAC LC streams, the constraints from the AAC audio profile are applied. For AAC Main, LTP, SSR and others, the Main profile is used.
The audio_config
parameter follows the following format, starting from the
most significant bit of the first byte:
Bit 0:4 contains the AudioObjectType
Bit 5:8 contains the sample frequency index (if this is 0xf, then the next 24 bits define the actual sample frequency, and subsequent fields are appropriately shifted).
Bit 9:12 contains the channel configuration
|
a pointer to the AudioSpecificConfig as specified in the Elementary Stream Descriptor (esds) in ISO/IEC 14496-1. |
|
Length of audio_config in bytes |
Returns : |
The level as a const string and NULL if the level could not be
determined. |
gboolean gst_codec_utils_aac_caps_set_level_and_profile (GstCaps *caps
,const guint8 *audio_config
,guint len
);
Sets the level and profile on caps
if it can be determined from
audio_config
. See gst_codec_utils_aac_get_level()
and
gst_codec_utils_aac_get_profile()
for more details on the parameters.
caps
must be audio/mpeg caps with an "mpegversion" field of either 2 or 4.
If mpegversion is 4, the "base-profile" field is also set in caps
.
|
the GstCaps to which level and profile fields are to be added |
|
a pointer to the AudioSpecificConfig as specified in the Elementary Stream Descriptor (esds) in ISO/IEC 14496-1 (see below for a more details). |
|
Length of audio_config in bytes |
Returns : |
TRUE if the level and profile could be set, FALSE otherwise. |
const gchar * gst_codec_utils_h264_get_profile (const guint8 *sps
,guint len
);
Converts the profile indication (profile_idc) in the stream's sequence parameter set into a string. The SPS is expected to have the following format, as defined in the H.264 specification. The SPS is viewed as a bitstream here, with bit 0 being the most significant bit of the first byte.
Bit 0:7 - Profile indication
Bit 8 - constraint_set0_flag
Bit 9 - constraint_set1_flag
Bit 10 - constraint_set2_flag
Bit 11 - constraint_set3_flag
Bit 12 - constraint_set3_flag
Bit 13:15 - Reserved
Bit 16:24 - Level indication
|
Pointer to the sequence parameter set for the stream. |
|
Length of the data available in sps . |
Returns : |
The profile as a const string, or NULL if there is an error. |
const gchar * gst_codec_utils_h264_get_level (const guint8 *sps
,guint len
);
Converts the level indication (level_idc) in the stream's
sequence parameter set into a string. The SPS is expected to have the
same format as for gst_codec_utils_h264_get_profile()
.
|
Pointer to the sequence parameter set for the stream. |
|
Length of the data available in sps . |
Returns : |
The level as a const string, or NULL if there is an error. |
gboolean gst_codec_utils_h264_caps_set_level_and_profile (GstCaps *caps
,const guint8 *sps
,guint len
);
Sets the level and profile in caps
if it can be determined from sps
. See
gst_codec_utils_h264_get_level()
and gst_codec_utils_h264_get_profile()
for more details on the parameters.
|
the GstCaps to which the level and profile are to be added |
|
Pointer to the sequence parameter set for the stream. |
|
Length of the data available in sps . |
Returns : |
TRUE if the level and profile could be set, FALSE otherwise. |
guint8 gst_codec_utils_h264_get_level_idc (const gchar *level
);
Transform a level string from the caps into the level_idc
|
A level string from caps |
Returns : |
the level_idc or 0 if the level is unknown |
const gchar * gst_codec_utils_mpeg4video_get_profile (const guint8 *vis_obj_seq
,guint len
);
Converts the profile indication in the stream's visual object sequence into
a string. vis_obj_seq
is expected to be the data following the visual
object sequence start code. Only the first byte
(profile_and_level_indication) is used.
|
Pointer to the visual object sequence for the stream. |
|
Length of the data available in sps . |
Returns : |
The profile as a const string, or NULL if there is an error. |
const gchar * gst_codec_utils_mpeg4video_get_level (const guint8 *vis_obj_seq
,guint len
);
Converts the level indication in the stream's visual object sequence into
a string. vis_obj_seq
is expected to be the data following the visual
object sequence start code. Only the first byte
(profile_and_level_indication) is used.
|
Pointer to the visual object sequence for the stream. |
|
Length of the data available in sps . |
Returns : |
The level as a const string, or NULL if there is an error. |
gboolean gst_codec_utils_mpeg4video_caps_set_level_and_profile (GstCaps *caps
,const guint8 *vis_obj_seq
,guint len
);
Sets the level and profile in caps
if it can be determined from
vis_obj_seq
. See gst_codec_utils_mpeg4video_get_level()
and
gst_codec_utils_mpeg4video_get_profile()
for more details on the
parameters.
|
the GstCaps to which the level and profile are to be added |
|
Pointer to the visual object sequence for the stream. |
|
Length of the data available in sps . |
Returns : |
TRUE if the level and profile could be set, FALSE otherwise. |