//No guarantee this will work (just an example) File track = new File("C:/path/to/song.mp3"); AudioFile f = AudioFileIO.read(track); f.getTag().setField(FieldKey.COMMENT,"My Comment");
AudioFile f = AudioFileIO.read(wavFile); WavTag tag = (WavTag) f.getTag(); Object[] temp = {false, tag.getFirst(FieldKey.TITLE), tag.getFirst(FieldKey.ARTIST), f.getAudioHeader().getTrackLength() // In seconds };
/** * Get the tag or if the file doesn't have one at all, create a default tag and return * * @return */ public Tag getTagOrCreateDefault() { Tag tag = getTag(); if (tag == null) { return createDefaultTag(); } return tag; }
/** * Get the tag or if the file doesn't have one at all, create a default tag and set it * as the tag of this file * * @return */ public Tag getTagOrCreateAndSetDefault() { Tag tag = getTagOrCreateDefault(); setTag(tag); return tag; }
if (af.getTag().isEmpty()) { delete(af); return; throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED.getMsg(af.getFile().getPath())); if (!af.getFile().canWrite()) { throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED.getMsg(af.getFile().getPath())); if (af.getFile().length() <= MINIMUM_FILESIZE) { throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_BECAUSE_FILE_IS_TOO_SMALL.getMsg(af.getFile().getPath()));
/** * Get the tag or if the file doesn't have one at all, create a default tag and set it * * @return */ public Tag getTagOrCreateAndSetDefault() { Tag tag = getTag(); if (tag == null) { tag = createDefaultTag(); setTag(tag); return tag; } return tag; }
Tag tag = audioFile.getTagOrCreateAndSetDefault(); newTagV23 = new ID3v23Tag((ID3v1Tag)audioFile.getTag()); // Copy old tag data newTagV23 = new ID3v23Tag((ID3v11Tag)audioFile.getTag()); // Copy old tag data audioFile.setTag(newTagV23); audioFile.commit(); } catch (CannotWriteException e) { e.printStackTrace();
Tag tag = getTagOrCreateDefault(); Tag convertedTag = convertID3Tag((AbstractID3v2Tag)tag, TagOptionSingleton.getInstance().getID3V2Version()); if(convertedTag!=null) setTag(convertedTag); setTag(tag); setTag(tag); return getTag();
logger.info("Started writing tag data for file:" + af.getFile().getName()); af.commit(); return; newFile = File.createTempFile(af.getFile().getName().replace('.', '_'), TEMP_FILENAME_SUFFIX, af.getFile().getParentFile()); .getMsg(af.getFile().getName(), af .getFile().getParentFile() .getAbsolutePath()), ioe); throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_TO_CREATE_TEMPORARY_FILE_IN_FOLDER .getMsg(af.getFile().getName(), af.getFile() .getParentFile().getAbsolutePath())); raf = new RandomAccessFile(af.getFile(), WRITE_MODE); .getMsg(af.getFile().getAbsolutePath()), ioe); .getMsg(af.getFile(), ioe.getMessage()), ioe2); .getMsg(af.getFile().getAbsolutePath())); writeTag(af.getTag(), raf, rafTemp); if (this.modificationListener != null) .getMsg(af.getFile(), e.getMessage()), e); .getMsg(af.getFile().getAbsolutePath(), ioe .getMessage()), ioe);
TagOptionSingleton.getInstance().setAndroid(true); File mp3File = new File(mp3Song); AudioFile audioFile = AudioFileIO.read(mp3File); audioFile.setTag(new ID3v23Tag()); Tag newTag= audioFile.getTag(); if (album != null) { newTag.setField(ALBUM, album); } if (artist != null) { newTag.setField(ARTIST, artist); } if (trackName != null) { Log.d("ALBUM TITLE",trackName); newTag.setField(TITLE, trackName); } if (imageAlbum != null) { Log.d("ALBUM COVER",imageAlbum); File fileCover = new File(imageAlbum); if (!fileCover.exists()){ Log.d("ALBUM ","DOESNT EXIST"); } Artwork artwork = Artwork.createArtworkFromFile(fileCover); newTag.addField(artwork); newTag.setField(artwork); } audioFile.commit();de here
logger.config("Started writing tag data for file:" + af.getFile().getName()); af.commit(); return; newFile = File.createTempFile(af.getFile().getName().replace('.', '_'), TEMP_FILENAME_SUFFIX, af.getFile().getParentFile()); if (ioe.getMessage().equals(FILE_NAME_TOO_LONG) && (af.getFile().getName().length() > FILE_NAME_TOO_LONG_SAFE_LIMIT)) newFile = File.createTempFile(af.getFile().getName().substring(0, FILE_NAME_TOO_LONG_SAFE_LIMIT).replace('.', '_'), TEMP_FILENAME_SUFFIX, af.getFile().getParentFile()); logger.log(Level.SEVERE, ErrorMessage.GENERAL_WRITE_FAILED_TO_CREATE_TEMPORARY_FILE_IN_FOLDER.getMsg(af.getFile().getName(), af.getFile().getParentFile().getAbsolutePath()), ioe2); throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_TO_CREATE_TEMPORARY_FILE_IN_FOLDER.getMsg(af.getFile().getName(), af.getFile().getParentFile().getAbsolutePath())); logger.log(Level.SEVERE, ErrorMessage.GENERAL_WRITE_FAILED_TO_CREATE_TEMPORARY_FILE_IN_FOLDER.getMsg(af.getFile().getName(), af.getFile().getParentFile().getAbsolutePath()), ioe); throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_TO_CREATE_TEMPORARY_FILE_IN_FOLDER.getMsg(af.getFile().getName(), af.getFile().getParentFile().getAbsolutePath())); raf = new RandomAccessFile(af.getFile(), WRITE_MODE); logger.log(Level.SEVERE, ErrorMessage.GENERAL_WRITE_FAILED_TO_OPEN_FILE_FOR_EDITING.getMsg(af.getFile().getAbsolutePath()), ioe); logger.log(Level.WARNING, ErrorMessage.GENERAL_WRITE_PROBLEM_CLOSING_FILE_HANDLE.getMsg(af.getFile(), ioe.getMessage()), ioe2); throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_TO_OPEN_FILE_FOR_EDITING.getMsg(af.getFile().getAbsolutePath())); writeTag(af, af.getTag(), raf, rafTemp); if (this.modificationListener != null) logger.log(Level.SEVERE, ErrorMessage.GENERAL_WRITE_FAILED_BECAUSE.getMsg(af.getFile(), e.getMessage()), e);
newFile = File.createTempFile(af.getFile().getName().replace('.', '_'), TEMP_FILENAME_SUFFIX, af.getFile().getParentFile()); throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_TO_CREATE_TEMPORARY_FILE_IN_FOLDER.getMsg(af.getFile().getName(), af.getFile().getParentFile().getAbsolutePath())); raf = new RandomAccessFile(af.getFile(), WRITE_MODE); throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_TO_OPEN_FILE_FOR_EDITING.getMsg(af.getFile().getAbsolutePath())); writeTag(af.getTag(), raf, rafTemp); if (this.modificationListener != null) { this.modificationListener.fileModified(af, newFile); throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_BECAUSE.getMsg(af.getFile(), e.getMessage())); } finally { try { result = af.getFile(); File originalFileBackup = new File(af.getFile().getParentFile().getPath(), AudioFile.getBaseFilename(af.getFile()) + ".old"); boolean renameResult = af.getFile().renameTo(originalFileBackup); if (renameResult == false) { throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_TO_RENAME_ORIGINAL_FILE_TO_BACKUP.getMsg(af.getFile().getPath(), originalFileBackup.getName())); renameResult = newFile.renameTo(af.getFile()); if (!renameResult) { if (!originalFileBackup.renameTo(af.getFile())) {
public void deleteTag(AudioFile f) throws CannotWriteException { //Because audio file is an instanceof MP3File this directs it to save //taking into account if the tag has been sent to null in which case it will be deleted f.commit(); }
public class MyAudioFile implements Parcelable{ private File file; //other fields... public MyAudioFile(AudioFile audioFile){ this.file = audioFile.getFile(); //populate other fields } //parcelable stuff }
AudioFile f = AudioFileIO.read(file); String rate = f.getAudioHeader().getSampleRate();
if (af.getTag().isEmpty()) .getMsg(af.getFile().getPath())); if (!af.getFile().canWrite()) logger.severe(ErrorMessage.GENERAL_WRITE_FAILED.getMsg(af.getFile() .getPath())); throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED .getMsg(af.getFile().getPath())); if (af.getFile().length() <= MINIMUM_FILESIZE) .getMsg(af.getFile().getPath())); throw new CannotWriteException(ErrorMessage.GENERAL_WRITE_FAILED_BECAUSE_FILE_IS_TOO_SMALL .getMsg(af.getFile().getPath()));
/** * Get the tag or if the file doesn't have one at all, create a default tag and set it * * @return */ public Tag getTagOrCreateAndSetDefault() { Tag tag = getTag(); if(tag==null) { tag = createDefaultTag(); setTag(tag); return tag; } return tag; }
/** * Get the tag or if the file doesn't have one at all, create a default tag and return * * @return */ public Tag getTagOrCreateDefault() { Tag tag = getTag(); if(tag==null) { return createDefaultTag(); } return tag; }