Search in sources :

Example 1 with ID3Wrapper

use of com.frostwire.mp3.ID3Wrapper in project frostwire by frostwire.

the class SoundcloudDownload method setAlbumArt.

private static boolean setAlbumArt(SoundcloudSearchResult sr, byte[] cover, String inPath, String outPath) {
    try {
        Mp3File mp3 = new Mp3File(inPath);
        ID3Wrapper newId3Wrapper = new ID3Wrapper(new ID3v1Tag(), new ID3v23Tag());
        newId3Wrapper.setAlbum(sr.getUsername() + ": " + sr.getDisplayName() + " via SoundCloud.com");
        newId3Wrapper.setArtist(sr.getUsername());
        newId3Wrapper.setTitle(sr.getDisplayName());
        newId3Wrapper.setAlbumImage(cover, "image/jpg");
        newId3Wrapper.setUrl(sr.getDetailsUrl());
        newId3Wrapper.getId3v2Tag().setPadding(true);
        mp3.setId3v1Tag(newId3Wrapper.getId3v1Tag());
        mp3.setId3v2Tag(newId3Wrapper.getId3v2Tag());
        mp3.save(outPath);
        return true;
    } catch (Throwable e) {
        LOG.error("Error setting art information for soundcloud download", e);
        return false;
    }
}
Also used : Mp3File(com.frostwire.mp3.Mp3File) ID3Wrapper(com.frostwire.mp3.ID3Wrapper) ID3v1Tag(com.frostwire.mp3.ID3v1Tag) ID3v23Tag(com.frostwire.mp3.ID3v23Tag)

Example 2 with ID3Wrapper

use of com.frostwire.mp3.ID3Wrapper in project frostwire by frostwire.

the class SoundcloudDownload method setAlbumArt.

private boolean setAlbumArt(String mp3Filename, String mp3outputFilename) {
    try {
        byte[] imageBytes = HttpClientFactory.getInstance(HttpClientFactory.HttpContext.DOWNLOAD).getBytes(sr.getThumbnailUrl());
        Mp3File mp3 = new Mp3File(mp3Filename);
        ID3Wrapper newId3Wrapper = new ID3Wrapper(new ID3v1Tag(), new ID3v23Tag());
        newId3Wrapper.setAlbum(sr.getUsername() + ": " + sr.getDisplayName() + " via SoundCloud.com");
        newId3Wrapper.setArtist(sr.getUsername());
        newId3Wrapper.setTitle(sr.getDisplayName());
        newId3Wrapper.setAlbumImage(imageBytes, "image/jpg");
        newId3Wrapper.setUrl(sr.getDetailsUrl());
        newId3Wrapper.getId3v2Tag().setPadding(true);
        mp3.setId3v1Tag(newId3Wrapper.getId3v1Tag());
        mp3.setId3v2Tag(newId3Wrapper.getId3v2Tag());
        mp3.save(mp3outputFilename);
        return true;
    } catch (Throwable e) {
        return false;
    }
}
Also used : Mp3File(com.frostwire.mp3.Mp3File) ID3Wrapper(com.frostwire.mp3.ID3Wrapper) ID3v1Tag(com.frostwire.mp3.ID3v1Tag) ID3v23Tag(com.frostwire.mp3.ID3v23Tag)

Aggregations

ID3Wrapper (com.frostwire.mp3.ID3Wrapper)2 ID3v1Tag (com.frostwire.mp3.ID3v1Tag)2 ID3v23Tag (com.frostwire.mp3.ID3v23Tag)2 Mp3File (com.frostwire.mp3.Mp3File)2