[MPlayer-dev-eng] [PATCH] Support for MPEG-4 (AAC) audio RTSP/RTP
Ross Finlayson
finlayson at live.com
Sat Jan 18 09:21:01 CET 2003
>Looks like the function "parseStreamMuxConfigStr" is a new function
>from you library!
>If so, could you please add a #ifdef LIVE_VERSION stuff around your
>code to keep some backward compatibility with older LIVE lib version.
Good idea. Here's the amended patch.
Ross.
-------------- next part --------------
Index: libmpdemux/demux_rtp.cpp
===================================================================
RCS file: /cvsroot/mplayer/main/libmpdemux/demux_rtp.cpp,v
retrieving revision 1.8
diff -u -r1.8 demux_rtp.cpp
--- libmpdemux/demux_rtp.cpp 6 Dec 2002 09:41:13 -0000 1.8
+++ libmpdemux/demux_rtp.cpp 18 Jan 2003 08:02:42 -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",
More information about the MPlayer-dev-eng
mailing list