Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
| * | 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 | |
| | | | ||||||
| * | | * doc/emms.texinfo: update quickstart | Yoni Rabkin | 2021-01-07 | 1 | -19/+20 | |
| | | | ||||||
| * | | * doc/developer-release.txt: | Yoni Rabkin | 2021-01-07 | 1 | -9/+5 | |
| | | | ||||||
* | | | * emms-tag-editor.el: remove hard-coding of program name | Yoni Rabkin | 2021-01-08 | 1 | -1/+6 | |
|/ / | ||||||
* | | * Makefile: version bump | Yoni Rabkin | 2020-12-30 | 1 | -1/+1 | |
| | | ||||||
* | | * README: update the README for ELPA package display | Yoni Rabkin | 2020-12-30 | 3 | -5/+19 | |
|/ | ||||||
* | * doc/developer-release.txt: better incantation | Yoni Rabkin | 2020-11-09 | 1 | -1/+1 | |
| | ||||||
* | * doc/developer-release.txt: correct arcane incantation | Yoni Rabkin | 2020-11-09 | 1 | -1/+1 | |
| | ||||||
* | * emms-tag-editor.el: | Yoni Rabkin | 2020-11-05 | 1 | -1/+5 | |
| | ||||||
* | * emms-tag-editor.el: Bug fixes for the tag editor. | Yoni Rabkin | 2020-11-05 | 3 | -11/+20 | |
| | | | | Patches by Feng Shu <tumashu@163.com>. | |||||
* | * Makefile: keep the info file | Yoni Rabkin | 2020-11-05 | 1 | -1/+0 | |
| | ||||||
* | * emms-info-exiftool.el: read track numbers as strings | Yoni Rabkin | 2020-11-05 | 3 | -1/+6 | |
| | | | | From: Feng Shu <tumashu@163.com>: tracknumber and year should be string. | |||||
* | * doc/developer-release.txt: update push command | Yoni Rabkin | 2020-11-05 | 1 | -14/+14 | |
| | | | | | | | | | | | Update push command according to Stefan Monnier's advice: > + - from the "elpa" branch in Savannah push to elpa.git: > + "git push elpa elpa:refs/heads/externals/emms" AFAIK the use of "refs/heads/externals/emms" is necessary when creating this branch (i.e. for the initial push) but for updates, you can use the more concise and friendly "externals/emms". | |||||
* | * emms.el: add seq as an ELPA requirement | Yoni Rabkin | 2020-11-05 | 1 | -2/+2 | |
| | ||||||
* | * doc/developer-release.txt: | Yoni Rabkin | 2020-10-27 | 1 | -1/+5 | |
| | ||||||
* | * doc/developer-release.txt: | Yoni Rabkin | 2020-10-27 | 1 | -2/+2 | |
| |