changeset 8987:c83c18f58964

Support for MPEG-4 (AAC) audio RTSP/RTP Patch by Ross Finlayson <finlayson@live.com>
author bertrand
date Sat, 18 Jan 2003 14:22:30 +0000
parents ab8350c450d9
children 3b328492f94d
files libmpdemux/demux_rtp.cpp
diffstat 1 files changed, 17 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/libmpdemux/demux_rtp.cpp	Sat Jan 18 13:58:34 2003 +0000
+++ b/libmpdemux/demux_rtp.cpp	Sat Jan 18 14:22:30 2003 +0000
@@ -247,6 +247,23 @@
 	    wf->nBlockAlign = 33;
 	    wf->wBitsPerSample = 16;
 	    wf->cbSize = 0;
+	  } else if (strcmp(subsession->codecName(), "MP4A-LATM") == 0) {
+	    wf->wFormatTag = sh_audio->format = mmioFOURCC('m','p','4','a');
+#ifndef HAVE_FAAD
+	    fprintf(stderr, "WARNING: Playing MPEG-4 (AAC) Audio requires the \"faad\" library!\n");
+#endif
+#if (LIVEMEDIA_LIBRARY_VERSION_INT < 1042761600)
+	    fprintf(stderr, "WARNING: This audio stream might not play correctly.  Please upgrade to version \"2003.01.17\" or later of the \"LIVE.COM Streaming Media\" libraries.\n");
+#else
+	    // For the codec to work correctly, it needs "AudioSpecificConfig"
+	    // data, which is parsed from the "StreamMuxConfig" string that
+	    // was present (hopefully) in the SDP description:
+	    unsigned codecdata_len;
+	    sh_audio->codecdata
+	      = parseStreamMuxConfigStr(subsession->fmtp_config(),
+					codecdata_len);
+	    sh_audio->codecdata_len = codecdata_len;
+#endif
 	  } else {
 	    fprintf(stderr,
 		    "Unknown mplayer format code for MIME type \"audio/%s\"\n",