protected ID3v2TextFrameData extractTextFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ID3v2Frame frame = (ID3v2Frame) frameSet.getFrames().get(0); ID3v2TextFrameData frameData; try { frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (InvalidDataException e) { // do nothing } } return null; }
public void setRecordingTime(String recTime) { if (recTime != null && recTime.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(recTime)); addFrame(createFrame(ID_RECTIME, frameData.toBytes()), true); } }
@Override public void setYear(String year) { if (year != null && year.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(year)); addFrame(createFrame(ID_YEAR, frameData.toBytes()), true); } }
@Override public void setDate(String date) { if (date != null && date.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(date)); addFrame(createFrame(ID_DATE, frameData.toBytes()), true); } }
@Override public void setPublisher(String publisher) { if (publisher != null && publisher.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(publisher)); addFrame(createFrame(ID_PUBLISHER, frameData.toBytes()), true); } }
@Override public void setTrack(String track) { if (track != null && track.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(track)); addFrame(createFrame(ID_TRACK, frameData.toBytes()), true); } }
@Override public void setGrouping(String grouping) { if (grouping != null && grouping.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(grouping)); addFrame(createFrame(ID_GROUPING, frameData.toBytes()), true); } }
@Override public void setTitle(String title) { if (title != null && title.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(title)); addFrame(createFrame(ID_TITLE, frameData.toBytes()), true); } }
@Override public void setAlbum(String album) { if (album != null && album.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(album)); addFrame(createFrame(ID_ALBUM, frameData.toBytes()), true); } }
@Override public void setBPM(int bpm) { if (bpm >= 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(Integer.toString(bpm))); addFrame(createFrame(ID_BPM, frameData.toBytes()), true); } }
@Override public void setEncoder(String encoder) { if (encoder != null && encoder.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(encoder)); addFrame(createFrame(ID_ENCODER, frameData.toBytes()), true); } }
@Override public void setPartOfSet(String partOfSet) { if (partOfSet != null && partOfSet.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(partOfSet)); addFrame(createFrame(ID_PART_OF_SET, frameData.toBytes()), true); } }
@Override public void setArtist(String artist) { if (artist != null && artist.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(artist)); addFrame(createFrame(ID_ARTIST, frameData.toBytes()), true); } }
@Override public void setAlbumArtist(String albumArtist) { if (albumArtist != null && albumArtist.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(albumArtist)); addFrame(createFrame(ID_ALBUM_ARTIST, frameData.toBytes()), true); } }
@Override public void setKey(String key) { if (key != null && key.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(key)); addFrame(createFrame(ID_KEY, frameData.toBytes()), true); } }
@Override public void setComposer(String composer) { if (composer != null && composer.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(composer)); addFrame(createFrame(ID_COMPOSER, frameData.toBytes()), true); } }
@Override public void setGenre(int genre) { if (genre >= 0) { invalidateDataLength(); String genreDescription = genre < ID3v1Genres.GENRES.length ? ID3v1Genres.GENRES[genre] : ""; String combinedGenre = "(" + Integer.toString(genre) + ")" + genreDescription; ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(combinedGenre)); addFrame(createFrame(ID_GENRE, frameData.toBytes()), true); } else { // TODO remove frame? } }
@Override public void setOriginalArtist(String originalArtist) { if (originalArtist != null && originalArtist.length() > 0) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(originalArtist)); addFrame(createFrame(ID_ORIGINAL_ARTIST, frameData.toBytes()), true); } }
@Override public void setGenreDescription(String text) { ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(text)); ID3v2FrameSet frameSet = getFrameSets().get(ID_GENRE); if (frameSet == null) { getFrameSets().put(ID_GENRE, frameSet = new ID3v2FrameSet(ID_GENRE)); } frameSet.clear(); frameSet.addFrame(createFrame(ID_GENRE, frameData.toBytes())); }
@Override public void setCompilation(boolean compilation) { invalidateDataLength(); ID3v2TextFrameData frameData = new ID3v2TextFrameData(useFrameUnsynchronisation(), new EncodedText(compilation ? "1" : "0")); addFrame(createFrame(ID_COMPILATION, frameData.toBytes()), true); }