Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gst-plugins-base
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Seungha Yang
gst-plugins-base
Commits
569f3a29
Commit
569f3a29
authored
Dec 24, 2012
by
Pete Beardmore
Committed by
Wim Taymans
Jan 14, 2013
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
riff: add waveformatextension generic support
Fixes
https://bugzilla.gnome.org/show_bug.cgi?id=690591
parent
776bae5b
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
6 deletions
+19
-6
gst-libs/gst/riff/riff-media.c
gst-libs/gst/riff/riff-media.c
+19
-6
No files found.
gst-libs/gst/riff/riff-media.c
View file @
569f3a29
...
...
@@ -1564,7 +1564,7 @@ gst_riff_create_audio_caps (guint16 codec_id,
strf
->
bits_per_sample
);
}
}
}
else
if
(
subformat_guid
[
0
]
==
00000006
)
{
}
else
if
(
subformat_guid
[
0
]
==
0
x
0000006
)
{
GST_DEBUG
(
"ALAW"
);
if
(
strf
!=
NULL
)
{
if
(
strf
->
bits_per_sample
!=
8
)
{
...
...
@@ -1611,14 +1611,27 @@ gst_riff_create_audio_caps (guint16 codec_id,
*
codec_name
=
g_strdup
(
"Mu-law audio"
);
}
else
if
(
subformat_guid
[
0
]
==
0x00000092
)
{
GST_DEBUG
(
"FIXME: handle DOLBY AC3 SPDIF format"
);
}
else
if
(
subformat_guid
[
0
]
==
0x00002000
)
{
GST_DEBUG
(
"WAVE_FORMAT_EXTENSIBLE AC-3 audio"
);
channels_max
=
6
;
GST_DEBUG
(
"WAVE_FORMAT_EXTENSIBLE AC-3 SPDIF audio"
);
caps
=
gst_caps_new_empty_simple
(
"audio/x-ac3"
);
if
(
codec_name
)
*
codec_name
=
g_strdup
(
"AC-3 audio"
);
*
codec_name
=
g_strdup
(
"wavext AC-3 SPDIF audio"
);
}
else
if
(
subformat_guid
[
0
]
==
GST_RIFF_WAVE_FORMAT_EXTENSIBLE
)
{
GST_DEBUG
(
"WAVE_FORMAT_EXTENSIBLE nested"
);
}
else
{
/* recurse where no special consideration has yet to be identified
* for the subformat guid */
caps
=
gst_riff_create_audio_caps
(
subformat_guid
[
0
],
strh
,
strf
,
strf_data
,
strd_data
,
codec_name
,
channel_reorder_map
);
if
(
!
codec_name
)
GST_DEBUG
(
"WAVE_FORMAT_EXTENSIBLE audio"
);
if
(
caps
)
{
if
(
codec_name
)
{
GST_DEBUG
(
"WAVE_FORMAT_EXTENSIBLE %s"
,
*
codec_name
);
*
codec_name
=
g_strjoin
(
"wavext "
,
*
codec_name
,
NULL
);
}
return
caps
;
}
}
}
else
if
(
subformat_guid
[
0
]
==
0x6ba47966
&&
subformat_guid
[
1
]
==
0x41783f83
&&
subformat_guid
[
2
]
==
0xf0006596
&&
subformat_guid
[
3
]
==
0xe59262bf
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment