private int calculateDataLength() { int length = 0; if (extendedHeader) length += extendedHeaderLength; if (footer) length += FOOTER_LENGTH; else if (padding) length += PADDING_LENGTH; Iterator<ID3v2FrameSet> setIterator = frameSets.values().iterator(); while (setIterator.hasNext()) { ID3v2FrameSet frameSet = setIterator.next(); Iterator<ID3v2Frame> frameIterator = frameSet.getFrames().iterator(); while (frameIterator.hasNext()) { ID3v2Frame frame = (ID3v2Frame) frameIterator.next(); length += frame.getLength(); } } return length; }
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; }
protected ID3v2CommentFrameData extractLyricsFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { Iterator<ID3v2Frame> iterator = frameSet.getFrames().iterator(); while (iterator.hasNext()) { ID3v2Frame frame = (ID3v2Frame) iterator.next(); ID3v2CommentFrameData frameData; try { frameData = new ID3v2CommentFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (InvalidDataException e) { // Do nothing } } } return null; }
private ID3v2WWWFrameData extractWWWFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ID3v2Frame frame = (ID3v2Frame) frameSet.getFrames().get(0); ID3v2WWWFrameData frameData; try { frameData = new ID3v2WWWFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (InvalidDataException e) { // do nothing } } return null; }
private ID3v2UrlFrameData extractUrlFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ID3v2Frame frame = (ID3v2Frame) frameSet.getFrames().get(0); ID3v2UrlFrameData frameData; try { frameData = new ID3v2UrlFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (InvalidDataException e) { // do nothing } } return null; }
private ID3v2PopmFrameData extractPopmFrameData(final String id) { final ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { final ID3v2Frame frame = frameSet.getFrames().get(0); ID3v2PopmFrameData frameData; try { frameData = new ID3v2PopmFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (final InvalidDataException e) { // do nothing } } return null; }
private int packSpecifiedFrames(byte[] bytes, int offset, String onlyId, String notId) throws NotSupportedException { Iterator<ID3v2FrameSet> setIterator = frameSets.values().iterator(); while (setIterator.hasNext()) { ID3v2FrameSet frameSet = setIterator.next(); if ((onlyId == null || onlyId.equals(frameSet.getId())) && (notId == null || !notId.equals(frameSet.getId()))) { Iterator<ID3v2Frame> frameIterator = frameSet.getFrames().iterator(); while (frameIterator.hasNext()) { ID3v2Frame frame = (ID3v2Frame) frameIterator.next(); if (frame.getDataLength() > 0) { byte[] frameData = frame.toBytes(); BufferTools.copyIntoByteBuffer(frameData, 0, frameData.length, bytes, offset); offset += frameData.length; } } } } return offset; }
private ArrayList<ID3v2ChapterFrameData> extractChapterFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ArrayList<ID3v2ChapterFrameData> chapterData = new ArrayList<>(); List<ID3v2Frame> frames = frameSet.getFrames(); for (ID3v2Frame frame : frames) { ID3v2ChapterFrameData frameData; try { frameData = new ID3v2ChapterFrameData(useFrameUnsynchronisation(), frame.getData()); chapterData.add(frameData); } catch (InvalidDataException e) { // do nothing } } return chapterData; } return null; }
private ArrayList<ID3v2ChapterTOCFrameData> extractChapterTOCFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ArrayList<ID3v2ChapterTOCFrameData> chapterData = new ArrayList<>(); List<ID3v2Frame> frames = frameSet.getFrames(); for (ID3v2Frame frame : frames) { ID3v2ChapterTOCFrameData frameData; try { frameData = new ID3v2ChapterTOCFrameData(useFrameUnsynchronisation(), frame.getData()); chapterData.add(frameData); } catch (InvalidDataException e) { // do nothing } } return chapterData; } return null; }
private ID3v2CommentFrameData extractCommentFrameData(String id, boolean itunes) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { Iterator<ID3v2Frame> iterator = frameSet.getFrames().iterator(); while (iterator.hasNext()) { ID3v2Frame frame = (ID3v2Frame) iterator.next(); ID3v2CommentFrameData frameData; try { frameData = new ID3v2CommentFrameData(useFrameUnsynchronisation(), frame.getData()); if (itunes && ITUNES_COMMENT_DESCRIPTION.equals(frameData.getDescription().toString())) { return frameData; } else if (!itunes) { return frameData; } } catch (InvalidDataException e) { // Do nothing } } } return null; }
private ID3v2PictureFrameData createPictureFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ID3v2Frame frame = (ID3v2Frame) frameSet.getFrames().get(0); ID3v2PictureFrameData frameData; try { if (obseleteFormat) frameData = new ID3v2ObseletePictureFrameData(useFrameUnsynchronisation(), frame.getData()); else frameData = new ID3v2PictureFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (InvalidDataException e) { // do nothing } } return null; }
private int calculateDataLength() { int length = 0; if (extendedHeader) length += extendedHeaderLength; if (footer) length += FOOTER_LENGTH; else if (padding) length += PADDING_LENGTH; Iterator<ID3v2FrameSet> setIterator = frameSets.values().iterator(); while (setIterator.hasNext()) { ID3v2FrameSet frameSet = setIterator.next(); Iterator<ID3v2Frame> frameIterator = frameSet.getFrames().iterator(); while (frameIterator.hasNext()) { ID3v2Frame frame = (ID3v2Frame) frameIterator.next(); length += frame.getLength(); } } return length; }
private ID3v2UrlFrameData extractUrlFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ID3v2Frame frame = (ID3v2Frame) frameSet.getFrames().get(0); ID3v2UrlFrameData frameData; try { frameData = new ID3v2UrlFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (InvalidDataException e) { // do nothing } } return null; }
protected ID3v2CommentFrameData extractLyricsFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { Iterator<ID3v2Frame> iterator = frameSet.getFrames().iterator(); while (iterator.hasNext()) { ID3v2Frame frame = (ID3v2Frame) iterator.next(); ID3v2CommentFrameData frameData; try { frameData = new ID3v2CommentFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (InvalidDataException e) { // Do nothing } } } return null; }
private ID3v2WWWFrameData extractWWWFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ID3v2Frame frame = (ID3v2Frame) frameSet.getFrames().get(0); ID3v2WWWFrameData frameData; try { frameData = new ID3v2WWWFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (InvalidDataException e) { // do nothing } } return null; }
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; }
private ID3v2PopmFrameData extractPopmFrameData(final String id) { final ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { final ID3v2Frame frame = frameSet.getFrames().get(0); ID3v2PopmFrameData frameData; try { frameData = new ID3v2PopmFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (final InvalidDataException e) { // do nothing } } return null; }
private int packSpecifiedFrames(byte[] bytes, int offset, String onlyId, String notId) throws NotSupportedException { Iterator<ID3v2FrameSet> setIterator = frameSets.values().iterator(); while (setIterator.hasNext()) { ID3v2FrameSet frameSet = setIterator.next(); if ((onlyId == null || onlyId.equals(frameSet.getId())) && (notId == null || !notId.equals(frameSet.getId()))) { Iterator<ID3v2Frame> frameIterator = frameSet.getFrames().iterator(); while (frameIterator.hasNext()) { ID3v2Frame frame = (ID3v2Frame) frameIterator.next(); if (frame.getDataLength() > 0) { byte[] frameData = frame.toBytes(); BufferTools.copyIntoByteBuffer(frameData, 0, frameData.length, bytes, offset); offset += frameData.length; } } } } return offset; }
private ArrayList<ID3v2ChapterTOCFrameData> extractChapterTOCFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ArrayList<ID3v2ChapterTOCFrameData> chapterData = new ArrayList<>(); List<ID3v2Frame> frames = frameSet.getFrames(); for (ID3v2Frame frame : frames) { ID3v2ChapterTOCFrameData frameData; try { frameData = new ID3v2ChapterTOCFrameData(useFrameUnsynchronisation(), frame.getData()); chapterData.add(frameData); } catch (InvalidDataException e) { // do nothing } } return chapterData; } return null; }
private ID3v2PictureFrameData createPictureFrameData(String id) { ID3v2FrameSet frameSet = frameSets.get(id); if (frameSet != null) { ID3v2Frame frame = (ID3v2Frame) frameSet.getFrames().get(0); ID3v2PictureFrameData frameData; try { if (obseleteFormat) frameData = new ID3v2ObseletePictureFrameData(useFrameUnsynchronisation(), frame.getData()); else frameData = new ID3v2PictureFrameData(useFrameUnsynchronisation(), frame.getData()); return frameData; } catch (InvalidDataException e) { // do nothing } } return null; }