mirror of
https://github.com/fmang/opustags.git
synced 2025-07-06 17:47:51 +02:00
Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
7174a1f2f2 | |||
1a8aaff933 | |||
4973a4deab | |||
8e9d98ac62 |
20
README.md
20
README.md
@ -3,6 +3,26 @@ opustags
|
||||
|
||||
View and edit Opus comments.
|
||||
|
||||
**Please note this project is old and not actively maintained.**
|
||||
Maybe you should use something else.
|
||||
|
||||
It was built because at the time nothing supported Opus, but now things have
|
||||
changed for the better.
|
||||
|
||||
For alternative, check out these projects:
|
||||
|
||||
- [EasyTAG](https://wiki.gnome.org/Apps/EasyTAG)
|
||||
- [Beets](http://beets.io/)
|
||||
- [Picard](https://picard.musicbrainz.org/)
|
||||
- [puddletag](http://docs.puddletag.net/)
|
||||
- [Quod Libet](https://quodlibet.readthedocs.io/en/latest/)
|
||||
- [Goggles Music Manager](https://gogglesmm.github.io/)
|
||||
|
||||
See also these libraries if you need a lower-level access:
|
||||
|
||||
- [TagLib](http://taglib.org/)
|
||||
- [mutagen](https://mutagen.readthedocs.io/en/latest/)
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
|
14
opustags.c
14
opustags.c
@ -7,6 +7,12 @@
|
||||
#include <unistd.h>
|
||||
#include <ogg/ogg.h>
|
||||
|
||||
#ifdef __APPLE__
|
||||
#include <libkern/OSByteOrder.h>
|
||||
#define htole32(x) OSSwapHostToLittleInt32(x)
|
||||
#define le32toh(x) OSSwapLittleToHostInt32(x)
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
uint32_t vendor_length;
|
||||
const char *vendor_string;
|
||||
@ -50,8 +56,10 @@ int parse_tags(char *data, long len, opus_tags *tags){
|
||||
if(pos > len)
|
||||
return -1;
|
||||
}
|
||||
if(pos != len)
|
||||
return -1;
|
||||
|
||||
if(pos < len)
|
||||
fprintf(stderr, "warning: %ld unused bytes at the end of the OpusTags packet\n", len - pos);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -156,7 +164,7 @@ int write_page(ogg_page *og, FILE *stream){
|
||||
return 0;
|
||||
}
|
||||
|
||||
const char *version = "opustags version 1.1\n";
|
||||
const char *version = "opustags version 1.1.1\n";
|
||||
|
||||
const char *usage =
|
||||
"Usage: opustags --help\n"
|
||||
|
Reference in New Issue
Block a user