Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | * emms-info-libtag.el: lexical declaration | Yoni Rabkin | 2021-03-02 | 1 | -1/+1 |
| | |||||
* | * emms-info.el: add lexical and remove unused lexical variable | Yoni Rabkin | 2021-03-02 | 1 | -3/+2 |
| | |||||
* | * emms-i18n.el: calm down the compiler | Yoni Rabkin | 2021-03-02 | 1 | -1/+1 |
| | |||||
* | * emms-i18n.el: lexical declaration | Yoni Rabkin | 2021-03-02 | 1 | -1/+1 |
| | |||||
* | * emms-history.el: lexical declaration | Yoni Rabkin | 2021-03-02 | 1 | -1/+1 |
| | |||||
* | * emms.el: explicit ignore | Yoni Rabkin | 2021-03-02 | 1 | -0/+1 |
| | |||||
* | add lexical declarations | Yoni Rabkin | 2021-03-02 | 2 | -2/+2 |
| | |||||
* | * emms-compat.el: lexical | Yoni Rabkin | 2021-03-02 | 1 | -1/+1 |
| | |||||
* | * emms-cache.el: explicit ignore | Yoni Rabkin | 2021-03-02 | 1 | -1/+2 |
| | |||||
* | * emms-cache.el: lexical | Yoni Rabkin | 2021-03-02 | 1 | -1/+1 |
| | |||||
* | * emms-bookmarks.el: lexical scoping declaration | Yoni Rabkin | 2021-03-02 | 1 | -1/+1 |
| | |||||
* | * emms.info: update dates | Yoni Rabkin | 2021-03-02 | 1 | -59/+59 |
| | |||||
* | Merge branch 'info-native' | Petteri Hintsanen | 2021-02-28 | 1 | -207/+377 |
|\ | |||||
| * | Fix byte compilation | Petteri Hintsanen | 2021-02-27 | 1 | -147/+149 |
| | | | | | | | | | | | | | | - Add requires to load seq-... and string-trim-right functions during compilation. - Reorder code to fix warnings about free and undeclared variables. | ||||
| * | Match id3v1 genres in id3v2.4 frame | Petteri Hintsanen | 2021-02-26 | 1 | -5/+6 |
| | | | | | | | | v2.4 does not enclose genre references in parentheses. | ||||
| * | Add support for id3v1 genres | Petteri Hintsanen | 2021-02-24 | 1 | -1/+141 |
| | | |||||
| * | Decode id3v2 user-defined text frames | Petteri Hintsanen | 2021-02-24 | 1 | -59/+86 |
| | | | | | | | | | | Frames are assumed to be key/value pairs. If key is an info-field identifier, return the value for that info-field. | ||||
* | | Merge branch 'info-native' | Petteri Hintsanen | 2021-02-23 | 1 | -155/+193 |
|\| | |||||
| * | Fix id3v2 frame id to info-field mapping | Petteri Hintsanen | 2021-02-23 | 1 | -16/+24 |
| | | | | | | | | | | Use TDRC for info-date. Also add some more well-known tags so that id3v2 can provide the same info-fields than Vorbis. | ||||
| * | Replace curved quotes with ASCII quotes | Petteri Hintsanen | 2021-02-23 | 1 | -46/+46 |
| | | |||||
| * | Fix whitespace trimming | Petteri Hintsanen | 2021-02-23 | 1 | -6/+7 |
| | | | | | | | | Don't try to trim nil. | ||||
| * | Trim trailing whitespace from all info-fields | Petteri Hintsanen | 2021-02-21 | 1 | -6/+5 |
| | | |||||
| * | Put some id3v2.4 frame data to info-date instead of info-year | Petteri Hintsanen | 2021-02-21 | 1 | -3/+3 |
| | | | | | | | | | | | | | | TDRC (‘Recording time’), TDRL (‘Release time’) and TDOR (‘Original release time’) frames in id3v2.4 are time stamps, not years, so they should go to info-date and info-originaldate fields instead of info-year and info-originalyear. | ||||
| * | Trim trailing whitespace from id3v2 strings | Petteri Hintsanen | 2021-02-21 | 1 | -5/+7 |
| | | |||||
| * | Improve id3v2 validity checks | Petteri Hintsanen | 2021-02-21 | 1 | -40/+48 |
| | | | | | | | | | | | | | | | | | | - Remove id3v2 size checks agains emms-info-native--max-peek-size. Decoded sizes do not guide memory reservation anymore so checks are in that sense redundant. Trigger errors on zero-sized elements though, because they are always wrong. - Verify frame identifiers. | ||||
| * | Improve id3v2 error handling | Petteri Hintsanen | 2021-02-19 | 1 | -41/+51 |
| | | | | | | | | | | | | | | | | | | | | - Allow zero-sized frames; in practice they mean start of padding. - Do not try to read frame headers going over tag boundary. These cases also mean start of padding in practice. - Return nil from emms-info-native--decode-id3v2 in case of errors *or* if there were no useful metadata. | ||||
| * | Read and parse id3v2 frames individually | Petteri Hintsanen | 2021-02-18 | 1 | -62/+72 |
| | | | | | | | | | | | | | | Instead of reading the whole tag and then parsing it, do reading and parsing one frame at a time, and skip uninteresting frames. This may conserve memory and give better performance in some cases. | ||||
* | | Merge branch 'info-native' | Petteri Hintsanen | 2021-02-17 | 1 | -237/+509 |
|\| | |||||
| * | Add mappings for more id3v2 text frames | Petteri Hintsanen | 2021-02-16 | 1 | -0/+6 |
| | | | | | | | | | | Extract "artistsort", "titlesort", "albumsort" and few more "year" and "originalyear" frames. | ||||
| * | Fix id3v2 bugs | Petteri Hintsanen | 2021-02-15 | 1 | -50/+102 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | - Tag-level id3v2 unsynchronization is now supported. Frame-level unsynchronization is still missing, and likely won’t be implemented at all. - Fix frame size decoding between different id3v2 versions. - Use correct id3v2.2 sizes during decoding. - Remove a terminating null byte from text strings only if there is one. | ||||
| * | Remove emms-info-native return value | Petteri Hintsanen | 2021-02-11 | 1 | -8/+3 |
| | | | | | | | | The value was wrong and not used anyway. | ||||
| * | Reorder functions and constants | Petteri Hintsanen | 2021-02-10 | 1 | -77/+73 |
| | | | | | | | | | | Constructs are now ordered from generic to specific ("top-down") and are thus, hopefully, easier to follow. | ||||
| * | Simplify FLAC code | Petteri Hintsanen | 2021-02-10 | 1 | -66/+42 |
| | | | | | | | | Clean up block decoder and fix incorrect last-flag calculation. | ||||
| * | Fix Opus channel mapping decoding | Petteri Hintsanen | 2021-02-10 | 1 | -4/+13 |
| | | | | | | | | | | | | It seems that bindat specs cannot refer outside themselves, so use a special variable ‘emms-info-native--opus-channel-count’ with dynamic binding to keep track of channel count. | ||||
| * | Use lexical binding | Petteri Hintsanen | 2021-02-10 | 1 | -1/+1 |
| | | |||||
| * | Fix typos in Commentary | Petteri Hintsanen | 2021-02-10 | 1 | -4/+4 |
| | | |||||
| * | Clean up Opus code | Petteri Hintsanen | 2021-02-10 | 1 | -11/+8 |
| | | | | | | | | These are only stylistic changes. | ||||
| * | Clean up Vorbis code | Petteri Hintsanen | 2021-02-10 | 1 | -22/+19 |
| | | | | | | | | These are only stylistic changes. | ||||
| * | Simplify Ogg-related code | Petteri Hintsanen | 2021-02-10 | 1 | -64/+89 |
| | | | | | | | | | | Split long functions to smaller functions that are easier to understand. | ||||
| * | Add id3v2 (MP3) support to emms-info-native | Petteri Hintsanen | 2021-02-10 | 1 | -68/+287 |
| | | | | | | | | | | Also adjust Ogg and FLAC decoders to return info fields in a unified format. | ||||
* | | * emms-tag-editor.el: lexical compatibility work | Yoni Rabkin | 2021-01-20 | 1 | -3/+2 |
| | | | | | | | | | | Remove free lexical variables and the add-to-list, which really should only be used for user configuration work. | ||||
* | | * emms-tag-editor.el: Add emms-tag-editor-pipe | Yoni Rabkin | 2021-01-13 | 1 | -3/+93 |
| | | | | | | | | Patch by Feng Shu <tumashu@163.com> | ||||
* | | Merge branch 'info-native' | Petteri Hintsanen | 2021-01-12 | 2 | -1/+492 |
|\| | |||||
| * | Add native Emacs Lisp info method | Petteri Hintsanen | 2020-12-24 | 2 | -1/+492 |
| | | | | | | | | | | This info method is a pure elisp implementation for Ogg Vorbis, Opus and FLAC file formats. | ||||
* | | * doc/developer-release.txt: remove duplicate | Yoni Rabkin | 2021-01-11 | 1 | -2/+0 |
| | | |||||
* | | * doc/emms.texinfo: update copyright years | Yoni Rabkin | 2021-01-10 | 1 | -1/+1 |
| | | |||||
* | | Merge remote-tracking branch 'origin/docs' | Yoni Rabkin | 2021-01-10 | 3 | -99/+210 |
|\ \ | |||||
| * | | * doc/emms.texinfo: update manual | Yoni Rabkin | 2021-01-10 | 2 | -79/+137 |
| | | | |||||
| * | | * doc/emms.texinfo: setup examples | Yoni Rabkin | 2021-01-08 | 1 | -0/+14 |
| | | | |||||
| * | | * doc/emms.texinfo: add setup example | Yoni Rabkin | 2021-01-07 | 1 | -0/+42 |
| | | |