summaryrefslogtreecommitdiff
path: root/src/demuxers/demux_mpgaudio.c
AgeCommit message (Collapse)Author
2008-03-23Replace various malloc(x*sizeof(y)) with calloc(x,sizeof(y)).Darren Salt
2008-02-18Backed out changeset 698d30889b29Thibaut Mattern
id3v2_istag has not the same signature in 1.1 and 1.2.
2008-02-15Fixed endianess problem.Thibaut Mattern
This should allow big ID3v2 tag to be parsed (i mean tags with embedded pictures). (transplanted from ebb0d5507d3208f8e73af78f912230719d37830a) --HG-- extra : transplant_source : %EB%B0%D5P%7D2%08%F8%E7%3A%F7%8F%91%220q%9D7%83%0A
2008-02-14Fixed mp3 sniff code.Thibaut Mattern
Fixed bug 4 sample playback (nilbymouthclapton.112.mp3). (transplanted from 4843103240d4fc85d31bd210194a98c1e1bdbd7a) --HG-- extra : transplant_source : HC%102%40%D4%FC%85%D3%1B%D2%10%19J%98%C1%E1%BD%BDz
2008-02-07Improve detection of MP3 streams with ID3v2 tags. Don't trust the tag size.Thibaut Mattern
2008-01-26Fix a few recently-caused compiler warnings.Darren Salt
2008-01-21Fixed logging.Thibaut Mattern
Replaced a magic number by #define.
2008-01-21Fixed problems introduced by the free bitrate handling when frame sync is lost.Thibaut Mattern
2008-01-20Comment out "#define LOG" again.Darren Salt
2008-01-19Cleanup.Thibaut Mattern
2008-01-19Initial support of free bitrate streams.Thibaut Mattern
2008-01-03Detect corrupted or broken seek tables for CBR MP3 files. [Bug #3]Thibaut Mattern
--HG-- extra : transplant_source : %00%11%94ZZG%2A%A0%2A%3B%DA%CDx%AC%02%A8%E8%C3%DF%A5
2007-11-10Delete most of the CVS $Id$/$Log$ lines.Darren Salt
--HG-- extra : transplant_source : %E0%D0%C5%8B%BEU%DD%24%5D7%1F%ADV%AD%EB%23%CBU%80%EB
2007-11-09Update FSF address on non-contributed code and COPYING files.Diego 'Flameeyes' Pettenò
For contributed code, leave whatever the version we last synced for is using to make simpler future syncs.
2007-06-16Rename the BE/LE/ME macros with a _X_ prefix, so they don't clash with ↵Diego 'Flameeyes' Pettenò
Solaris definitions.
2007-05-29Actually id3v2_tagsize was used by demux_mpgaudio and demux_aac; but as it ↵Diego 'Flameeyes' Pettenò
makes little sense, move BE_*_synchsafe functions from id3.c to id3.h and declare them inline, then BE_32_synchsafe can be replaced to id3v2_tagsize as drop in.
2007-03-29Disable logging that I've left enabled by mistake.Diego 'Flameeyes' Pettenò
CVS patchset: 8757 CVS date: 2007/03/29 16:32:12
2007-03-29Bitrate has to be 32-bit, or it overruns.Diego 'Flameeyes' Pettenò
CVS patchset: 8756 CVS date: 2007/03/29 16:21:48
2007-03-29Code cleanup: don't export all the bits read in the header to the whole ↵Diego 'Flameeyes' Pettenò
plugin, only a subset of the information is needed, so hide the rest in an anonymous structure inside the parsing function. This reduces the header structure size to 24 rather than 40 (of the version already reduced by using bitmasks) and allows it to stay in a single cacheline. Also, don't consider those flags that we don't use; leave the code in place so that if they need to be parsed in the future they can, but under #if 0 so that it's not compiled. Move the tables for mp3's magic constants inside the parsing function, to hide them from the global namespace, and resize them to use uint16_t rather than int. Use memcpy rather than copying the bytes one by one for the xing header. CVS patchset: 8755 CVS date: 2007/03/29 16:01:30
2007-03-26More bitmasks, this might be interesting, as it reduces the size quite a ↵Diego 'Flameeyes' Pettenò
bit, padding or no padding. CVS patchset: 8754 CVS date: 2007/03/26 21:52:12
2007-03-24Make sure that the big tables are both static and const, so that they don't ↵Diego 'Flameeyes' Pettenò
get loaded into shared memory for copy-on-write. CVS patchset: 8745 CVS date: 2007/03/24 03:14:15
2007-03-03Add two extra functions (inline as they are just a return statement) that ↵Diego 'Flameeyes' Pettenò
checks if a preamble is of an ID3v2 tag, and that calculate the size of the tag (to avoid repeating the same code over and over and over; the size of the shared object is reduced. Also make demux_flac use the id3.c functions to parse the eventual ID3 header. CVS patchset: 8637 CVS date: 2007/03/03 01:41:16
2007-03-03Add a function to parse a generic ID3v2 tag, and make both demux_aac and ↵Diego 'Flameeyes' Pettenò
demux_mpgaudio use it without repeating the same code. CVS patchset: 8636 CVS date: 2007/03/03 00:58:52
2007-03-03Use LOG_MODULE in the log messages, so that during copy and paste I don't ↵Diego 'Flameeyes' Pettenò
end up leaving demux_mpgaudio in demux_flac or demux_aac. CVS patchset: 8634 CVS date: 2007/03/03 00:02:30
2007-02-20Fix a lot of format warnings in lprintf calls (mostly %ldd -> %"PRId64").Diego 'Flameeyes' Pettenò
CVS patchset: 8608 CVS date: 2007/02/20 00:34:55
2007-02-03Broken MIME type.Darren Salt
CVS patchset: 8588 CVS date: 2007/02/03 23:56:32
2007-01-19Make get_description get_identifier get_extensions get_mimetypes return a ↵Diego 'Flameeyes' Pettenò
constant string, and make the extensions and mrl vaiables usually declared when testing extension demux strategy constants too. CVS patchset: 8523 CVS date: 2007/01/19 00:26:39
2006-09-03Send to the decoder the proper header, this way FFmpeg can decode mp3 files ↵Diego 'Flameeyes' Pettenò
without mad. The header, as well as the frame end flags, are ignored by the mad decoder. CVS patchset: 8198 CVS date: 2006/09/03 02:03:21
2006-08-12don't report extensions/mimetypes if required decoder is missingMiguel Freitas
(implemented for mp3 demuxer only) CVS patchset: 8177 CVS date: 2006/08/12 01:43:26
2005-10-02Fixed overflow when computing bitrate.Thibaut Mattern
CVS patchset: 7748 CVS date: 2005/10/02 14:15:17
2005-10-01- CleanupThibaut Mattern
- Added vbri header support - Fixed seeking problem with id3v2 tags - Converted position to a time based position CVS patchset: 7747 CVS date: 2005/10/01 08:03:36
2005-09-15Added minimal id3 v2.4 support.Thibaut Mattern
CVS patchset: 7734 CVS date: 2005/09/15 18:45:15
2005-02-07make Valgrind happy with empty files.Thibaut Mattern
CVS patchset: 7388 CVS date: 2005/02/07 18:47:12
2004-12-16use UTF-8 meta info setting, where we know the string is ASCIIMichael Roitzsch
(costly conversion is not necessary, because ASCII is a subset of UTF-8) CVS patchset: 7264 CVS date: 2004/12/16 13:58:57
2004-06-13implement steps 1, 2, 3 and 4 of the seeking proposal:Miguel Freitas
http://article.gmane.org/gmane.comp.video.xine.devel/9532 it is now up to demuxers to decide what the 0..65535 position means. demuxers tested: ogg, voc, flac, rm, asf, vqa, vob, avi, y4m, au, mov, ts, mp3, mpg, wav, ra, mve CVS patchset: 6686 CVS date: 2004/06/13 21:28:52
2004-05-05simple protection...Thibaut Mattern
CVS patchset: 6490 CVS date: 2004/05/05 22:37:46
2004-05-04- Shoutcast packet handling cleanup.Thibaut Mattern
- Support streaming of NSV files. test streams: hTtP://xxx.inlive.co.kr:8000/;stream.nsv http://lsac1-0-s01.shoutcast.net:8012/;file.nsv - Remove an old hack to force mpeg audio demuxer selection. CVS patchset: 6484 CVS date: 2004/05/04 22:26:13
2004-04-22do the same as newest libmad: don't stop on reserved emphasisMiguel Freitas
CVS patchset: 6421 CVS date: 2004/04/22 00:37:52
2004-03-03An id3 parsing error is not a reason to not play the mp3 stream.Thibaut Mattern
Should fix some bugs reported on irc and sf bugreport system. CVS patchset: 6207 CVS date: 2004/03/03 00:39:15
2004-03-01check if there is enough bytes in the buffer before reading.Thibaut Mattern
CVS patchset: 6199 CVS date: 2004/03/01 21:03:19
2003-12-07- Move ID3 parsing code to id3.h/id3.cThibaut Mattern
- Add ID3v2.3 parser ID3v2.4 is not done yet. CVS patchset: 5863 CVS date: 2003/12/07 23:05:41
2003-12-06Discard MPEG video in content detection.Thibaut Mattern
Set audio decoder meta info as suggested by Mike some time ago (report vbr/cbr info). CVS patchset: 5855 CVS date: 2003/12/06 19:06:31
2003-12-05cleanup phase II. use xprintf when it's relevant, use xine_xmalloc when it's ↵Daniel Caujolle-Bert
relevant too. Small other little fix (can't remember). Change few internal function prototype because it xine_t pointer need to be used if some xine's internal sections. NOTE: libdvd{nav,read} is still too noisy, i will take a look to made it quit, without invasive changes. To be continued... CVS patchset: 5844 CVS date: 2003/12/05 15:54:56
2003-11-26oops, wrong bit.Thibaut Mattern
fix Xing header parsing with mpeg 2 streams. CVS patchset: 5800 CVS date: 2003/11/26 22:40:25
2003-11-26lprintf cleanup, pass I.Daniel Caujolle-Bert
CVS patchset: 5796 CVS date: 2003/11/26 19:43:26
2003-11-26!= is evaluated _before_ &, so this is not doing what it's supposed toMichael Roitzsch
(thanks to gcc for issuing a warning) CVS patchset: 5790 CVS date: 2003/11/26 19:26:59
2003-11-23Implement seek timeout in RIP and drop input capability INPUT_CAP_SLOW_SEEK.František Dvořák
Check for seek success in mp3 and avi demuxers. CVS patchset: 5775 CVS date: 2003/11/23 23:20:56
2003-11-16New stream/meta info (safe) stuff.Daniel Caujolle-Bert
BIG NOTE: use helpers to access to these informations (get/set/reset): _x_{stream,meta}_info_{get,set,reset}() are for internal use, don't use *_public() ones from inside the beast ;-) Some wrongly names "xine_" fonction renaming. CVS patchset: 5757 CVS date: 2003/11/16 23:33:42
2003-11-15change demux api:Miguel Freitas
- demuxers should not access stream->demux_thread_running - remove deprecated get_video_frame/got_video_frame_cb CVS patchset: 5732 CVS date: 2003/11/15 14:00:35
2003-11-13define FOURCC only onceMarco Zuehlke
CVS patchset: 5729 CVS date: 2003/11/13 15:23:00