mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2024-11-25 13:01:07 +00:00
cmafmux: Add opus support
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1692>
This commit is contained in:
parent
c43fc2d576
commit
ad0a23fee7
3 changed files with 9 additions and 1 deletions
|
@ -2100,7 +2100,7 @@
|
||||||
"long-name": "CMAFMux",
|
"long-name": "CMAFMux",
|
||||||
"pad-templates": {
|
"pad-templates": {
|
||||||
"sink": {
|
"sink": {
|
||||||
"caps": "video/x-h264:\n stream-format: { (string)avc, (string)avc3 }\n alignment: au\n width: [ 1, 65535 ]\n height: [ 1, 65535 ]\nvideo/x-av1:\n stream-format: obu-stream\n alignment: tu\n profile: { (string)main, (string)high, (string)professional }\n chroma-format: { (string)4:0:0, (string)4:2:0, (string)4:2:2, (string)4:4:4 }\n bit-depth-luma: { (uint)8, (uint)10, (uint)12 }\nbit-depth-chroma: { (uint)8, (uint)10, (uint)12 }\n width: [ 1, 65535 ]\n height: [ 1, 65535 ]\nvideo/x-h265:\n stream-format: { (string)hvc1, (string)hev1 }\n alignment: au\n width: [ 1, 65535 ]\n height: [ 1, 65535 ]\naudio/mpeg:\n mpegversion: 4\n stream-format: raw\n channels: [ 1, 65535 ]\n rate: [ 1, 2147483647 ]\n",
|
"caps": "video/x-h264:\n stream-format: { (string)avc, (string)avc3 }\n alignment: au\n width: [ 1, 65535 ]\n height: [ 1, 65535 ]\nvideo/x-av1:\n stream-format: obu-stream\n alignment: tu\n profile: { (string)main, (string)high, (string)professional }\n chroma-format: { (string)4:0:0, (string)4:2:0, (string)4:2:2, (string)4:4:4 }\n bit-depth-luma: { (uint)8, (uint)10, (uint)12 }\nbit-depth-chroma: { (uint)8, (uint)10, (uint)12 }\n width: [ 1, 65535 ]\n height: [ 1, 65535 ]\nvideo/x-h265:\n stream-format: { (string)hvc1, (string)hev1 }\n alignment: au\n width: [ 1, 65535 ]\n height: [ 1, 65535 ]\naudio/mpeg:\n mpegversion: 4\n stream-format: raw\n channels: [ 1, 65535 ]\n rate: [ 1, 2147483647 ]\naudio/x-opus:\nchannel-mapping-family: [ 0, 255 ]\n channels: [ 1, 8 ]\n rate: [ 1, 2147483647 ]\n",
|
||||||
"direction": "sink",
|
"direction": "sink",
|
||||||
"presence": "always",
|
"presence": "always",
|
||||||
"type": "GstFMP4MuxPad"
|
"type": "GstFMP4MuxPad"
|
||||||
|
|
|
@ -161,6 +161,9 @@ fn cmaf_brands_from_caps(caps: &gst::CapsRef, compatible_brands: &mut Vec<&'stat
|
||||||
"audio/mpeg" => {
|
"audio/mpeg" => {
|
||||||
compatible_brands.push(b"caac");
|
compatible_brands.push(b"caac");
|
||||||
}
|
}
|
||||||
|
"audio/x-opus" => {
|
||||||
|
compatible_brands.push(b"opus");
|
||||||
|
}
|
||||||
"video/x-av1" => {
|
"video/x-av1" => {
|
||||||
compatible_brands.push(b"av01");
|
compatible_brands.push(b"av01");
|
||||||
compatible_brands.push(b"cmf2");
|
compatible_brands.push(b"cmf2");
|
||||||
|
|
|
@ -3707,6 +3707,11 @@ impl ElementImpl for CMAFMux {
|
||||||
.field("channels", gst::IntRange::new(1, u16::MAX as i32))
|
.field("channels", gst::IntRange::new(1, u16::MAX as i32))
|
||||||
.field("rate", gst::IntRange::new(1, i32::MAX))
|
.field("rate", gst::IntRange::new(1, i32::MAX))
|
||||||
.build(),
|
.build(),
|
||||||
|
gst::Structure::builder("audio/x-opus")
|
||||||
|
.field("channel-mapping-family", gst::IntRange::new(0i32, 255))
|
||||||
|
.field("channels", gst::IntRange::new(1i32, 8))
|
||||||
|
.field("rate", gst::IntRange::new(1, i32::MAX))
|
||||||
|
.build(),
|
||||||
]
|
]
|
||||||
.into_iter()
|
.into_iter()
|
||||||
.collect::<gst::Caps>(),
|
.collect::<gst::Caps>(),
|
||||||
|
|
Loading…
Reference in a new issue