[FFmpeg-cvslog] sdp: output speex optional vbr parameter

Dmitry Samonenko git at videolan.org
Sat Oct 13 18:50:46 CEST 2012


ffmpeg | branch: master | Dmitry Samonenko <shreddingwork at gmail.com> | Sat Oct 13 19:03:33 2012 +0400| [083c7bf70131a70bc9a23b4daccd9e688a6c0854] | committer: Michael Niedermayer

sdp: output speex optional vbr parameter

Optional sdp speex payload parameter is outputed only when
data is encoded. It's not printed in case of stream copy.

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=083c7bf70131a70bc9a23b4daccd9e688a6c0854
---

 libavformat/sdp.c |   14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/libavformat/sdp.c b/libavformat/sdp.c
index ca8c3df..c4edd78 100644
--- a/libavformat/sdp.c
+++ b/libavformat/sdp.c
@@ -575,6 +575,20 @@ static char *sdp_write_media_attributes(char *buff, int size, AVCodecContext *c,
         case AV_CODEC_ID_SPEEX:
             av_strlcatf(buff, size, "a=rtpmap:%d speex/%d\r\n",
                                      payload_type, c->sample_rate);
+            if (c->codec) {
+                const char *mode;
+                uint64_t vad_option;
+
+                if (c->flags & CODEC_FLAG_QSCALE)
+                      mode = "on";
+                else if (!av_opt_get_int(c, "vad", AV_OPT_FLAG_ENCODING_PARAM, &vad_option) && vad_option)
+                      mode = "vad";
+                else
+                      mode = "off";
+
+                av_strlcatf(buff, size, "a=fmtp:%d vbr=%s\r\n",
+                                        payload_type, mode);
+            }
             break;
         case AV_CODEC_ID_OPUS:
             av_strlcatf(buff, size, "a=rtpmap:%d opus/48000\r\n",



More information about the ffmpeg-cvslog mailing list