3
* Copyright (C) 2009 Andreas Brauchli
5
* This library is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU Lesser General Public
7
* License as published by the Free Software Foundation; either
8
* version 2.1 of the License, or (at your option) any later version.
10
* This library is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* Lesser General Public License for more details.
15
* You should have received a copy of the GNU Lesser General Public
16
* License along with this library; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
* Andreas Brauchli <a.brauchli@elementarea.net>
23
[CCode (cprefix = "TagLib_", lower_case_cprefix = "taglib_", cheader_filename = "tag_c.h")]
26
public static void set_strings_unicode (bool unicode);
27
/* TagLib can keep track of strings that are created when outputting tag values
28
* and clear them using taglib_tag_clear_strings(). This is enabled by default.
29
* However if you wish to do more fine grained management of strings, you can do
30
* so by setting a management to FALSE.
32
public static void set_string_management_enabled (bool management);
34
[CCode (free_function = "taglib_file_free")]
38
public File (string filename);
39
public File.type (string filename, FileType type);
41
public bool is_valid ();
42
public unowned Tag tag {
43
[CCode (cname = "taglib_file_tag")]
46
public unowned AudioProperties audioproperties {
47
[CCode (cname = "taglib_file_audioproperties")]
53
[CCode (free_function = "")]
57
public unowned string title {
58
[CCode (cname = "taglib_tag_title")]
62
public unowned string artist {
63
[CCode (cname = "taglib_tag_artist")]
67
public unowned string album {
68
[CCode (cname = "taglib_tag_album")]
72
public unowned string comment {
73
[CCode (cname = "taglib_tag_comment")]
77
public unowned string genre {
78
[CCode (cname = "taglib_tag_genre")]
83
[CCode (cname = "taglib_tag_year")]
88
[CCode (cname = "taglib_tag_track")]
93
public static void free_strings ();
96
[CCode (free_function = "", cname = "TagLib_AudioProperties")]
99
public class AudioProperties
102
[CCode (cname = "taglib_audioproperties_length")]
106
[CCode (cname = "taglib_audioproperties_bitrate")]
109
public int samplerate {
110
[CCode (cname = "taglib_audioproperties_samplerate")]
113
public int channels {
114
[CCode (cname = "taglib_audioproperties_channels")]
119
[CCode (cname = "TagLib_File_Type", cprefix = "TagLib_File_")]
133
[CCode (cname = "taglib_id3v2_set_default_text_encoding")]
134
public void set_default_text_encoding (Encoding encoding);
136
[CCode (cname = "TagLib_ID3v2_Encoding", cprefix = "TagLib_ID3v2_")]
137
public enum Encoding {