aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder/vorbis_decoder_plugin.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-09-25decoder/vorbis: skip 16 bit quantisation, provide float samplesSimon Hosie1-0/+44
Internally the vorbis (non-Tremor) decoder is working in floating point, and it's not really necessary to cut the output back to 16-bit if the soundcard or OS supports higher resolution. The decoder can be trivially modified to bypass its internal quantisation and produce floating-point output, and a separate quantisation can be used as appropriate to the platform.
2012-09-25decoder/vorbis: rename local variablesMax Kellermann1-14/+13
2012-09-25decoder/vorbis: improved support for initial seekMax Kellermann1-1/+1
Call decoder_get_command() before doing anything else.
2012-09-25decoder/vorbis: make variables more localMax Kellermann1-26/+20
2012-09-04decoder/ogg_common: rename to ogg_codec.cMax Kellermann1-3/+3
2012-09-04decoder/ogg_common: pass decoder to _type_detect()Max Kellermann1-1/+1
Allow the function to be cancelled.
2012-09-04decoder/_ogg_common: rename to ogg_common.cMax Kellermann1-1/+1
2012-02-11decoder_plugin: scan tags with callback tableMax Kellermann1-10/+11
Pass a callback table to scan_file() and scan_stream(), instead of returning a tag object.
2012-02-11decoder/vorbis: move code to vorbis_comment.cMax Kellermann1-103/+1
2011-09-16input_stream: non-blocking I/OMax Kellermann1-2/+2
Add GMutex, GCond attributes which will be used by callers to conditionally wait on the stream. Remove the (now-useless) plugin method buffer(), wait on GCond instead. Lock the input_stream before each method call. Do the same with the playlist plugins.
2011-01-29copyright year 2011Max Kellermann1-1/+1
2010-05-31fix crash when decoder is NULLRomain Bignon1-2/+2
2010-05-31decoder/vorbis: rename local variable "ret"Max Kellermann1-6/+5
2010-05-31decoder/vorbis: implement method stream_tag()Max Kellermann1-11/+4
This allows tags in archive files.
2010-05-31decoder/vorbis: move code to vorbis_open_stream()Max Kellermann1-19/+23
2010-05-30decoder/vorbis: use single global ov_callbacks constantMax Kellermann1-6/+9
Initialize the ov_callbacks struct at compile time.
2010-05-30decoder/vorbis: rename struct vorbis_decoder_data to vorbis_isMax Kellermann1-20/+19
2010-02-17replay_gain_info: allocate the struct staticallyMax Kellermann1-16/+8
Don't allocate each replay_gain_info object on the heap. Those objects who held a pointer now store a full replay_gain_info object. This reduces the number of allocations and heap fragmentation.
2010-01-18decoder_api: removed function decoder_get_uri()Max Kellermann1-13/+4
Use input_stream.uri.
2010-01-04renamed decoder plugin sourcesMax Kellermann1-0/+0
Make it X_decoder_plugin.c.
2010-01-04decoder_api: added function decoder_replay_gain()Max Kellermann1-8/+3
This function replaces the replay_gain_info parameter for decoder_data(). This allows the decoder to announce replay gain changes, instead of having to pass the same object over and over.
2009-12-31Update copyright notices.Avuton Olrich1-1/+1
2009-12-29decoder/{ffmpeg,flac,vorbis}: added more flac/vorbis MIME typesMax Kellermann1-1/+6
Support deprecated MIME types such as "audio/x-ogg". Support new types such as "audio/flac".
2009-12-26decoder_api: added function decoder_timestamp()Max Kellermann1-1/+0
Remove the data_time parameter from decoder_data(). This patch eliminates the timestamp counting in most decoder plugins, because the MPD core will do it automatically by default.
2009-12-15input_stream: return errors with GErrorMax Kellermann1-2/+2
2009-12-02audio_format: changed "bits" to "enum sample_format"Max Kellermann1-1/+2
This patch prepares support for floating point samples (and probably other formats). It changes the meaning of the "bits" attribute from a bit count to a symbolic value.
2009-11-14decoder: use audio_format_init_checked()Max Kellermann1-7/+6
Let the audio_check library verify the audio format in all (relevant, i.e. non-hardcoded) plugins.
2009-11-12include config.h in all sourcesMax Kellermann1-4/+1
After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue.
2009-11-12decoder/vorbis: fixed gcc "signed" warningMax Kellermann1-2/+2
2009-11-11decoder/vorbis: initialize before entering the loopMax Kellermann1-21/+37
Call decoder_initialize() before entering the loop. We don't need to call ov_read() before ov_info(). When the stream number changes, check if the audio format is still the same.
2009-11-11decoder/vorbis: moved error strings to vorbis_strerror()Max Kellermann1-24/+26
2009-11-11decoder/vorbis: removed the OggCallbackData typedefMax Kellermann1-6/+7
Use the struct name instead.
2009-11-11decoder/vorbis: fix typo in commentMax Kellermann1-1/+1
2009-11-11decoder/vorbis: removed redundant "bits" initializationMax Kellermann1-1/+0
This is done by audio_format_init().
2009-11-11decoder/{flac,vorbis}: include config.h for LFSMax Kellermann1-0/+1
Allow those plugins to open large files on 32 bit platforms.
2009-10-18decoder/vorbis: avoid unused symbol warnings from vorbisfile.hSerge Ziryukin1-0/+1
svn r13289 of libvorbis introduced static callbacks (like OV_CALLBACKS_DEFAULT) defined in "vorbisfile.h" header. First released version with this change is libvorbis-1.2.2. In libversion-1.2.3 OV_EXCLUDE_STATIC_CALLBACKS define was added to avoid warnings about unused static callbacks. Information on the OV_EXCLUDE_STATIC_CALLBACKS can be found in http://svn.xiph.org/trunk/vorbis/CHANGES.
2009-10-13tag: removed the "_ITEM_" suffix from the enum namesMax Kellermann1-3/+3
2009-09-10decoder/vorbis: revert "faster tag scanning with ov_test_callback()"Max Kellermann1-1/+1
This patch made ov_time_total() unusable, and MPD did not know the duration of songs.
2009-08-25decoder/vorbis: open file in "binary" modeGunnar Roth1-1/+1
fopen change for win32 in tag dup of vorbis win32 adaption for head changes
2009-08-24decoder/vorbis: faster tag scanning with ov_test_callback()Rasmus Steinke1-1/+1
using ov_test_callback with function CALLBACKS_STREAMONLY will cause scanning to stop after the comment field. ov_open (and ov_test) default to CALLBACKS_DEFAULT which scans the file structure causing a huge slowdown. The speed improvement is huge: It scanned my files around 10x faster This procedure has been recommended by monthy (main vorbis developer) and was said to be safe for scanning files.
2009-07-19Add audio_format_init() functionDavid Woodhouse1-2/+1
It makes no difference right now, but we're about to add an endianness flag and will want to make sure it's correctly initialised every time.
2009-04-02vorbis: move #define out of function to top of sourcesAvuton Olrich1-1/+1
2009-03-13all: Update copyright header.Avuton Olrich1-6/+7
This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
2009-02-27tag: no CamelCaseMax Kellermann1-1/+1
Renamed numOfItems to num_items.
2009-02-25ls: moved generic URI utilities to uri.cMax Kellermann1-1/+1
"ls" is a bad name for a library which parses URIs. We'll move the rest of the "ls" library later.
2009-02-17decoders: added and fixed GLib log domainsMax Kellermann1-0/+3
Fixed the log domains of the renamed decoders. Added G_LOG_DOMAIN macros in decoders which don't have one already.
2009-02-16renamed decoder plugin "oggvorbis" to "vorbis"Max Kellermann1-1/+1
This plugin uses libvorbis.
2009-01-17oggvorbis: disable seeking on remote songsMax Kellermann1-5/+27
When libvorbis knows that a song is seekable, it seeks around like crazy in the file before starting to decode it. This is very expensive on remote HTTP resources, and delays MPD for 10 or 20 seconds. This patch disables seeking on remote songs, because the advantages of quickly playing a song seem to weigh more than the theoretical ability of seeking for most MPD users. If users feel this feature is needed, we will make a configuration option for that.
2009-01-15oggvorbis: map "Album Artist" to "AlbumArtist"Rasmus Steinke1-1/+3
This patch allows mpd to recognise the albumartist tag in the way foobar2000 and others write it to files.
2009-01-14oggvorbis: use g_ascii_strncasecmp() instead of strncasecmp()Max Kellermann1-3/+3
Don't depend on the daemon's locale settings. Comment names are ASCII.