Tetrox renamed to Rockblox -- remove old screenshots and add updated ones for Rockblox
[Rockbox.git] / songdbj / TagInfo.java
blob22592260252ec3dade1b5438fcf832365e0a4fdf
1 /*
2 * TagInfo.
3 *
4 * JavaZOOM : jlgui@javazoom.net
5 * http://www.javazoom.net
6 *
7 *-----------------------------------------------------------------------
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU Library General Public License as published
10 * by the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU Library General Public License for more details.
18 * You should have received a copy of the GNU Library General Public
19 * License along with this program; if not, write to the Free Software
20 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 *----------------------------------------------------------------------
24 import java.io.File;
25 import java.io.IOException;
26 import java.io.InputStream;
27 import java.net.URL;
28 import java.util.Vector;
30 import javax.sound.sampled.UnsupportedAudioFileException;
32 /**
33 * This interface define needed features for song information.
34 * Adapted from Scott Pennell interface.
36 public interface TagInfo
39 public void load(InputStream input) throws IOException, UnsupportedAudioFileException;
41 public void load(URL input) throws IOException, UnsupportedAudioFileException;
43 public void load(File input) throws IOException, UnsupportedAudioFileException;
45 /**
46 * Get Sampling Rate
47 * @return
49 public int getSamplingRate();
51 /**
52 * Get Nominal Bitrate
53 * @return bitrate in bps
55 public int getBitRate();
57 /**
58 * Get channels.
59 * @return channels
61 public int getChannels();
63 /**
64 * Get play time in seconds.
65 * @return
67 public long getPlayTime();
69 /**
70 * Get the title of the song.
71 * @return the title of the song
73 public String getTitle();
75 /**
76 * Get the artist that performed the song
77 * @return the artist that performed the song
79 public String getArtist();
81 /**
82 * Get the name of the album upon which the song resides
83 * @return the album name
85 public String getAlbum();
87 /**
88 * Get the track number of this track on the album
89 * @return the track number
91 public int getTrack();
93 /**
94 * Get the genre string of the music
95 * @return the genre string
97 public String getGenre();
99 /**
100 * Get the year the track was released
101 * @return the year the track was released
103 public String getYear();
106 * Get any comments provided about the song
107 * @return the comments
109 public Vector getComment();
111 public int getFirstFrameOffset();