diff --git a/cardcreator/src/de/tilman/cardcreator/CardCreator.java b/cardcreator/src/de/tilman/cardcreator/CardCreator.java index 9d22187..efa42c0 100644 --- a/cardcreator/src/de/tilman/cardcreator/CardCreator.java +++ b/cardcreator/src/de/tilman/cardcreator/CardCreator.java @@ -13,6 +13,7 @@ import com.itextpdf.barcodes.qrcode.EncodeHintType; import com.itextpdf.io.image.ImageDataFactory; import com.itextpdf.kernel.colors.ColorConstants; import com.itextpdf.kernel.geom.PageSize; +import com.itextpdf.kernel.log.SystemOutCounter; import com.itextpdf.kernel.pdf.PdfDocument; import com.itextpdf.kernel.pdf.PdfNumber; import com.itextpdf.kernel.pdf.PdfWriter; @@ -105,23 +106,53 @@ public class CardCreator { URL url = new URL(track.getAlbum().getImages()[0].getUrl()); card.cover = new Image(ImageDataFactory.create(url)); } - else if (link.startsWith("http://")) { - card.title = link; - card.artist = ""; - } else { - // FIXME dirty cover retrieval hack - // "/run/user/1000/gvfs/sftp:host=qudio.local,user=volumio/data/INTERNAL" - // "/run/user/1000/gvfs/smb-share:server=cubon,share=hidrive/Media/Audio" - String path = "/run/user/1000/gvfs/sftp:host=qudio.local,user=volumio/data" + link.substring(link.indexOf("/")) + "/cover.jpg"; + String coverPath = null; - File f = new File(path); - if (f.exists()) { - card.cover = new Image(ImageDataFactory.create(path)); + // extract image + if (link.indexOf('|') > 0) { + coverPath = link.substring(0, link.indexOf('|')); + if (coverPath.startsWith("http://") || coverPath.startsWith("https://")) { + card.cover = new Image(ImageDataFactory.create(coverPath)); + } + else { + File f = new File(coverPath); + if (f.exists()) { + card.cover = new Image(ImageDataFactory.create(coverPath)); + } + else { + System.out.println("Could not find file " + coverPath); + } + } + + link = link.substring(link.indexOf('|')+1); } - card.title = link.substring(link.lastIndexOf('/') + 1); - card.artist = ""; + if (link.startsWith("http://")) { + card.title = link; + card.artist = ""; + } + else { + // FIXME dirty cover retrieval hack + if (card.cover == null) { + // "/run/user/1000/gvfs/sftp:host=qudio.local,user=volumio/data/INTERNAL" + // "/run/user/1000/gvfs/smb-share:server=cubon,share=hidrive/Media/Audio" + // "/run/user/1000/gvfs/sftp:host=qudio.local,user=volumio/data" + // "/media/hidrive/Media/Audio/Kinder" + // "/run/user/1000/gvfs/smb-share:server=cubon,share=hidrive/Media/Audio" + String path = "/run/user/1000/gvfs/smb-share:server=cubon,share=hidrive/Media/Audio/Kinder" + link.substring(link.indexOf("/", 4)) + "/cover.jpg"; + System.out.println(path); + + + File f = new File(path); + if (f.exists()) { + card.cover = new Image(ImageDataFactory.create(path)); + } + } + + card.title = link.substring(link.lastIndexOf('/') + 1); + card.artist = ""; + } } } @@ -397,31 +428,131 @@ public class CardCreator { public static void main(String[] args) throws Exception { - List links = Arrays.asList( -/* "spotify:album:1X2HXE2lAqdmD8VjiBX8Tn", + List links = Arrays.asList(/* + "spotify:album:1X2HXE2lAqdmD8VjiBX8Tn", "spotify:album:5nCA2mAr3rFzk1A6LZXDYm", "spotify:album:1Vc2BZntRGIdv3Ul8AM6cz", "spotify:album:0H3rE11E9DrD3j2gEvQJ5R", "spotify:album:0YSWLbCg5SpxAb2VOON3mX", "spotify:track:7oolFzHipTMg2nL7shhdz2", - "http://streamtdy.ir-media-tec.com/live/mp3-128/web/play.mp3", - "share/Kinder/Astrid Lindgren - Wir Kinder aus Büllerbü", - "share/Kinder/Astrid Lindgren - Die Kinder aus der Krachmacherstraße", - "share/Kinder/Die 30 besten Spiel- und Bewegungslieder", - "share/Kinder/Eddi & Dän - singen Kinderlieder a capella", - "share/Kinder/Karlchen-Geschichten", - "share/Kinder/Lotta kann Radfahren", - "share/Kinder/Neue Karlchen-Geschichten", - "share/Kinder/Janosch - Das Beste von Tiger & Bär", - "share/Kinder/Rabe Socke - Alles Rabenstark!", - "share/Kinder/Astrid Lindgren - Lotta zieht um", "spotify:album:2bK91wL7wsGgJJ7uD6XFYo", "spotify:album:4umBnPXwRr7kKJ2WUVueTq", "spotify:album:6FGyqglqi0oS3tl4SxyZxf", "spotify:album:3iBX3uryCaJl9xWUeOBOFv", "spotify:album:0FuEZWTzqOJ4hOlUoAJ6wY", - "spotify:album:6sTefktQuhIHCWjVYMS6h5"*/ - "/INTERNAL/Astrid Lindgren/Die Kinder aus der Krachmacherstraße", + "spotify:album:6sTefktQuhIHCWjVYMS6h5",*/ + "NAS/share/Astrid Lindgren - Die Kinder aus der Krachmacherstraße", + "NAS/share/Astrid Lindgren - Lotta zieht um", + "NAS/share/Astrid Lindgren - Michel bringt die Welt in Ordnung", + "NAS/share/Astrid Lindgren - Nils Karlsson-Daeumling", + "NAS/share/Astrid Lindgren - Wir Kinder aus Büllerbü", + "NAS/share/Benjamin Blümchen/Benjamin Blümchen - 122 - Benjamin Blümchen als Polizist", + "NAS/share/Benjamin Blümchen/Benjamin Blümchen - Der kleine Hund", + "NAS/share/Benjamin Blümchen/Benjamin Blümchen - und die Zirkusponys", + "NAS/share/Bibi Blocksberg/Bibi Blocksberg - 050 - im Orient", + "NAS/share/Bibi & Tina - Soundtrack zum 3. Kinofilm - Mädchen gegen Jungs", + "NAS/share/Brüder Grimm - Rotkäppchen", + "NAS/share/Christine Nöstlinger - Die neue Franz-Hörbuchbox", + "NAS/share/Conni - Das große Conni-Musikbuch", + "NAS/share/Das Beste überhaupt und weitere Geschichten", + "NAS/share/Das Grüffelokind - Hörspiel zum Film", + "NAS/share/Der Grüffelo und Das Grüffelokind", + "NAS/share/Der kleine Drache Kokosnuss bei den Dinosauriern", + "NAS/share/Der kleine Drache Kokosnuss - Das große Liederalbum", + "NAS/share/Der kleine Drache Kokosnuss - Das Song-Album zum Film", + "NAS/share/Der kleine Drache Kokosnuss - Feuerfeste Freunde", + "NAS/share/Der kleine Drache Kokosnuss - Hab keine Angst", + "NAS/share/Der kleine Drache Kokosnuss im Spukschloss", + "NAS/share/Der kleine Drache Kokosnuss im Weltraum", + "NAS/share/Der kleine Drache Kokosnuss - Kokosnuss und der Schatz im Dschungel", + "NAS/share/Der kleine Drache Kokosnuss kommt in die Schule", + "NAS/share/Der kleine Drache Kokosnuss reist um die Welt", + "NAS/share/Der kleine Drache Kokosnuss - Schulausflug ins Abenteuer", + "NAS/share/Der kleine Drache Kokosnuss und der große Zauberer", + "NAS/share/Der kleine Drache Kokosnuss und die Reise zum Nordpol", + "NAS/share/Der kleine Drachen Kokosnuss und der Schatz im Dschungel", + "NAS/share/Der Räuber Hotzenplotz/CD 1", + "NAS/share/Der Räuber Hotzenplotz/CD 2", + "NAS/share/Der Spielmann - Das Beste aus 20 Jahren", + "NAS/share/Die 30 besten Spiel- und Bewegungslieder", + "NAS/share/Die Biene Maja - Die Fahrt in der Limonadenflasche (CD 5)", + "NAS/share/Die Eiskönigin Völlig Unverfroren", + "NAS/share/Die schönsten Geschichten von Piggeldy und Frederick", + "NAS/share/Drachenreiter", + "NAS/share/Drachenreiter - Die Vulkan-Mission", + "NAS/share/Eddi & Dän - singen Kinderlieder a capella", + "NAS/share/Elke Heidenreich/Nero Corleone", + "NAS/share/Elke Heidenreich/Nero Corleone kehrt zurück", + "NAS/share/Elke Heidenreich/Sonst noch was", + "NAS/share/Ferdi und die Feuerwehr", + "NAS/share/Fredrik Vahle - Durch den Wald", + "NAS/share/Giraffenaffen/Giraffenaffen 2", + "NAS/share/Giraffenaffen/Giraffenaffen 3", + "NAS/share/Giraffenaffen/Giraffenaffen 4", + "NAS/share/Giraffenaffen/Giraffenaffen 5", + "NAS/share/Große Oper für kleine Hörer/CD 01 - Die Zauberflöte", + "NAS/share/Große Oper für kleine Hörer/CD 02 - Der Freischütz", + "NAS/share/Große Oper für kleine Hörer/CD 03 - Tristan Und Isolde", + "NAS/share/Große Oper für kleine Hörer/CD 04 - Hänsel und Gretel", + "NAS/share/Große Oper für kleine Hörer/CD 05 - Die Hochzeit des Figaro", + "NAS/share/Große Oper für kleine Hörer/CD 06 - Carmen", + "NAS/share/Große Oper für kleine Hörer/CD 07 - Aida", + "NAS/share/Große Oper für kleine Hörer/CD 08 - La Bohème", + "NAS/share/Große Oper für kleine Hörer/CD 09 - Fidelio", + "NAS/share/Große Oper für kleine Hörer/CD 10 - Der Barbier von Sevilla", + "NAS/share/Große Oper für kleine Hörer/CD 11 - La Traviata", + "NAS/share/Große Oper für kleine Hörer/CD 12 - Madame Butterfly", + "NAS/share/Große Oper für kleine Hörer/CD 01 - Die Zauberflöte", + "NAS/share/Hej, Pippi Langstrumpf - Die große Astrid Lindgren Lieder-CD", + "NAS/share/Hui Buh das Schlossgespenst - und der schaurige Punkt", + "NAS/share/James Krüss - Der Sängerkrieg der Heidehasen", + "NAS/share/Janosch - Das Beste von Tiger & Bär", + "NAS/share/Karlchen-Geschichten", + "NAS/share/Kikaninchen, Anni & Christian - Die Welt ist bunt!", + "NAS/share/Kikaninchen - Dibedibedab!", + "NAS/share/Kikaninchen - Wir tanzen, spielen, singen Lieder! - Das 2. Album", + "NAS/share/Kindergarten Hits", + "NAS/share/Kinder vom Kleistpark - Das Liederbuch", + "NAS/share/Kinderyogalieder", + "NAS/share/Komische Oper Berlin - Der Zauberer von Oz", + "NAS/share/Komische Oper Berlin - Die Bremer Stadtmusikanten", + "NAS/share/Komische Oper Berlin - Peter Pan", + "NAS/share/Komische Oper Berlin - Schneewittchen und die 77 Zwerge", + "NAS/share/Lamp und Leute - Die 30 besten Oster- und Frühlingslieder", + "NAS/share/Lotta kann Radfahren", + "NAS/share/Meine Freundin Conni - Conni beim Frisör", + "NAS/share/Morgen kommt der Weihnachtsmann", + "NAS/share/Neue Karlchen-Geschichten", + "NAS/share/Oh wie schön ist Panama (Väter sprechen Janosch - Folge 1 Till Schweiger)", + "NAS/share/Otfried Preussler - Der kleine Wassermann CD1", + "NAS/share/Pettersson kriegt Weihnachtsbesuch", + "NAS/share/Pettersson und Findus - Eine Geburtstagstorte für die Katze und andere Geschichten", + "NAS/share/Pettersson und Findus - Neues von Pettersson und Findus (Hörspiel zum Kinofilm)", + "NAS/share/Pettersson und Findus - Pettersson zeltet", + "NAS/share/Pippi Langstrumpf - Soundtrack", + "NAS/share/Post für den Tiger (Väter sprechen Janosch - Folge 2 Günther Jauch)", + "NAS/share/Rabe Socke - Alles Gefunden", + "NAS/share/Rabe Socke - Alles Rabenstark!", + "NAS/share/Ritter Rost - Die Zauberinsel", + "NAS/share/Rolfs fröhlicher Familientag", + "NAS/share/Rolfs Vogelhochzeit", + "NAS/share/Rolf Zuckowski - Peter und der Wolf - Karneval der Tiere", + "NAS/share/Rolf Zuckowski - Singles", + "NAS/share/Rolf Zuckowski und seine Freunde - Ich schaff' das schon", + "NAS/share/Rolf Zuckowski und seine Freunde - Sommerkinder", + "NAS/share/Rolf Zuckowski und seine Freunde - Unsere schönsten Weihnachtslieder und Weihnachtsgedichte", + "NAS/share/Schön ist die Welt", + "NAS/share/Sergej Prokofiev - Peter Und Der Wolf", + "NAS/share/Sing mit mir Kinderlieder/Sing mit mir Kinderlieder", + "NAS/share/Sing mit mir Kinderlieder/Sing mit mir Kinderlieder 2", + "NAS/share/So schön ist die Weihnachtszeit", + "NAS/share/Weißt du, wie viel Sternlein stehen", + "NAS/share/Wiener Sängerknaben - Hänschen Klein - Lieder für Eltern und Kinder", + "NAS/share/Wir Kinder vom Kleistpark - #backstage", + "NAS/share/Wir Kinder vom Kleistpark - feiern Weihnachten", + "NAS/share/Wir Kinder vom Kleistpark - machen Musik", + "NAS/share/Wunderbar, der Herbst ist da", + /*"/INTERNAL/Astrid Lindgren/Die Kinder aus der Krachmacherstraße", "/INTERNAL/Astrid Lindgren/Lotta kann Radfahren", "/INTERNAL/Astrid Lindgren/Lotta zieht um", "/INTERNAL/Astrid Lindgren/Michel bringt die Welt in Ordnung", @@ -461,7 +592,8 @@ public class CardCreator { "/INTERNAL/Die drei Fragezeichen Kids/07 - Gruft der Piraten", "/INTERNAL/Die drei Fragezeichen Kids/08 - Nacht unter Wölfen", "/INTERNAL/Die drei Fragezeichen Kids/09 - SOS über den Wolken", - "/INTERNAL/Die drei Fragezeichen Kids/10 - Spuk in Rocky Beach" + "/INTERNAL/Die drei Fragezeichen Kids/10 - Spuk in Rocky Beach",*/ + "https://upload.wikimedia.org/wikipedia/commons/thumb/4/4b/Radio_Teddy_Logo.svg/1200px-Radio_Teddy_Logo.svg.png|http://streamtdy.ir-media-tec.com/live/mp3-128/web/play.mp3" ); new CardCreator(links);