summaryrefslogtreecommitdiff
path: root/apps/recorder/jpeg_load.c (follow)
Commit message (Collapse)AuthorAge
* Fix FS#12981 JPEG decoding problem when entropy data starts with FFBoris Gjenero2016-04-01
| | | | | | | | | | This changes JPEG fill and invalid byte handling to be like mozjpeg, and bases entropy data start on SOS marker location. Thanks to Stefan Waldmann and Dean Tersigni for reporting. Change-Id: I3c79cc6ac8d714fdc75c12b57ba427d611c99519 Chaange-Id: Ibc7c17d38d5be63642bdaf6adfd6acc2a6cf4450
* Set alpha_offset to zero when loading a JPEG.Boris Gjenero2011-11-09
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30948 a1c6a512-1295-4272-9138-f99709370657
* Fix test plugin build.Andree Buschmann2011-02-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29277 a1c6a512-1295-4272-9138-f99709370657
* Embedded album art support in MP3/ID3v2 tags.Thomas Martitz2011-02-09
| | | | | | | | | | | - Support is limited to non-desync jpeg in id3v2 tags. Other formats (hopefully) follow in the future. - Embedded album art takes precedence over files in album art files. - No additional buffers are used, the jpeg is read directly from the audio file. Flyspray: FS#11216 Author: Yoshihisa Uchida and I git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29259 a1c6a512-1295-4272-9138-f99709370657
* Move c/h files implementing/defining standard library stuff into a new libc ↵Thomas Martitz2010-05-06
| | | | | | | | directory, also standard'ify some parts of the code base (almost entirely #include fixes). This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
* Make array static const in apps/recorder/jpeg_load.cBertrik Sikken2010-04-06
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25500 a1c6a512-1295-4272-9138-f99709370657
* Commit part of FS#9873 - Utilise buttons for playlistingThomas Martitz2009-07-22
| | | | | | | It adds a shortcut (combo or button) to directly go from the wps to the playlist viewer. The combos could possibly be improved on some targets, but I tried to keep a tad bit of consistency (was hardly possible). I also added a corresponding touchscreen region and adapted cabbiev2. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22003 a1c6a512-1295-4272-9138-f99709370657
* Use single-instruction shift-and-saturate in place of range_limit for JPEG ↵Andrew Mahone2009-06-27
| | | | | | on ARMv6. Only affects the 16-point horizontal-pass IDCT. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21528 a1c6a512-1295-4272-9138-f99709370657
* ARM assembly 8-point IDCT, both passes. No ARMv5/6 optimizations yet, aside ↵Andrew Mahone2009-06-27
| | | | | | from usat for final output. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21526 a1c6a512-1295-4272-9138-f99709370657
* 2-point and 1-point JPEG IDCT ARM assembly, remove comment in jpeg_load.c ↵Andrew Mahone2009-06-19
| | | | | | about inline asm, change loop condition to be a bit safer in case of bad values being passed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21349 a1c6a512-1295-4272-9138-f99709370657
* Core JPEG decoder improvements:Andrew Mahone2009-06-19
| | | | | | | | | For >8-point vertical IDCT, transpose the coefficients while decoding them, so that the vertical IDCT can read in rows rather than columns. This improves speed a bit for this size even using the C IDCT. Remove inline ARM asm, replacing it with an external file containing pure asm IDCT functions. Add jpeg_ prefix to JPEG IDCT functions since some of them will now be visible globally. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21345 a1c6a512-1295-4272-9138-f99709370657
* Remove explicit counter for rows/columns in IDCT, instead testing against a ↵Andrew Mahone2009-06-14
| | | | | | pointer calculated in store_row_jpeg. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21284 a1c6a512-1295-4272-9138-f99709370657
* Adjust AC decode such that decode *always* stops before storing an unneeded ↵Andrew Mahone2009-06-14
| | | | | | coefficient. Remove extra lines from zag[] as it should not be possible to store a coefficient for k>63, even for corrupted files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21283 a1c6a512-1295-4272-9138-f99709370657
* Fix red.Andrew Mahone2009-06-12
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21257 a1c6a512-1295-4272-9138-f99709370657
* ARMv4 and ARMv5 inline assembly for 4-point IDCT.Andrew Mahone2009-06-11
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21256 a1c6a512-1295-4272-9138-f99709370657
* Move +128 offset out of range_limit, and add it to the DC coefficient in ↵Andrew Mahone2009-06-11
| | | | | | each idct*h routine, for a small binsize improvement on idct4h, idct8h, and idct16h, and a negligible speed increase. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21255 a1c6a512-1295-4272-9138-f99709370657
* Don't compensate for lack of shift in second IDCT stage, allowing ↵Andrew Mahone2009-06-11
| | | | | | quantization table to be reduced to 16-bit. Reduce IDCT workspace to 16-bit. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21254 a1c6a512-1295-4272-9138-f99709370657
* Undo the delta on ARM but making the loop variables signed as before r21205. ↵Jens Arnold2009-06-07
| | | | | | GCC is weird... git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21206 a1c6a512-1295-4272-9138-f99709370657
* Convert a number of places in core and plugins to use the BIT_N() macro ↵Jens Arnold2009-06-07
| | | | | | instead of 1<<n. Speeds up things on SH1, and also reduces core binsize. Most notable speedups: 1 bit lcd driver: drawpixel +20%, drawline + 27%, hline +5%; jpeg viewer: +8% for 1/8 scaling. Other targets are unaffected. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21205 a1c6a512-1295-4272-9138-f99709370657
* Don't perform YUV->RGB conversion before row output for unscaled loads of ↵Andrew Mahone2009-06-03
| | | | | | greyscale JPEG, as store_row_jpeg already does this. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21174 a1c6a512-1295-4272-9138-f99709370657
* Flag EOF and empty buffer conditions as UNLIKELY in JPEG decoder.Andrew Mahone2009-05-11
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20907 a1c6a512-1295-4272-9138-f99709370657
* Fix a bug reading JPEG when the output data is smaller than sizeof(struct ↵Andrew Mahone2009-05-11
| | | | | | jpeg), and add more optional debugging output in the decoder. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20906 a1c6a512-1295-4272-9138-f99709370657
* Don't build 16-point IDCT on greyscale targets, since it's only used for ↵Andrew Mahone2009-05-09
| | | | | | chroma components. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20887 a1c6a512-1295-4272-9138-f99709370657
* Fix test for direct JPEG output, bump plugin API as r20884 changed struct ↵Andrew Mahone2009-05-09
| | | | | | custom_format. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20885 a1c6a512-1295-4272-9138-f99709370657
* Split 8-bit-to-native conversion in bmp.c into a function, add support for ↵Andrew Mahone2009-05-09
| | | | | | plugging unscaled output in BMP and JPEG loaders, use output_row_8_native in JPEG decoder when possible. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20884 a1c6a512-1295-4272-9138-f99709370657
* Convert Huffman decode from inline function to macro, for small code size ↵Andrew Mahone2009-05-08
| | | | | | saving on ARM and on Coldfire color, only finish DC decode on greyscale targets if decoding luma channel. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20874 a1c6a512-1295-4272-9138-f99709370657
* Small size improvement for JPEG on ARM/Coldfire.Andrew Mahone2009-05-08
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20873 a1c6a512-1295-4272-9138-f99709370657
* Plugin JPEG decoder for data in memory, along with test_mem_jpeg.c and ↵Andrew Mahone2009-05-08
| | | | | | bench_mem_jpeg.c plugins to test and benchmark it, and a line-length clean up in jpeg_load.c. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20871 a1c6a512-1295-4272-9138-f99709370657
* Never use upscaling IDCT for luma (to reduce blockiness), plus some small ↵Andrew Mahone2009-05-07
| | | | | | size optimizations by not calculating or storing scale factors or k_need/zero_need for chroma on greyscale. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20866 a1c6a512-1295-4272-9138-f99709370657
* Move YUV->RGB in JPEG load from before scaler to after scaler. Required ↵Andrew Mahone2009-05-06
| | | | | | change to struct custom_format, so sorted the plugin API as well. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20856 a1c6a512-1295-4272-9138-f99709370657
* Make local function static in jpeg_load.c, add missing header file in ↵Bertrik Sikken2009-05-03
| | | | | | read_image.c git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20848 a1c6a512-1295-4272-9138-f99709370657
* Add core JPEG reader, adapted from the JPEG plugin's decoder, with some ↵Andrew Mahone2009-05-01
changes to prevent include conflicts between the two decoders. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20836 a1c6a512-1295-4272-9138-f99709370657