HydrogenAudio

Lossy Audio Compression => Ogg Vorbis => Ogg Vorbis - General => Topic started by: collectordave on 2019-07-28 08:57:05

Title: ogg vorbis comment Reader\Writer new project
Post by: collectordave on 2019-07-28 08:57:05
New to the forum so if topic a repeat please forgive me.

I have started a programming project to write a programme that will read and write ogg vorbis comments. The programme will be open source and in the public domain when finished. I am looking at this to have the same programme run on Mac, Linux(32 and 64) and windows(32 and 64)

Noticed on the forum some comments about padding and other subjects. I have two questions.

1. Should padding be included? It does make writing the programme a little easier and does not affect quality and means when writing new comment information there is no need to write the whole file again. The problem is how much padding.

2. After being asked 'What are they singing?' many times would it be good to add a comment 'LYRICS' to hold the Lyrics to the song being played?

If there are several people wanting LYRICS comments in then I will plan to do it.

Remember this comment may not be recognised by some players and may not allways be displayed.
Title: Re: ogg vorbis comment Reader\Writer new project
Post by: collectordave on 2019-08-17 08:44:50
Ok

vorbis comment reading and writing done including cover art embedded in the ogg file.

Supporting a small ogg player I am programming.

There are however 21 types of image that can be stored.

Image Types
0 - Other
1 - 32x32 pixels 'file icon' (PNG only)
2 - Other file icon
3 - Cover (front)
4 - Cover (back)
5 - Leaflet page
6 - Media (e.g. label side of CD)
7 - Lead artist/lead performer/soloist
8 - Artist/performer
9 - Conductor
10 - Band/Orchestra
11 - Composer
12 - Lyricist/text writer
13 - Recording Location
14 - During recording
15 - During performance
16 - Movie/video screen capture
17 - A bright coloured fish
18 - Illustration
19 - Band/artist logotype
20 - Publisher/Studio logotype

Don't ask me what Bright coloured fish is!

So first a question to all is it worth supporting all these types?

My preferred solution to artwork is to have a separate file for each picture in the same folder as the ogg file.

This can be done relatively simply by adding a tag IMAGELINKS which would contain the filenames of each picture associated with the ogg file. This should not upset any ogg players but can be supported easily.

Would anyone like to see that develop?

collectordave
Title: Re: ogg vorbis comment Reader\Writer new project
Post by: lithopsian on 2019-08-18 17:58:14
The image type is largely information, so your only real overhead for supporting them all is the user interface.  Have you seen the Ogg Vorbis logo?
https://xiph.org/vorbis/

Plenty of players can display images from the same folder, or a different defined folder, as the audio.  That's not reinventing the wheel.  Good players allow the user to decide which image they wish to use by preference.
Title: Re: ogg vorbis comment Reader\Writer new project
Post by: collectordave on 2019-08-19 15:45:32
Hi

Thanks for the reply.

I have found that the image type is important such as type 3 album art front cover. Media monkey displays that image type by default allthough it does allow you to see the other images.

I am supporting 4 types now and will probably add the rest as I go further down the line.

Be good to get it tested on other players.

collectordave
Title: Re: ogg vorbis comment Reader\Writer new project
Post by: lithopsian on 2019-08-19 21:21:45
Well you need an image type, even if you hard-code them all to 3.  Since you have to set it, it seems like a small step to set it to a sensible value.
Title: Re: ogg vorbis comment Reader\Writer new project
Post by: collectordave on 2019-08-20 04:27:02
Hi

I allready do set it to the sensible values outlined above. I have also found a small descriptive text embedded in images but in the several hundred ogg files checked so far it is not set.

As all are stored as METADATA_BLOCK_PICTURE the type number is the only way to tell which picture is stored.

I have seen that a lot of ogg files seem to have all pictures set to the same type value though.

I also now store LYRICS with each ogg file.

The oggvorbis logo I now see what the bright coloured fish type is.

I cannot find anything in the xiph spec for storing links to images external to the ogg file so this must be unique to each player.

No problem will add that to the player not the vorbis comment.
Title: Re: ogg vorbis comment Reader\Writer new project
Post by: lithopsian on 2019-08-20 11:41:41
Instead of embedded picture data, a url string can be stored.  This indicates the location of an image file.  It can be a remote or local file.  I haven't seen this used much.  It is supposed to be an absolute url (eg. file://), not relative, which would restrict its usefulness.

The description text field is a standard part of the original FLAC image block, variable length, but again not always used.
Title: Re: ogg vorbis comment Reader\Writer new project
Post by: collectordave on 2019-08-22 18:56:44
Flac uses the same vorbis comment block just a little smaller.

I can easily store a url for an image but cannot find in the specification the comment to store this as standard such as, META_DATA_IMAGE

Does anyone know?

Also looking at mbid and other url's so lookup on web possible. Not sure if other players support these I will provide support for these through a personal music database attached to the player tagger.

CD