[FFmpeg-cvslog] avformat/rtpdec: Add support for 24 bit RTSP audio playback

Timur Aydin git at videolan.org
Sat Nov 5 19:10:29 EET 2016


ffmpeg | branch: master | Timur Aydin <ta at taydin.org> | Sat Nov  5 01:15:44 2016 +0300| [7746103227195b4d106ce6090d17dc6fd36de683] | committer: Michael Niedermayer

avformat/rtpdec: Add support for 24 bit RTSP audio playback

When ffplay is used to play from the RTSP URL that serves 24 bit audio
content, ffplay fails to recognize the audio codec format. The attached
patch adds support for playing 24 bit audio content over RTSP by
defining a dynamic payload handler for "L24".

Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

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

 libavformat/rtpdec.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/libavformat/rtpdec.c b/libavformat/rtpdec.c
index 51feeea..53cdad7 100644
--- a/libavformat/rtpdec.c
+++ b/libavformat/rtpdec.c
@@ -33,6 +33,12 @@
 
 #define MIN_FEEDBACK_INTERVAL 200000 /* 200 ms in us */
 
+static RTPDynamicProtocolHandler l24_dynamic_handler = {
+    .enc_name   = "L24",
+    .codec_type = AVMEDIA_TYPE_AUDIO,
+    .codec_id   = AV_CODEC_ID_PCM_S24BE,
+};
+
 static RTPDynamicProtocolHandler gsm_dynamic_handler = {
     .enc_name   = "GSM",
     .codec_type = AVMEDIA_TYPE_AUDIO,
@@ -115,6 +121,7 @@ void ff_register_rtp_dynamic_payload_handlers(void)
     ff_register_dynamic_payload_handler(&ff_vp8_dynamic_handler);
     ff_register_dynamic_payload_handler(&ff_vp9_dynamic_handler);
     ff_register_dynamic_payload_handler(&gsm_dynamic_handler);
+    ff_register_dynamic_payload_handler(&l24_dynamic_handler);
     ff_register_dynamic_payload_handler(&opus_dynamic_handler);
     ff_register_dynamic_payload_handler(&realmedia_mp3_dynamic_handler);
     ff_register_dynamic_payload_handler(&speex_dynamic_handler);



More information about the ffmpeg-cvslog mailing list