| 
									
										
										
										
											2010-05-11 19:52:42 +00:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * Float MPEG Audio decoder | 
					
						
							|  |  |  |  * Copyright (c) 2010 Michael Niedermayer | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * This file is part of FFmpeg. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * FFmpeg is free software; you can redistribute it and/or | 
					
						
							|  |  |  |  * modify it under the terms of the GNU Lesser General Public | 
					
						
							|  |  |  |  * License as published by the Free Software Foundation; either | 
					
						
							|  |  |  |  * version 2.1 of the License, or (at your option) any later version. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * FFmpeg is distributed in the hope that it will be useful, | 
					
						
							|  |  |  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
					
						
							|  |  |  |  * Lesser General Public License for more details. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * You should have received a copy of the GNU Lesser General Public | 
					
						
							|  |  |  |  * License along with FFmpeg; if not, write to the Free Software | 
					
						
							|  |  |  |  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define CONFIG_FLOAT 1
 | 
					
						
							|  |  |  | #include "mpegaudiodec.c"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #if CONFIG_MP1FLOAT_DECODER
 | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  | AVCodec ff_mp1float_decoder = { | 
					
						
							|  |  |  |     .name           = "mp1float", | 
					
						
							|  |  |  |     .type           = AVMEDIA_TYPE_AUDIO, | 
					
						
							|  |  |  |     .id             = CODEC_ID_MP1, | 
					
						
							|  |  |  |     .priv_data_size = sizeof(MPADecodeContext), | 
					
						
							|  |  |  |     .init           = decode_init, | 
					
						
							|  |  |  |     .decode         = decode_frame, | 
					
						
							| 
									
										
										
										
											2011-09-06 12:17:45 -04:00
										 |  |  |     .capabilities   = CODEC_CAP_DR1, | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  |     .flush          = flush, | 
					
						
							|  |  |  |     .long_name      = NULL_IF_CONFIG_SMALL("MP1 (MPEG audio layer 1)"), | 
					
						
							| 
									
										
										
										
											2010-05-11 19:52:42 +00:00
										 |  |  | }; | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | #if CONFIG_MP2FLOAT_DECODER
 | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  | AVCodec ff_mp2float_decoder = { | 
					
						
							|  |  |  |     .name           = "mp2float", | 
					
						
							|  |  |  |     .type           = AVMEDIA_TYPE_AUDIO, | 
					
						
							|  |  |  |     .id             = CODEC_ID_MP2, | 
					
						
							|  |  |  |     .priv_data_size = sizeof(MPADecodeContext), | 
					
						
							|  |  |  |     .init           = decode_init, | 
					
						
							|  |  |  |     .decode         = decode_frame, | 
					
						
							| 
									
										
										
										
											2011-09-06 12:17:45 -04:00
										 |  |  |     .capabilities   = CODEC_CAP_DR1, | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  |     .flush          = flush, | 
					
						
							|  |  |  |     .long_name      = NULL_IF_CONFIG_SMALL("MP2 (MPEG audio layer 2)"), | 
					
						
							| 
									
										
										
										
											2010-05-11 19:52:42 +00:00
										 |  |  | }; | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | #if CONFIG_MP3FLOAT_DECODER
 | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  | AVCodec ff_mp3float_decoder = { | 
					
						
							|  |  |  |     .name           = "mp3float", | 
					
						
							|  |  |  |     .type           = AVMEDIA_TYPE_AUDIO, | 
					
						
							|  |  |  |     .id             = CODEC_ID_MP3, | 
					
						
							|  |  |  |     .priv_data_size = sizeof(MPADecodeContext), | 
					
						
							|  |  |  |     .init           = decode_init, | 
					
						
							|  |  |  |     .decode         = decode_frame, | 
					
						
							| 
									
										
										
										
											2011-09-06 12:17:45 -04:00
										 |  |  |     .capabilities   = CODEC_CAP_DR1, | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  |     .flush          = flush, | 
					
						
							|  |  |  |     .long_name      = NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"), | 
					
						
							| 
									
										
										
										
											2010-05-11 19:52:42 +00:00
										 |  |  | }; | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | #if CONFIG_MP3ADUFLOAT_DECODER
 | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  | AVCodec ff_mp3adufloat_decoder = { | 
					
						
							|  |  |  |     .name           = "mp3adufloat", | 
					
						
							|  |  |  |     .type           = AVMEDIA_TYPE_AUDIO, | 
					
						
							|  |  |  |     .id             = CODEC_ID_MP3ADU, | 
					
						
							|  |  |  |     .priv_data_size = sizeof(MPADecodeContext), | 
					
						
							|  |  |  |     .init           = decode_init, | 
					
						
							|  |  |  |     .decode         = decode_frame_adu, | 
					
						
							| 
									
										
										
										
											2011-09-06 12:17:45 -04:00
										 |  |  |     .capabilities   = CODEC_CAP_DR1, | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  |     .flush          = flush, | 
					
						
							|  |  |  |     .long_name      = NULL_IF_CONFIG_SMALL("ADU (Application Data Unit) MP3 (MPEG audio layer 3)"), | 
					
						
							| 
									
										
										
										
											2010-05-11 19:52:42 +00:00
										 |  |  | }; | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | #if CONFIG_MP3ON4FLOAT_DECODER
 | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  | AVCodec ff_mp3on4float_decoder = { | 
					
						
							|  |  |  |     .name           = "mp3on4float", | 
					
						
							|  |  |  |     .type           = AVMEDIA_TYPE_AUDIO, | 
					
						
							|  |  |  |     .id             = CODEC_ID_MP3ON4, | 
					
						
							|  |  |  |     .priv_data_size = sizeof(MP3On4DecodeContext), | 
					
						
							|  |  |  |     .init           = decode_init_mp3on4, | 
					
						
							|  |  |  |     .close          = decode_close_mp3on4, | 
					
						
							|  |  |  |     .decode         = decode_frame_mp3on4, | 
					
						
							| 
									
										
										
										
											2011-09-06 12:17:45 -04:00
										 |  |  |     .capabilities   = CODEC_CAP_DR1, | 
					
						
							| 
									
										
										
										
											2011-09-25 13:39:04 -04:00
										 |  |  |     .flush          = flush_mp3on4, | 
					
						
							| 
									
										
										
										
											2011-09-23 21:11:15 +02:00
										 |  |  |     .long_name      = NULL_IF_CONFIG_SMALL("MP3onMP4"), | 
					
						
							| 
									
										
										
										
											2010-05-11 19:52:42 +00:00
										 |  |  | }; | 
					
						
							|  |  |  | #endif
 |