summaryrefslogtreecommitdiff
path: root/lib/rbcodec/metadata (follow)
Commit message (Collapse)AuthorAge
* Fix dangerous castsAmaury Pouly2017-02-04
| | | | | | | | | On Windows 64-bit, the size of long is 32-bit, thus any pointer to long cast is not valid. In any case, one should use intptr_t and ptrdiff_t when casting to integers. This commit attempts to fix all instances reported by GCC. When relevant, I replaced code by the macros PTR_ADD, ALIGN_UP from system.h Change-Id: I2273b0e8465d3c4689824717ed5afa5ed238a2dc
* Fix warning in WMA Pro and remove a c++ comment.Michael Giacomelli2014-11-28
| | | | Change-Id: Id9b50c1fdeca4d87f158da717de8958330f027ef
* Fix FS#13009.Michael Giacomelli2014-11-28
| | | | | | | | | | | | | | This file revealed several problems with our ASF parser: 1) The packet count in the ASF was actually a 64 bit value, leading to overflow in very long files. 2) Seeking blindly trusted the bitrate listed in the ASF header rather than computing it from the packet size and number of packets. Fix these problems and fix a few minor issues. Change-Id: Ie0f68734e6423e837757528ddb155f3bdcc979f3
* fix yellowMarcin Bukat2014-09-22
| | | | Change-Id: Ie3aa9b208e3f4f17d4d02f11f69839e9b381217d
* metadata: Add cuesheet embedded in ape tags.nialv72014-09-22
| | | | | | | | Change-Id: I5d9e731c3ea786fb910afbb0a5201fc68dcab9f9 Reviewed-on: http://gerrit.rockbox.org/965 Reviewed-by: Nick Peskett <rockbox@peskett.co.uk> Tested: Nick Peskett <rockbox@peskett.co.uk> Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
* Proposed fix for FS#12878: Zero-length embedded album art prevents mp3 playbackJack Whitham2013-12-23
| | | | | | | | | see http://www.rockbox.org/tracker/task/12878 Change-Id: Ib4233c06e18d1d193dfb9e73e745ca5d174e40b2 Reviewed-on: http://gerrit.rockbox.org/507 Reviewed-by: Michael Giacomelli <giac2000@hotmail.com> Reviewed-by: Thomas Martitz <kugel@rockbox.org>
* Add support for flac embeded album art.Albert Song2013-12-13
| | | | | | Change-Id: I077768f7d80b57976f9a7278b640ef67cf4f2af2 Reviewed-on: http://gerrit.rockbox.org/694 Reviewed-by: Thomas Martitz <kugel@rockbox.org>
* Fix id3v2 album art if more than one image is present.Dominik Riebeling2013-06-15
| | | | | | | | | | | | | Rockbox only uses the first album art image (APIC / PIC frame) found in id3v2 tags. When a file contains more than one image the second one is ignored but the parsealbumart() callback overwrites the already set data. This causes the metadata structure to contain an invalid pointer to the image data, resulting in no image shown. Make parsealbumart() aware of this and skip parsing when an albumart image has already been found. Fixes FS#12870. Change-Id: Id8164f319cd5e1ee868b581f8f4ad3ea69c17f77
* SPC Codec: Have metadata parser fill in frequency and bitrate.Michael Sevakis2013-05-21
| | | | Change-Id: I6c72f4d1c79b1a99a11fb28e7d46886c08a56a75
* Properly seek to next id3v2 frame for unsynced tags.Dominik Riebeling2013-04-26
| | | | | | | | | | | When seeking to the next id3v2 frame we need to consider if the tag has the unsync flag set. Not doing so will likely make parsing end up in the middle of the current frame if the frame size exceeds the upper limit set during read. The latter usually happens for album art frames. Fixes FS#12849. Change-Id: Ic92853eef4374508d84df347bcc66b6661d5037d
* VGM Codec: Improve time and fade behavior. Tweak minor misc.Michael Sevakis2013-03-06
| | | | | | | | | | | | | | | | | Prevents cutoff of tracks, especially short ones: * Extend looped tracks by fade length to fade at start of loop repeat. * No fade occurs for non-repeating track only having an intro. * Uses id3.tail_trim field to store fade duration. Use libGME built-in elapsed time reporting instead of custom calculation: * libGME already reports in milliseconds. * Don't advance time counter when Repeat == One. It just runs the progress over the length limit. Fix a comment about sample rate and set the reported bitrate to be accurate for 44.1 kHz stereo. Change-Id: I3ede22bda0f9a941a3fef751f4d678eb0027344c
* Support technically invalid image/jpg mimetype in tags.Frank Gevaerts2012-09-29
| | | | | | | | | | Although the mimetype for jpeg is clearly image/jpeg, many tagging applications seem to use image/jpg, so we'll support that too. Change-Id: Icb9063fd5a9d8aea169eaa7f74ac52b72603d148 Reviewed-on: http://gerrit.rockbox.org/318 Reviewed-by: Michael Giacomelli <mgiacomelli@gmail.com> Reviewed-by: Thomas Martitz <kugel@rockbox.org>
* Initial opus codec supportFrederik M J Vestre2012-09-20
| | | | | | | | | | | | | | | | | Synchronised with opus repo on github (https://github.com/freqmod/rockbox-opus) Status: * Seeking ported from speex, but fails on some cases (e.g. seek to granule 0) * ReplayGain parsing needs to be reworked, we do vorbis-style replaygain now. http://wiki.xiph.org/OggOpus#Comment_Header explicitly forbids these in favour of R128_TRACK_GAIN tag. * No optimisation yet, source files still nearly identical to opus upstream * Multi-stream opus files may not be parsed correctly Change-Id: Ia66f1027dc1d288083e3c57b2816700078376f9a Reviewed-on: http://gerrit.rockbox.org/300 Reviewed-by: Bertrik Sikken <bertrik@sikken.nl> Tested-by: Bertrik Sikken <bertrik@sikken.nl>
* Add rbcodecplatform.h and rbcodecconfig.h.Sean Bartell2012-05-03
| | | | | | | | | | | | | | | | | librbcodec users must provide these two files when the library is built. rbcodecconfig.h provides configuration #defines and basic types, and will be included by public librbcodec headers, so it must not conflict with the user's code. rbcodecplatform.h provides various OS functions, and will only be included by source files and private headers. This system is intended to provide maximum flexibility for use on embedded systems, where no operating system headers are included. Unix systems can just copy rbcodecconfig-example.h and rbcodecplatform-unix.h with minimal changes. Change-Id: I350a2274d173da391fd1ca00c4202e9760d91def Reviewed-on: http://gerrit.rockbox.org/143 Reviewed-by: Nils Wallménius <nils@rockbox.org> Tested-by: Nils Wallménius <nils@rockbox.org>
* rbcodec refactoring: autoresumableSean Bartell2012-05-01
| | | | | | | | Moved to playback.c, since it doesn't use metadata from the music file. Change-Id: I5c3ad7750d94b36754f64eb302f96ec163785cb9 Reviewed-on: http://gerrit.rockbox.org/142 Reviewed-by: Nils Wallménius <nils@rockbox.org>
* rbcodec refactoring: get_audio_base_data_typeSean Bartell2012-04-28
| | | | | | | | | | This function has been changed to rbcodec_format_is_atomic, which doesn't require an enum from the kernel. Change-Id: I1d537605087fe130a9b545509d7b8a340806dbf2 Reviewed-on: http://gerrit.rockbox.org/141 Reviewed-by: Nils Wallménius <nils@rockbox.org> Tested-by: Nils Wallménius <nils@rockbox.org>
* Build librbcodec with DSP and metadata.Sean Bartell2012-03-18
All associated files are moved to /lib/rbcodec. Change-Id: I572ddd2b8a996aae1e98c081d06b1ed356dce222