diff --git a/java/exec.sound/.gitignore b/java/exec.sound/.gitignore deleted file mode 100644 index a4bf388..0000000 --- a/java/exec.sound/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -/bin -/.settings -/sound diff --git a/java/exec.sound/build.gradle b/java/exec.sound/build.gradle deleted file mode 100644 index 9ff5a28..0000000 --- a/java/exec.sound/build.gradle +++ /dev/null @@ -1,14 +0,0 @@ -dependencies { - compile project(':core.worker') - - compile 'com.github.boukefalos:jlibpipe:0.1' - - compile 'commons-io:commons-io:2.+' - compile 'commons-cli:commons-cli:1.+' - compile 'commons-pool:commons-pool:1.+' - compile 'org.slf4j:slf4j-api:1.+' - compile 'org.slf4j:slf4j-log4j12:1.7.5' - compile 'org.ostermiller:utils:1.+' - compile 'com.googlecode.soundlibs:jlayer:1.+' - compile 'net.sf.javamusictag:jid3lib:0.+' -} \ No newline at end of file diff --git a/java/exec.sound/gradle/wrapper/gradle-wrapper.jar b/java/exec.sound/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index d3b8398..0000000 Binary files a/java/exec.sound/gradle/wrapper/gradle-wrapper.jar and /dev/null differ diff --git a/java/exec.sound/gradle/wrapper/gradle-wrapper.properties b/java/exec.sound/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index 129a033..0000000 --- a/java/exec.sound/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,6 +0,0 @@ -#Mon Jul 11 23:15:35 BST 2016 -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.14-bin.zip diff --git a/java/exec.sound/gradlew b/java/exec.sound/gradlew deleted file mode 100644 index 27309d9..0000000 --- a/java/exec.sound/gradlew +++ /dev/null @@ -1,164 +0,0 @@ -#!/usr/bin/env bash - -############################################################################## -## -## Gradle start up script for UN*X -## -############################################################################## - -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null - -APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" - -warn ( ) { - echo "$*" -} - -die ( ) { - echo - echo "$*" - echo - exit 1 -} - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -nonstop=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MINGW* ) - msys=true - ;; - NONSTOP* ) - nonstop=true - ;; -esac - -CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD="java" - which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." -fi - -# Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi -fi - -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi - -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - JAVACMD=`cygpath --unix "$JAVACMD"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi - # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" - fi - i=$((i+1)) - done - case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; - esac -fi - -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") -} -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" - -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/java/exec.sound/gradlew.bat b/java/exec.sound/gradlew.bat deleted file mode 100644 index f6d5974..0000000 --- a/java/exec.sound/gradlew.bat +++ /dev/null @@ -1,90 +0,0 @@ -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto init - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:init -@rem Get command-line arguments, handling Windows variants - -if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega diff --git a/java/exec.sound/src/main/java/old/Converter.java b/java/exec.sound/src/main/java/old/Converter.java deleted file mode 100644 index 5cca267..0000000 --- a/java/exec.sound/src/main/java/old/Converter.java +++ /dev/null @@ -1,203 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package old; - -import java.io.BufferedInputStream; -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; - -import javazoom.jl.decoder.Bitstream; -import javazoom.jl.decoder.BitstreamException; -import sound.util.Utils; -import base.exception.worker.ActivateException; -import base.exception.worker.DeactivateException; -import base.work.Work; - -import com.Ostermiller.util.CircularByteBuffer; - -public class Converter extends Work { - public static final String COMMAND = "lame --mp3input --cbr %s - - --quiet"; - public static final int BYTES = 4096; // bytes - public static final int BUFFER = 30000; // milliseconds - public static final int BUFFERING = 1000; // milliseconds - - protected int targetRate; - protected int rate; - protected int buffer; - protected boolean convert; - - protected Process process; - protected InputStream sourceInputStream, processInputStream, inputStream; - protected OutputStream processOutputStream; - protected CircularByteBuffer circularByteBuffer; - protected BufferWorker bufferWorker; - - public Converter(InputStream inputStream) { - this(inputStream, -1); - } - - public Converter(InputStream inputStream, int targetRate) { - super(); - this.sourceInputStream = inputStream; - this.targetRate = targetRate; - bufferWorker = new BufferWorker(); - convert = false; - } - - public void exit() { - super.exit(); - bufferWorker.exit(); - } - - public synchronized void activate() throws ActivateException { - /* Read bitrate */ - BufferedInputStream bufferedInputStream = new BufferedInputStream(sourceInputStream); - Bitstream bitStream = new Bitstream(bufferedInputStream); - try { - rate = bitStream.readFrame().bitrate() / 1000; - buffer = BUFFER * rate / 8; - } catch (BitstreamException e) { - logger.error("", e); - throw new ActivateException(); - } - - /* Check for need to convert */ - if (targetRate < 0 || rate == targetRate) { - logger.debug("No conversion required"); - inputStream = sourceInputStream; - } else { - logger.debug("Converting from " + rate + "kbps to " + targetRate + "kbps"); - try { - String command = String.format(COMMAND, rate > targetRate ? "-B " + targetRate : "-F -b " + targetRate); - logger.debug("Starting process: " + command); - process = Runtime.getRuntime().exec(command); - processInputStream = process.getInputStream(); - processOutputStream = process.getOutputStream(); - - /* Buffer output */ - circularByteBuffer = new CircularByteBuffer(CircularByteBuffer.INFINITE_SIZE); - inputStream = circularByteBuffer.getInputStream(); - bufferWorker.start(); - convert = true; - } catch (IOException e) { - logger.error("", e); - throw new ActivateException(); - } - } - super.activate(); - notifyAll(); - } - - public void deactivate() throws DeactivateException { - super.deactivate(); - try { - sourceInputStream.close(); - bufferWorker.stop(); - if (convert) { - circularByteBuffer.clear(); - convert = false; - } - inputStream.close(); - } catch (IOException e) { - logger.error("", e); - throw new DeactivateException(); - } - } - - public void work() { - if (!convert) { - try { - synchronized (this) { - wait(); - } - } catch (InterruptedException e) { - logger.error("", e); - } - return; - } - byte[] bytes = new byte[BYTES]; - int read = 0; - try { - logger.debug("Writing input to process"); - // Should be interrupted by stop()/exit() - while ((read = sourceInputStream.read(bytes)) > 0) { - /* Limit buffer size */ - while (inputStream.available() > buffer) { - int progress = (int) ((1 - (inputStream.available() - buffer) / (float) buffer) * 100); - logger.trace("Waiting for buffer to empty: " + progress + "%"); - sleep(BUFFERING); - } - processOutputStream.write(bytes, 0, read); - } - processOutputStream.close(); - logger.debug("Stopped writing input to process"); - process.waitFor(); - logger.debug("Process finished"); - } catch (IOException e) { - } catch (InterruptedException e) { - logger.error("", e); - } - stop(); - } - - public synchronized InputStream getInputStream() { - if (!active()) { - start(); - try { - wait(); - } catch (InterruptedException e) { - logger.error("", e); - } - } - return inputStream; - } - - public synchronized void setInputStream(InputStream inputStream) { - this.inputStream = inputStream; - } - - class BufferWorker extends Work { - public void work() { - byte[] bytes = new byte[BYTES]; - int read = 0; - try { - OutputStream bufferOutputStream = circularByteBuffer.getOutputStream(); - logger.debug("Start buffering process output"); - while ((read = processInputStream.read(bytes, 0, BYTES)) > 0) { - bufferOutputStream.write(bytes, 0, read); - } - logger.debug("Finished buffering process output"); - bufferOutputStream.close(); - } catch (IOException e) {} - stop(); - } - } - - public static void main(String[] args) { - Mp3 mp3 = new Mp3(new File("stream.mp3"), 128); - InputStream inputStream = mp3.getInputStream(); - - /* Play */ - //Utils.play(inputStream); - - /* Write to file */ - Utils.write(inputStream, new File("output.mp3")); - mp3.exit(); - } -} diff --git a/java/exec.sound/src/main/java/old/List.java b/java/exec.sound/src/main/java/old/List.java deleted file mode 100644 index cf681a8..0000000 --- a/java/exec.sound/src/main/java/old/List.java +++ /dev/null @@ -1,217 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package old; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.util.ArrayList; -import java.util.Scanner; - -import sound.consumer.Shoutcast; -import base.exception.worker.ActivateException; -import base.work.Work; - -import com.Ostermiller.util.BufferOverflowException; -import com.Ostermiller.util.CircularByteBuffer; -import com.Ostermiller.util.CircularObjectBuffer; - -public class List extends Work { - public static final int STEP = 80; // milliseconds - public static final int RATE = 192; // kbps - public static final int OVERLAP = 20000; // milliseconds - - protected File file; - protected String[] fileArray; - - protected int rate; - protected int chunk; - protected int overlap; - protected byte[] bytes; - protected boolean next; - protected Mp3 mp3, nextMp3; - - protected InputStream mp3InputStream; - protected OutputStream audioOutputStream; - protected CircularByteBuffer circularByteBuffer; - protected CircularObjectBuffer circularStringBuffer; - - public List(File file) { - this(file, RATE); - } - - public List(File file, int rate) { - this.file = file; - this.rate = rate; - chunk = STEP * rate / 8; - overlap = OVERLAP * RATE / 8; - bytes = new byte[chunk]; - next = true; - } - - public void exit() { - super.exit(); - if (mp3 != null) { - mp3.exit(); - } - if (nextMp3 != null) { - nextMp3.exit(); - } - } - - public synchronized void activate() throws ActivateException { - try { - Scanner scanner = new Scanner(file); - ArrayList fileList = new ArrayList(); - while (scanner.hasNextLine()) { - fileList.add(scanner.nextLine()); - } - scanner.close(); - if (fileList.size() > 0) { - fileArray = fileList.toArray(new String[0]); - - circularByteBuffer = new CircularByteBuffer(CircularByteBuffer.INFINITE_SIZE); - audioOutputStream = circularByteBuffer.getOutputStream(); - - circularStringBuffer = new CircularObjectBuffer(CircularByteBuffer.INFINITE_SIZE); - setNext(); - super.activate(); - notifyAll(); - return; - } - } catch (FileNotFoundException e) { - logger.error("", e); - } - throw new ActivateException(); - } - - public synchronized void work() { - try { - int left = chunk; - while (left > 0) { - /* Check for need to load next mp3 */ - int available = mp3InputStream == null ? -1 : mp3InputStream.available(); - boolean expect = mp3 == null ? false : mp3.active(); - - /* Act when no more data is expected */ - if (!expect) { - if (available < overlap) { - setNext(); - next = false; - nextMp3.start(); - } - if (available < 1) { - swap(); - } - } - - /* Transfer data */ - int read = mp3InputStream.read(bytes, 0, left); - left -= read; - audioOutputStream.write(bytes, 0, read); - } - } catch (IOException e) { - /* Swap to next if stream has stopped */ - setNext(); - swap(); - } catch (IllegalStateException e) { - logger.error("", e); - } - sleep(STEP); - } - - protected File getRandomFile() { - return new File(fileArray[(int) (Math.random() * fileArray.length)]); - } - - public synchronized void setNext() { - if (nextMp3 == null) { - logger.debug("Initialize next mp3"); - nextMp3 = new Mp3(getRandomFile(), rate); - } else if (next) { - logger.debug("Load next mp3"); - nextMp3.setFile(getRandomFile()); - } - } - - public synchronized void next() { - logger.debug("Stop current mp3"); - mp3.stop(); - } - - public void swap() { - logger.debug("Swap to next mp3"); - Mp3 swapMp3 = mp3; - mp3 = nextMp3; - nextMp3 = swapMp3; - next = true; - - /* Swap stream and announce title */ - mp3InputStream = mp3.getInputStream(); - try { - circularStringBuffer.write(mp3.getTitle()); - } catch (BufferOverflowException e) { - logger.error("", e); - } catch (IllegalStateException e) { - logger.error("", e); - } catch (InterruptedException e) { - logger.error("", e); - } - } - - public synchronized InputStream getInputStream() { - if (circularByteBuffer == null) { - start(); - try { - wait(); - } catch (InterruptedException e) { - logger.error("", e); - } - } - return circularByteBuffer.getInputStream(); - } - - public synchronized CircularObjectBuffer getMetaBuffer() { - if (circularStringBuffer == null) { - start(); - try { - wait(); - } catch (InterruptedException e) { - logger.error("", e); - } - } - return circularStringBuffer; - } - - public static void main(String[] args) throws Exception { - int rate = 192; - List list = new List(new File(List.class.getClassLoader().getResource("txt/mp3").toURI()), rate); - Shoutcast shoutcast = new Shoutcast(rate, 9876); - - shoutcast.setInputStream(list.getInputStream()); - shoutcast.setMetaBuffer(list.getMetaBuffer()); - shoutcast.start(); - while (true) { - try { - Thread.sleep(15000); - list.next(); - } catch (InterruptedException e) {} - } - } -} diff --git a/java/exec.sound/src/main/java/old/Mp3.java b/java/exec.sound/src/main/java/old/Mp3.java deleted file mode 100644 index ca36d33..0000000 --- a/java/exec.sound/src/main/java/old/Mp3.java +++ /dev/null @@ -1,96 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package old; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; - -import org.farng.mp3.MP3File; -import org.farng.mp3.TagException; - -import sound.util.Utils; -import base.exception.worker.ActivateException; - -public class Mp3 extends Converter { - protected File file; - protected String title; - - public Mp3(File file) { - this(file, -1); - } - - public Mp3(File file, int targetRate) { - super(null, targetRate); - setFile(file); - title = ""; - } - - public synchronized void activate() throws ActivateException { - /* Open file */ - try { - sourceInputStream = new FileInputStream(file); - } catch (FileNotFoundException e) { - logger.error("", e); - throw new ActivateException(); - } - - /* Read ID3V2 tags */ - try { - MP3File mp3File = new MP3File(file); - String album = clean(mp3File.getID3v2Tag().getAlbumTitle()); - String artist = clean(mp3File.getID3v2Tag().getLeadArtist()); - String track = clean(mp3File.getID3v2Tag().getSongTitle()); - if (album.isEmpty()) { - title = String.format("%s - %s", artist, track, album); - } else { - title = String.format("%s - %s {%s}", artist, track, album); - } - logger.debug("Title: " + title); - } catch (IOException e) { - logger.error("", e); - } catch (TagException e) { - logger.error("", e); - } - try { - sourceInputStream.skip(100000); - } catch (IOException e) {} - super.activate(); - } - - protected String clean(String input) { - String output = input.replace("\0", ""); - return output.replace("ÿþ", ""); - } - - public String getTitle() { - return title; - } - - public void setFile(File file) { - this.file = file; - } - - public static void main(String[] args) { - final Mp3 mp3 = new Mp3(new File("input.mp3"), 128); - Utils.write(mp3.getInputStream(), new File("one.mp3")); - mp3.setFile(new File("stream.mp3")); - Utils.write(mp3.getInputStream(), new File("two.mp3")); - mp3.exit(); - } -} diff --git a/java/exec.sound/src/main/java/old/Transducer.java b/java/exec.sound/src/main/java/old/Transducer.java deleted file mode 100644 index 448d489..0000000 --- a/java/exec.sound/src/main/java/old/Transducer.java +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package old; - -import sound.Consumer; -import sound.Producer; - -public abstract class Transducer implements Consumer, Producer { - public int rate; - - public Transducer(Producer producer) { - //setProducer(producer); - } - - public int getRate() { - return rate; - } -} diff --git a/java/exec.sound/src/main/java/pipe/Client.java b/java/exec.sound/src/main/java/pipe/Client.java deleted file mode 100644 index 3257f2b..0000000 --- a/java/exec.sound/src/main/java/pipe/Client.java +++ /dev/null @@ -1,40 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package pipe; - -import java.io.RandomAccessFile; - -public class Client { - public static void main(String[] args) { - try { - // Connect to the pipe - RandomAccessFile pipe = new RandomAccessFile("\\\\.\\pipe\\detest", "rw"); - String echoText = "Hello word\n"; - - // write to pipe - pipe.write(echoText.getBytes()); - - // read response - String echoResponse = pipe.readLine(); - System.out.println(echoResponse); - pipe.close(); - } catch (Exception e) { - e.printStackTrace(); - } - - } -} diff --git a/java/exec.sound/src/main/java/pipe/Pipe.java b/java/exec.sound/src/main/java/pipe/Pipe.java deleted file mode 100644 index f734658..0000000 --- a/java/exec.sound/src/main/java/pipe/Pipe.java +++ /dev/null @@ -1,72 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package pipe; - -import com.github.boukefalos.jlibloader.Native; - -/** - * @author Vikram S Khatri vikram.khatri@us.ibm.com - */ -public class Pipe { - static final int ERROR_PIPE_CONNECTED = 535; - static final int ERROR_BROKEN_PIPE = 109; - static final int PIPE_ACCESS_DUPLEX = 0x00000003; - static final int PIPE_WAIT = 0x00000000; - - static { - Native.load("com.github.boukefalos", "jlibpipe"); - } - - public static final native int CreateNamedPipe( - String pipeName, - int ppenMode, - int pipeMode, - int maxInstances, - int outBufferSize, - int inBufferSize, - int defaultTimeOut, - int securityAttributes); - - public static final native boolean ConnectNamedPipe(int namedPipeHandle, int overlapped); - - public static final native int GetLastError(); - - public static final native boolean CloseHandle(int bbject); - - public static final native byte[] ReadFile(int file, int numberOfBytesToRead); - - public static final native int WriteFile(int file, byte[] buffer, int numberOfBytesToWrite); - - public static final native boolean FlushFileBuffers(int file); - - public static final native boolean DisconnectNamedPipe(int namedPipeHandle); - - public static final native int CreateFile( - String fileName, - int desiredAccess, - int shareMode, - int securityAttributes, - int creationDisposition, - int flagsAndAttributes, - int templateFile); - - public static final native boolean WaitNamedPipe(String namedPipeName, int timeOut); - - public static final native String FormatMessage(int errorCode); - - public static final native void Print(String message); -} diff --git a/java/exec.sound/src/main/java/pipe/TestPipe.java b/java/exec.sound/src/main/java/pipe/TestPipe.java deleted file mode 100644 index f70801a..0000000 --- a/java/exec.sound/src/main/java/pipe/TestPipe.java +++ /dev/null @@ -1,103 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package pipe; - -import java.io.File; -import java.io.FileInputStream; -import java.io.InputStream; - -public class TestPipe { - - private int namedPipeHandle; - private String pipeName, srcFile; - private int pipeBuffer = 131072, fileBuffer = 8192; - - public TestPipe(String pipeName, String srcFile) { - this.pipeName = pipeName; - this.srcFile = srcFile; - } - - private void log(String message) { - System.out.println(message); - } - - private boolean createPipe() { - namedPipeHandle = Pipe.CreateNamedPipe( - pipeName, - Pipe.PIPE_ACCESS_DUPLEX, - Pipe.PIPE_WAIT, - 5, - pipeBuffer, - pipeBuffer, - 0xffffffff, - 0); - if (namedPipeHandle == -1) { - log("CreateNamedPipe failed for " + pipeName + " for error Message " + Pipe.FormatMessage(Pipe.GetLastError())); - } else { - log("Named Pipe " + pipeName + " created successfully Handle=" + namedPipeHandle); - } - return namedPipeHandle != -1; - } - - private boolean connectToPipe() { - log("Waiting for a client to connect to pipe " + pipeName); - boolean connected = Pipe.ConnectNamedPipe(namedPipeHandle, 0); - if (!connected) { - int lastError = Pipe.GetLastError(); - if (lastError == Pipe.ERROR_PIPE_CONNECTED) - connected = true; - } - log((connected ? "Connected to the pipe " : "Falied to connect to the pipe ") + pipeName); - return connected; - } - - public void runPipe() { - if (createPipe() && connectToPipe()) { - log("Client connected."); - try { - File f1 = new File(this.srcFile); - InputStream in = new FileInputStream(f1); - log("Sending data to the pipe"); - byte[] buf = new byte[fileBuffer]; - int len, bytesWritten; - while ((len = in.read(buf)) > 0) { - bytesWritten = Pipe.WriteFile(namedPipeHandle, buf, len); - log("Sent " + len + "/" + bytesWritten + " bytes to the pipe"); - if (bytesWritten == -1) { - int errorNumber = Pipe.GetLastError(); - log("Error Writing to pipe " + Pipe.FormatMessage(errorNumber)); - } - } - in.close(); - Pipe.FlushFileBuffers(namedPipeHandle); - Pipe.CloseHandle(namedPipeHandle); - Pipe.DisconnectNamedPipe(namedPipeHandle); - log("Writing to the pipe completed."); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - - public static void main(String[] args) { - String pipeName = "\\\\.\\pipe\\detest"; - String fileName = "txt/mp3"; - fileName = "C:\\Users\\Rik\\Music\\Artists\\+44\\When Your Heart Stops Beating\\+44 - 155.mp3"; - TestPipe testPipe = new TestPipe(pipeName, fileName); - testPipe.runPipe(); - } -} diff --git a/java/exec.sound/src/main/java/sound/Consumer.java b/java/exec.sound/src/main/java/sound/Consumer.java deleted file mode 100644 index 3c30949..0000000 --- a/java/exec.sound/src/main/java/sound/Consumer.java +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound; - -public interface Consumer { - public void start(Producer producer); - public void stop(); - public void exit(); -} diff --git a/java/exec.sound/src/main/java/sound/Format.java b/java/exec.sound/src/main/java/sound/Format.java deleted file mode 100644 index 6adfe02..0000000 --- a/java/exec.sound/src/main/java/sound/Format.java +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound; - -import javax.sound.sampled.AudioFormat; - -public interface Format extends Cloneable { - public interface Standard extends Format { - public AudioFormat getAudioFormat(); - } - - public interface Mp3 extends Format { - public int getRate(); - } -} \ No newline at end of file diff --git a/java/exec.sound/src/main/java/sound/Producer.java b/java/exec.sound/src/main/java/sound/Producer.java deleted file mode 100644 index 77573f8..0000000 --- a/java/exec.sound/src/main/java/sound/Producer.java +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound; - -import java.io.InputStream; - -public interface Producer extends Format { - public InputStream getInputStream(); - public void start(); - public void stop(); - public void exit(); -} \ No newline at end of file diff --git a/java/exec.sound/src/main/java/sound/Source.java b/java/exec.sound/src/main/java/sound/Source.java deleted file mode 100644 index f4af09c..0000000 --- a/java/exec.sound/src/main/java/sound/Source.java +++ /dev/null @@ -1,177 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound; - -import java.io.IOException; -import java.io.InputStream; - -import javax.sound.sampled.AudioFormat; -import javax.sound.sampled.LineUnavailableException; -import javax.sound.sampled.SourceDataLine; - -import javazoom.jl.decoder.JavaLayerException; -import javazoom.jl.player.Player; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import sound.util.Tool; -import base.exception.worker.ActivateException; -import base.exception.worker.DeactivateException; -import base.work.Work; - -public class Source implements Consumer { - protected Logger logger = LoggerFactory.getLogger(getClass()); - - protected static final int BUFFER_SIZE = 1024 * 4; // in bytes - protected static final int FRAMES = 10; // count - - protected String name; - protected Producer producer; - protected InputStream producerInputStream; - protected Work work; - - public Source(String name) throws LineUnavailableException { - this.name = name; - } - - public void start() { - if (work != null) { - work.start(); - } - } - - public void start(Producer producer) { - this.producer = producer; - producerInputStream = producer.getInputStream(); - if (work != null) { - work.exit(); - } - if (producer instanceof Format.Standard) { - logger.debug("Format.Standard"); - work = new DefaultWorker((Format.Standard) producer); - } else if (producer instanceof Format.Mp3) { - logger.debug("Format.Mp3"); - work = new Mp3Worker((Format.Mp3) producer); - } - start(); - } - - public void stop() { - if (work != null) { - work.stop(); - } - } - - public void exit() { - if (work != null) { - work.exit(); - } - } - - protected class DefaultWorker extends Work { - protected Format.Standard format; - protected SourceDataLine line; - - public DefaultWorker(Format.Standard format) { - this.format = format; - } - - public void activate() throws ActivateException { - AudioFormat audioFormat = format.getAudioFormat(); - try { - if (line == null) { - line = Tool.getSourceDataLine(name, audioFormat); - } - if (!line.isOpen()) { - line.open(); - } - } catch (LineUnavailableException e) { - logger.error("", e); - throw new ActivateException(); - } - if (!line.isRunning()) { - line.start(); - } - super.activate(); - } - - public void deactivate() throws DeactivateException { - super.deactivate(); - line.flush(); - } - - public void exit() { - super.exit(); - line.close(); - } - - public void work() { - try { - byte[] buffer = new byte[BUFFER_SIZE]; - int read = producerInputStream.read(buffer, 0, buffer.length); - if (read > 0) { - line.write(buffer, 0, read); - } else { - exit(); - } - } catch (IOException e) { - logger.error("", e); - exit(); - } - } - } - - protected class Mp3Worker extends Work { - protected Format.Mp3 format; - protected Player player; - - public Mp3Worker(Format.Mp3 format) { - this.format = format; - } - - public void activate() throws ActivateException { - producer.start(); - super.activate(); - } - - public void deactivate() throws DeactivateException { - super.deactivate(); - producer.stop(); - } - - public void exit() { - super.exit(); - player.close(); - } - - public void work() { - try { - if (player == null) { - player = new Player(producerInputStream); - sleep(100); - } - player.play(FRAMES); - } catch (JavaLayerException e) { - logger.error("", e); - } - if (player.isComplete()) { - stop(); - } - } - } -} diff --git a/java/exec.sound/src/main/java/sound/consumer/Port.java b/java/exec.sound/src/main/java/sound/consumer/Port.java deleted file mode 100644 index 8acbe7d..0000000 --- a/java/exec.sound/src/main/java/sound/consumer/Port.java +++ /dev/null @@ -1,137 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.consumer; - -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; - -import javax.sound.sampled.AudioFormat; - -import sound.Consumer; -import sound.Format; -import sound.Format.Standard; -import sound.Producer; -import sound.util.SoxBuilder; -import sound.util.SoxBuilder.File; -import sound.util.SoxBuilder.File.Type; -import sound.util.SoxBuilder.Option; -import base.exception.worker.ActivateException; -import base.exception.worker.DeactivateException; -import base.work.Work; - -public class Port extends Work implements Consumer { - protected static final int BUFFER_SIZE = 1024 * 4; // in bytes - - protected String device; - protected Producer producer; - protected Process process; - protected InputStream producerInputStream; - protected OutputStream processOutputStream; - protected ProcessBuilder processBuilder; - - public Port() { - this("0"); - } - - public Port(String device) { - this.device = device; - } - - public void start(Producer producer) { - start(producer); - } - - @SuppressWarnings("static-access") - public void start(Producer producer, boolean thread) { - this.producer = producer; - producerInputStream = producer.getInputStream(); - - String command = ""; - if (producer instanceof Standard) { - AudioFormat audioFormat = ((Standard) producer).getAudioFormat(); - SoxBuilder.addFile(File.setType(Type.STANDARD).setOptions(audioFormat)); - } else if (producer instanceof Format.Mp3) { - SoxBuilder.addFile(File.setType(Type.STANDARD).setOption(File.Format.MP3)); - } - command = SoxBuilder - .setOption(Option.QUIET) - .addFile(File.setType(Type.DEVICE)) - .build(); - - logger.debug(String.format("Build process (\"%s\")", command)); - processBuilder = new ProcessBuilder(command.split(" ")); - processBuilder.environment().put("AUDIODEV", device); - - start(); - } - - public void activate() throws ActivateException { - producer.start(); - if (process == null) { - try { - process = processBuilder.start(); - } catch (IOException e) { - logger.error("", e); - throw new ActivateException(); - } - processOutputStream = process.getOutputStream(); - } - super.activate(); - } - - public void deactivate() throws DeactivateException { - super.deactivate(); - try { - processOutputStream.flush(); - } catch (IOException e) { - logger.error("", e); - throw new DeactivateException(); - } - } - - public void exit() { - try { - logger.debug("close process output stream"); - processOutputStream.close(); - - logger.debug("wait for process to terminate"); - process.waitFor(); - } catch (IOException e) { - logger.error("", e); - } catch (InterruptedException e) { - logger.error("", e); - } finally { - process = null; - } - } - - public void work() { - try { - byte[] buffer = new byte[BUFFER_SIZE]; - int read = producerInputStream.read(buffer, 0, buffer.length); - if (read > 0) { - processOutputStream.write(buffer, 0, read); - } else { - exit(); - } - } catch (IOException e) { - logger.error("", e); - exit(); - } - } -} diff --git a/java/exec.sound/src/main/java/sound/consumer/Shoutcast.java b/java/exec.sound/src/main/java/sound/consumer/Shoutcast.java deleted file mode 100644 index 4864c51..0000000 --- a/java/exec.sound/src/main/java/sound/consumer/Shoutcast.java +++ /dev/null @@ -1,312 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.consumer; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStream; -import java.io.OutputStreamWriter; -import java.net.ServerSocket; -import java.net.Socket; -import java.net.SocketException; -import java.util.HashMap; -import java.util.Map.Entry; -import java.util.concurrent.ConcurrentLinkedQueue; - -import sound.Consumer; -import sound.Producer; -import sound.data.Data; -import sound.util.Buffer; -import base.exception.worker.ActivateException; -import base.exception.worker.DeactivateException; -import base.work.Listen; -import base.work.Work; - -import com.Ostermiller.util.CircularObjectBuffer; - -public class Shoutcast extends Work implements Consumer { - public static final int PORT = 9876; - public static final int RATE = 192; // in kbps - public static final int META = 8192; // in bytes - public static final int STEP = 80; // in milliseconds - public static final int BUFFER = 2000; // in bytes - public static final int BUFFERING = 500; // in milliseconds - public static final String DATA = "StreamTitle='%s';StreamUrl='%s';"; - protected int rate; - protected int port; - protected Server server; - protected HashMap headerMap; - protected ConcurrentLinkedQueue clientList; - protected InputStream producerInputStream; - protected int chunk; - protected Buffer buffer; - protected byte[] bytes; - protected Data data; - protected String metaData; - private CircularObjectBuffer circularStringBuffer; - - public Shoutcast() { - this(RATE, PORT); - } - - public Shoutcast(int rate) { - this(rate, PORT); - } - - public Shoutcast(int rate, int port) { - this.rate = rate; - this.port = port; - clientList = new ConcurrentLinkedQueue(); - metaData = ""; - - chunk = STEP * rate / 8; - bytes = new byte[chunk]; - buffer = new Buffer(BUFFER * rate / 8); - - headerMap = new HashMap(); - headerMap.put("icy-notice1", "This stream requires Winamp"); - headerMap.put("icy-notice2", "Java SHOUTcast Server"); - headerMap.put("icy-name", "Java Radio"); - headerMap.put("icy-genre", "Java"); - headerMap.put("icy-url", "http://localhost"); - headerMap.put("content-type:", "audio/mpeg"); - headerMap.put("icy-pub", "0"); - headerMap.put("icy-metaint", String.valueOf(META)); - headerMap.put("icy-br", String.valueOf(rate)); - } - - public void activate() throws ActivateException { - logger.trace("Activate Server"); - server = new Server(port); - server.start(); - super.activate(); - } - - public boolean active() { - return server.active(); - } - - public void deactivate() throws DeactivateException { - super.deactivate(); - server.stop(); - } - - public void work() { - int progress; - try { - int read = 0; - if (producerInputStream != null) { - while (producerInputStream.available() < buffer.capacity) { - progress = (int) (producerInputStream.available() / (buffer.capacity / 100.0F)); - logger.debug("Filling buffer: " + progress + "%"); - sleep(BUFFERING); - } - read = producerInputStream.read(bytes); - } - data = new Data(bytes, read); - buffer.write(bytes, 0, read); - } catch (IOException e) { - logger.error(e.getMessage()); - } - - for (Client client : clientList) { - if (client.active) { - client.add(data); - } - } - sleep(STEP); - } - - public void setMetaBuffer(CircularObjectBuffer circularStringBuffer) { - logger.debug("Set meta input stream"); - this.circularStringBuffer = circularStringBuffer; - } - - public void setMeta(String meta) { - logger.debug("Set meta string: " + meta); - metaData = meta; - } - - protected class Client extends Listen { - protected Socket socket; - protected InputStream inputStream; - protected OutputStream outputStream; - protected boolean writeMeta; - protected int untilMeta; - protected boolean active; - - public Client(Socket socket) throws IOException { - this.socket = socket; - inputStream = socket.getInputStream(); - outputStream = socket.getOutputStream(); - active = false; - clientList.add(this); - } - - public void activate() throws ActivateException { - BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream)); - try { - String line; - while ((line = bufferedReader.readLine()) != null) { - if (line.startsWith("Icy-MetaData")) { - writeMeta = Integer.valueOf(line.substring(line.indexOf(":") + 1).trim()).intValue() == 1; - untilMeta = META; - } else if (line.equals("")) { - break; - } - } - logger.debug(String.format("Client accept meta: %s", Boolean.valueOf(writeMeta))); - - OutputStreamWriter outputStreamWriter = new OutputStreamWriter(outputStream); - outputStreamWriter.write("ICY 200 OK\r\n"); - for (Entry header : headerMap.entrySet()) { - outputStreamWriter.write(String.format("%s: %s\r\n", header.getKey(), header.getValue())); - } - outputStreamWriter.write("\r\n"); - outputStreamWriter.flush(); - - add(new Data(buffer.get())); - active = true; - } catch (IOException e) { - logger.error(e.getMessage()); - throw new ActivateException(); - } - super.activate(); - } - - public void exit() { - logger.debug("Client exit"); - super.exit(); - clientList.remove(this); - try { - inputStream.close(); - outputStream.close(); - socket.close(); - } catch (IOException e) { - logger.error(e.getMessage()); - } - } - - public void input(Data data) { - try { - byte[] bytes = data.get(); - if (writeMeta) { - int offset = 0; - while (data.length() - offset >= untilMeta) { - outputStream.write(bytes, offset, untilMeta); - writeMeta(); - offset += untilMeta; - untilMeta = META; - } - int length = data.length() - offset; - outputStream.write(bytes, offset, length); - untilMeta -= length; - } else { - outputStream.write(bytes); - } - } catch (SocketException e) { - exit(); - } catch (IOException e) { - exit(); - } - } - - protected void writeMeta() throws IOException { - if ((circularStringBuffer != null) - && (circularStringBuffer.getAvailable() > 0)) { - try { - String newMetaData = circularStringBuffer.read(); - if (!newMetaData.isEmpty() && !newMetaData.equals(metaData)) { - metaData = newMetaData; - } - } catch (InterruptedException e) { - logger.error(e.getMessage()); - } - } - - String meta = String.format("StreamTitle='%s';StreamUrl='%s';", metaData, "???"); - byte[] metaBytes = meta.getBytes(); - - int length = (int) Math.ceil(metaBytes.length / 16.0F); - outputStream.write(length); - outputStream.write(metaBytes); - - int padding = 16 * length - metaBytes.length; - outputStream.write(new byte[padding], 0, padding); - } - } - - protected class Server extends Work { - protected int port; - protected ServerSocket serverSocket; - - public Server(int port) { - this.port = port; - } - - public boolean active() { - return serverSocket.isClosed() ? false : true; - } - - public void activate() throws ActivateException { - try { - serverSocket = new ServerSocket(port); - logger.debug("Server listening at port " + port); - } catch (IOException e) { - logger.error("", e); - throw new ActivateException(); - } - super.activate(); - } - - public void work() { - try { - Socket socket = serverSocket.accept(); - logger.trace("Client connected: " + socket.getInetAddress().toString()); - Shoutcast.Client client = new Shoutcast.Client(socket); - client.start(); - } catch (IOException e) { - logger.error(e.getMessage()); - } - } - - public void deactivate() throws DeactivateException { - logger.debug("Server deactivate"); - super.deactivate(); - try { - serverSocket.close(); - } catch (IOException e) { - logger.error(e.getMessage()); - } - for (Shoutcast.Client client : clientList) { - client.stop(); - } - } - } - - public void start(Producer producer) { - producerInputStream = producer.getInputStream(); - producer.start(); - super.start(); - } - - public void setInputStream(InputStream inputStream) { - producerInputStream = inputStream; - } -} diff --git a/java/exec.sound/src/main/java/sound/data/Data.java b/java/exec.sound/src/main/java/sound/data/Data.java deleted file mode 100644 index 3e02d9c..0000000 --- a/java/exec.sound/src/main/java/sound/data/Data.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.data; - -public class Data { - protected byte[] bytes; - protected int length; - - public Data(byte[] bytes) { - this(bytes, bytes.length); - } - - public Data(byte[] bytes, int length) { - this.bytes = bytes; - this.length = length; - } - - public byte[] get() { - return this.bytes; - } - - public int length() { - return this.length; - } -} \ No newline at end of file diff --git a/java/exec.sound/src/main/java/sound/producer/Stream.java b/java/exec.sound/src/main/java/sound/producer/Stream.java deleted file mode 100644 index 66fd180..0000000 --- a/java/exec.sound/src/main/java/sound/producer/Stream.java +++ /dev/null @@ -1,216 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.producer; - -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStreamWriter; -import java.net.Socket; -import java.net.URL; - -import sound.Format; -import sound.Producer; -import sound.stream.HoardedInputStream; -import base.exception.worker.ActivateException; -import base.exception.worker.DeactivateException; -import base.work.Work; - -import com.Ostermiller.util.CircularByteBuffer; -import com.Ostermiller.util.CircularObjectBuffer; - -public class Stream extends Work implements Producer, Format.Mp3 { - public static final int STEP = 80; // in milliseconds - - protected String http; - protected Socket socket; - protected InputStream socketInputStream; - protected OutputStreamWriter socketOutputStreamWriter; - protected HoardedInputStream hoardedInputStream; - protected int meta; - protected int rate; - protected int chunk; - protected int untilMeta; - protected CircularByteBuffer audioCircularByteBuffer; - protected CircularObjectBuffer metaCircularObjectBuffer; - protected String metaData; - - public Stream(String http) { - super(); - this.http = http; - meta = -1; - rate = -1; - audioCircularByteBuffer = new CircularByteBuffer(CircularByteBuffer.INFINITE_SIZE); - metaCircularObjectBuffer = new CircularObjectBuffer(); - } - - protected void connect(URL url) { - try { - /* Open socket communication */ - socket = new Socket(url.getHost(), url.getPort()); - socketInputStream = socket.getInputStream(); - socketOutputStreamWriter = new OutputStreamWriter(socket.getOutputStream()); - - /* Write stream request */ - if (url.getFile().equals("")) { - socketOutputStreamWriter.write("GET / HTTP/1.1\r\n"); - } else { - socketOutputStreamWriter.write("GET " + url.getFile() + " HTTP/1.1\r\n"); - } - socketOutputStreamWriter.write("Host: " + url.getHost() + "\r\n"); - //socketOutputStreamWriter.write("Icy-MetaData: 1\r\n"); - socketOutputStreamWriter.write("Connection: close\r\n"); - socketOutputStreamWriter.write("\r\n"); - socketOutputStreamWriter.flush(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - public void activate() throws ActivateException { - try { - /* Initialize connection */ - URL url = new URL(http); - - /* Parse headers */ - connect(url); - InputStreamReader inputStreamReader = new InputStreamReader(socketInputStream); - StringBuffer stringBuffer = new StringBuffer(); - char character; - int skip = 0; - while ((character = (char) inputStreamReader.read()) > 0) { - ++skip; - if (character == '\n') { - /* Fetch relevant headers */ - String line = stringBuffer.toString().trim(); - if (line.startsWith("icy-metaint")) { - meta = Integer.valueOf(line.substring(line.indexOf(":") + 1).trim()); - } else if (line.startsWith("icy-br")) { - rate = Integer.valueOf(line.substring(line.indexOf(":") + 1).trim()); - } else if (line.equals("")) { - break; - } - stringBuffer = new StringBuffer(); - } else { - stringBuffer.append(character); - } - } - inputStreamReader.close(); - - /* Reconnect to bypass pre-buffering problems */ - connect(url); - socketInputStream = socket.getInputStream(); - socketInputStream.skip(skip); - } catch (IOException e) { - e.printStackTrace(); - } catch (NumberFormatException e) { - e.printStackTrace(); - } - - /* Calculate streaming parameters */ - //untilMeta = meta; - chunk = STEP * rate / 8; - super.activate(); - } - - public void deactivate() throws DeactivateException { - super.deactivate(); - audioCircularByteBuffer.clear(); - metaCircularObjectBuffer.clear(); - try { - hoardedInputStream.clear(); - } catch (IOException e) { - logger.error("", e); - throw new DeactivateException(); - } - } - - public void work() { - int left = chunk; - - /* Handle media at appropriate times * - while (meta > 0 && left >= untilMeta) { - stream(untilMeta); - left -= untilMeta; - meta(); - untilMeta = meta; - }*/ - - /* Stream at fixed rate */ - stream(left); - //untilMeta -= left; - sleep(STEP); - } - - protected void stream(int length) { - try { - byte[] bytes = new byte[length]; - int read = 0; - while (length > 0 && (read = socketInputStream.read(bytes)) > 0) { - length -= read; - audioCircularByteBuffer.getOutputStream().write(bytes); - } - } catch (IOException e) { - logger.error(e.getMessage()); - stop(); - } - } - - protected void meta() { - try { - /* Retrieve data length */ - byte[] data = new byte[1]; - socketInputStream.read(data); - - int length = 16 * data[0]; - data = new byte[length]; - socketInputStream.read(data); - - /* Check for new data */ - String newMetaData = new String(data); - if (!newMetaData.isEmpty() && !newMetaData.equals(metaData)) { - metaData = newMetaData; - metaCircularObjectBuffer.write(new String(data)); - logger.debug("data: " + metaData); - } - return; - } catch (IOException e) { - logger.error("", e); - } catch (IllegalStateException e) { - logger.error("", e); - } catch (InterruptedException e) { - logger.error("", e); - } - stop(); - return; - } - - public InputStream getInputStream() { - if (hoardedInputStream == null) { - hoardedInputStream = new HoardedInputStream(audioCircularByteBuffer.getInputStream()); - } - return hoardedInputStream; - } - - public CircularObjectBuffer getMetaBufferStream() { - return metaCircularObjectBuffer; - } - - public int getRate() { - return rate; - } -} diff --git a/java/exec.sound/src/main/java/sound/producer/Target.java b/java/exec.sound/src/main/java/sound/producer/Target.java deleted file mode 100644 index bdc6d79..0000000 --- a/java/exec.sound/src/main/java/sound/producer/Target.java +++ /dev/null @@ -1,113 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.producer; - -import java.io.IOException; -import java.io.InputStream; - -import javax.sound.sampled.AudioFormat; -import javax.sound.sampled.LineUnavailableException; -import javax.sound.sampled.TargetDataLine; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import sound.Format; -import sound.Producer; -import sound.stream.HoardedInputStream; -import sound.util.Tool; - -public class Target implements Producer, Format.Standard { - protected Logger logger = LoggerFactory.getLogger(getClass()); - - protected Standard format; - - protected TargetDataLine line; - protected InputStream targetInputStream; - protected HoardedInputStream hoardedInputStream; - - protected AudioFormat audioFormat; - - public Target(String name) throws LineUnavailableException { - logger.debug(String.format("Target \"%s\" without format", name)); - line = Tool.getTargetDataLine(name); - audioFormat = line.getFormat(); - targetInputStream = new TargetInputStream(); - } - - public Target(String name, AudioFormat audioFormat) throws LineUnavailableException { - logger.debug(String.format("Target \"%s\" with format: %s", name, audioFormat)); - this.audioFormat = audioFormat; - line = Tool.getTargetDataLine(name, audioFormat); - targetInputStream = new TargetInputStream(); - } - - public AudioFormat getAudioFormat() { - return audioFormat; - } - - public InputStream getInputStream() { - return targetInputStream; - } - - public class TargetInputStream extends InputStream { - protected boolean open; - - public TargetInputStream() { - open = false; - } - - public int read() throws IOException { - start(); - byte[] buffer = new byte[1]; - line.read(buffer, 0, 1); - return (int) buffer[0]; - } - - public int read(byte[] buffer, int offset, int length) { - start(); - line.read(buffer, offset, length); - return length; - } - - public int available() { - start(); - return line.available(); - } - } - - public void start() { - if (!line.isOpen()) { - try { - line.open(); - } catch (LineUnavailableException e) { - logger.error("", e); - } - } - if (!line.isRunning()) { - line.start(); - } - } - - public void stop() { - line.flush(); - } - - public void exit() { - line.close(); - } -} diff --git a/java/exec.sound/src/main/java/sound/stream/HoardedInputStream.java b/java/exec.sound/src/main/java/sound/stream/HoardedInputStream.java deleted file mode 100644 index 4f6825b..0000000 --- a/java/exec.sound/src/main/java/sound/stream/HoardedInputStream.java +++ /dev/null @@ -1,92 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.stream; - -import java.io.BufferedInputStream; -import java.io.IOException; -import java.io.InputStream; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public class HoardedInputStream extends BufferedInputStream { - protected Logger logger = LoggerFactory.getLogger(getClass()); - - protected static final int SLEEP = 500; // in milliseconds - protected static final int BUFFER_SIZE = 30000; // in bytes - protected static final int MINIMUM_SIZE = 1000; // in bytes - - protected int bufferSize; - protected int minimumSize; - protected boolean hoard; - - public HoardedInputStream(InputStream inputStream) { - this(inputStream, BUFFER_SIZE, MINIMUM_SIZE); - } - - public HoardedInputStream(InputStream inputStream, int bufferSize) { - super(inputStream, bufferSize); - this.bufferSize = bufferSize; - hoard = true; - } - - public HoardedInputStream(InputStream inputStream, int bufferSize, int minimumSize) { - this(inputStream, bufferSize); - this.minimumSize = minimumSize; - } - - public int read() throws IOException { - hoard(); - byte[] buffer = new byte[1]; - in.read(buffer, 0, 1); - return (int) buffer[0]; - } - - public int read(byte[] buffer, int offset, int length) throws IOException { - hoard(); - in.read(buffer, offset, length); - return length; - } - - public void hoard() throws IOException { - int available = available(); - if (hoard && available < MINIMUM_SIZE) { - long time = System.currentTimeMillis(); - do { - try { - Thread.sleep(SLEEP); - } catch (InterruptedException e) { - logger.warn("", e); - } - } while (available() < BUFFER_SIZE); - logger.debug(String.format("Buffered %d bytes in %s milliseconds", BUFFER_SIZE - available, System.currentTimeMillis() - time)); - } - } - - public void clear() throws IOException { - this.buf = new byte[buf.length]; - reset(); - } - - public void drain() { - drain(true); - } - - public void drain(boolean drain) { - hoard = !drain; - } -} diff --git a/java/exec.sound/src/main/java/sound/util/Buffer.java b/java/exec.sound/src/main/java/sound/util/Buffer.java deleted file mode 100644 index 5c85b65..0000000 --- a/java/exec.sound/src/main/java/sound/util/Buffer.java +++ /dev/null @@ -1,57 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.util; - -public class Buffer { - protected byte[] elements; - public int capacity; - protected int index; - protected int size; - - public Buffer(int capacity) { - elements = new byte[capacity]; - this.capacity = capacity; - index = 0; - size = 0; - } - - public synchronized void add(byte[] elements) { - for (byte element : elements) { - elements[index++ % capacity] = element; - if (size < capacity) { - ++size; - } - } - } - - public synchronized void write(byte[] elements, int offset, int length) { - for (int i = offset; i < length; ++i) { - this.elements[(index++ % capacity)] = elements[i]; - if (size < capacity) { - ++size; - } - } - } - - public synchronized byte[] get() { - byte[] elements = new byte[size]; - for (int i = 0; i < size; i++) { - elements[i] = elements[((index + i) % size)]; - } - return elements; - } -} \ No newline at end of file diff --git a/java/exec.sound/src/main/java/sound/util/SoxBuilder.java b/java/exec.sound/src/main/java/sound/util/SoxBuilder.java deleted file mode 100644 index d1d44bd..0000000 --- a/java/exec.sound/src/main/java/sound/util/SoxBuilder.java +++ /dev/null @@ -1,337 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.util; - -import java.util.HashMap; -import java.util.Map.Entry; - -import javax.sound.sampled.AudioFormat; - -import sound.util.SoxBuilder.Option.Combine; -import sound.util.SoxBuilder.Option.Replay; - -public final class SoxBuilder { - protected static SoxBuilder instance; - protected static HashMap optionMap; - protected static String files; - protected static String effects; - - static { - instance = new SoxBuilder(); - reset(); - } - - public static void reset() { - optionMap = new HashMap(); - files = ""; - effects = ""; - } - - public static SoxBuilder setOption(Option option, String value) { - optionMap.put(option.getCode(), value); - return instance; - } - - public static SoxBuilder setOption(Option option) { - return SoxBuilder.setOption(option, ""); - } - - public static SoxBuilder setOption(Option option, int value) { - return SoxBuilder.setOption(option, String.valueOf(value)); - } - - public static SoxBuilder setOption(Option option, Combine combine) { - return SoxBuilder.setOption(option, combine.getCode()); - } - - public static SoxBuilder setOption(Combine combine) { - return SoxBuilder.setOption(Option.COMBINE, combine); - } - - public static SoxBuilder setOption(Option option, Replay replay) { - return SoxBuilder.setOption(option, replay.toString().toLowerCase()); - } - - public static SoxBuilder setOption(Replay replay) { - return SoxBuilder.setOption(Option.REPLAY, replay); - } - - public static SoxBuilder addFile(File file) { - files = String.format("%s %s", files, file.build()); - return instance; - } - - public static SoxBuilder addEffect(Effect effect) { - effects = String.format("%s %s", effects, effect.build()); - return instance; - } - - public String build() { - String build = "sox"; - for (Entry entry : optionMap.entrySet()) { - String value = entry.getValue(); - if (value.equals("")) { - build = String.format("%s %s", build, entry.getKey()); - } else { - String option = String.format("%s %s", entry.getKey(), value); - build = String.format("%s %s", build, option); - } - } - build = String.format("%s%s%s", build, files, effects); - reset(); - return build; - } - - public enum Environment { - AUDIODRIVER, AUDIODEV - } - - public enum Option { - BUFFER ("--buffer"), // default=8192 - INPUT_BUFFER ("--input-buffer"), - CLOBBER ("--clobber"), - COMBINE ("--combine"), // |Combine| - NO_DITHER ("--no-dither"), // (-D) - EFFECTS_FILE ("--efects-file"), - GUARD ("--guard"), // (-G) - MIX ("-m"), // (--combine mix) - MERGE ("-M"), // (--combine merge) - MAGIC ("--magic"), - MULTI_THREADED ("--multi-threaded"), - SINGLE_THREADED ("--single-threaded"), - NORM ("--norm"), // [=dB-level] - PLAY_RATE_ARG ("--play-rate-arg"), - QUIET ("--no-show-progress"), // (-q) - REPEATABLE ("-R"), - REPLAY ("--replay-gain"), // |Replay| - MULTIPLY ("-T"), // (--combine multiply) - TEMP ("--temp"); - - protected String code; - - private Option(String code) { - this.code = code; - } - - public String getCode() { - return code; - } - - public enum Combine { - CONCATENATE ("concatenate"), - MERGE ("merge"), // (-M) - MIX ("mix"), // (-m) - MIX_POWER ("mix-power"), - MULTIPLY ("multiply"), // (-T) - SEQUENCE ("sequence"); - - protected String code; - - private Combine(String code) { - this.code = code; - } - - public String getCode() { - return code; - } - } - - public enum Replay { - TRACK, ALBUM, OFF - } - } - - public static class File { - protected static File instance; - - protected static HashMap optionMap; - protected static Type type; - - static { - instance = new File(); - reset(); - } - - public static void reset() { - optionMap = new HashMap(); - type = Type.PIPE; - } - - public static File setOption(Option option, String value) { - optionMap.put(option.getCode(), value); - return instance; - } - - public static File setOption(Option option) { - return File.setOption(option, ""); - } - - public static File setOption(Option option, int value) { - return File.setOption(option, String.valueOf(value)); - } - - public static File setOption(Option option, Encoding encoding) { - return File.setOption(option, encoding.getCode()); - } - - public static File setOption(Encoding encoding) { - return File.setOption(Option.ENCODING, encoding); - } - - public static File setOption(Option option, Format format) { - return File.setOption(option, format.toString().toLowerCase()); - } - - public static File setOption( Format format) { - return File.setOption(Option.FORMAT, format); - } - - public static File setOption(Option option, Endian endian) { - return File.setOption(option, endian.toString().toLowerCase()); - } - - public static File setOption(Endian endian) { - return File.setOption(Option.ENDIAN, endian); - } - - public File setOptions(AudioFormat audioFormat) { - setOption(Option.CHANNELS, audioFormat.getChannels()); - setOption(Option.RATE, String.format("%sk", String.valueOf(audioFormat.getSampleRate() / 1000f))); - AudioFormat.Encoding encoding = audioFormat.getEncoding(); - int bits = audioFormat.getSampleSizeInBits(); - if (encoding.equals(AudioFormat.Encoding.ALAW)) { - setOption(Format.AL); - setOption(Encoding.A_LAW); - } else if (encoding.equals(AudioFormat.Encoding.ULAW)) { - setOption(Format.UL); - setOption(Encoding.U_LAW); - } else if (encoding.equals(AudioFormat.Encoding.PCM_SIGNED)) { - setOption(Format.valueOf(String.format("S%d", bits))); - setOption(Encoding.SIGNED_INTEGER); - } else if (encoding.equals(AudioFormat.Encoding.PCM_UNSIGNED)) { - setOption(Format.valueOf(String.format("U%d", bits))); - setOption(Encoding.UNSIGNED_INTEGER); - } - setOption(audioFormat.isBigEndian() ? Endian.BIG : Endian.LITTLE); - return instance; - } - - public static File setType(Type type) { - File.type = type; - return instance; - } - - public String build() { - String build = type.getCode(); - for (Entry entry : optionMap.entrySet()) { - String value = entry.getValue(); - if (value.equals("")) { - build = String.format("%s %s", entry.getKey(), build); - } else { - String option = String.format("%s %s", entry.getKey(), value); - build = String.format("%s %s", option, build); - } - } - reset(); - return build; - } - - public enum Option { - BITS ("--bits"), // (-b) - CHANNELS ("--channels"), // (-c) - ENCODING ("--encoding"), // (-e), |Encoding| - NO_GLOB ("--no-glob"), - RATE ("--rate"), // (-r) - FORMAT ("--type"), // (-t), |Format| - ENDIAN ("--endian"), // (-L, -B, -x), |Endian| - REVERSE_NIBBLES ("--reverse-nibbles"), // (-N) - REVERSE_BITS ("--reverse-bits"), // (-X) - /* Input only */ - IGNORE_LENGTH ("--ignore-length"), - VOLUME ("--volume"), // (-v) - /* Output only */ - ADD_COMMENT ("--add-comment"), - COMMENT ("--comment"), - COMMENT_FILE ("--comment-file"), - COMPRESSION ("--compression"); // -C - - protected String code; - - private Option(String code) { - this.code = code; - } - - public String getCode() { - return code; - } - } - - public enum Encoding { - SIGNED_INTEGER ("signed-integer"), // PCM data stored as signed integers - UNSIGNED_INTEGER ("unsigned-integer"), // PCM data stored as unsigned integers - FLOATING_POINT ("floating-point"), // PCM data stored as single precision (32-bit) or double precision (64-bit) floating-point numbers - A_LAW ("a-lawW"), // International telephony standard for logarithmic encoding to 8 bits per sample (~13-bit PCM) - U_LAW ("u-law"), // North American telephony standard for logarithmic encoding to 8 bits per sample (~14-bit PCM) - MU_LAW ("mu-law"), // alias for u-law (~14-bit PCM) - OKI_ADPCM ("oki-adpcm"), // OKI (VOX, Dialogic or Intel) 4-bit ADPCM (~12-bit PCM) - IMA_ADPCM ("ima-adpcm"), // IMA (DVI) 4-bit ADPCM (~13-bit PCM) - MS_ADPCM ("ms-adpcm"), // Microsoft 4-bit ADPCM (~14-bit PCM) - GSM_FULL_RATE ("gsm-full-rate"); // Several audio formats used for digital wireless telephone calls - - protected String code; - - private Encoding(String code) { - this.code = code; - } - - public String getCode() { - return code; - } - } - - public enum Format { - AIF, AIFC, AIFF, AIFFC, AL, AMB, AMR, ANY, ARL, AU, AVR, BIN, CAF, CDDA, CDR, CVS, CVSD, CVU, DAT, DVMS, EDU, F32, F64, FAP, FLAC, FSSD, GSM, GSRT, HCOM, HTK, IMA, IRCAM, LA, LPC, LPC10, LU, M3U, M4A, MAT, MAT4, MAT5, MAUD, MP2, MP3, MP4, NIST, OGG, PAF, PLS, PRC, PVF, RAW, S16, S24, S32, S8, SD2, SDS, SF, SLN, SMP, SND, SNDR, SNDT, SOU, SOX, SPH, TXW, U16, U24, U32, U8, UL, VMS, VOC, VORBIS, VOX, W64, WAV, WAVPCM, WV, WVE, XA, XI; - } - - public enum Endian { - LITTLE, BIG, SWAP; - } - - public enum Type { - STANDARD ("-"), // -t must be given - PIPE ("-p"), // (--sox-pipe) - DEVICE ("-d"), // (--default-device) - NULL ("-n"); // (--null) - - protected String code; - - private Type(String code) { - this.code = code; - } - - public String getCode() { - return code; - } - } - } - - public class Effect { - public String build() { - return null; - } - } -} diff --git a/java/exec.sound/src/main/java/sound/util/Tool.java b/java/exec.sound/src/main/java/sound/util/Tool.java deleted file mode 100644 index be85406..0000000 --- a/java/exec.sound/src/main/java/sound/util/Tool.java +++ /dev/null @@ -1,156 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.util; - -import java.util.ArrayList; -import java.util.HashMap; - -import javax.sound.sampled.AudioFormat; -import javax.sound.sampled.AudioSystem; -import javax.sound.sampled.DataLine; -import javax.sound.sampled.Line; -import javax.sound.sampled.LineUnavailableException; -import javax.sound.sampled.Mixer; -import javax.sound.sampled.Port; -import javax.sound.sampled.Port.Info; -import javax.sound.sampled.SourceDataLine; -import javax.sound.sampled.TargetDataLine; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public class Tool { - protected static Logger logger = LoggerFactory.getLogger(Tool.class); - - protected static HashMap> targetMap; - protected static HashMap> sourceMap; - protected static ArrayList portList; - - protected static ArrayList targetList; - protected static ArrayList sourceList; - - static { - Tool tool = new Tool(); - - targetMap = new HashMap>(); - sourceMap = new HashMap>(); - targetList = new ArrayList(); - sourceList = new ArrayList(); - portList = new ArrayList(); - - for (Mixer.Info mixerInfo : AudioSystem.getMixerInfo()) { - String name = mixerInfo.getName(); - Mixer mixer = AudioSystem.getMixer(mixerInfo); - - for (Line.Info lineInfo : mixer.getSourceLineInfo()) { - String lineClassName = lineInfo.getLineClass().getName(); - if (lineClassName.equals("javax.sound.sampled.SourceDataLine")) { - if (mixer.isLineSupported(lineInfo)) { - logger.debug(" " + name); - sourceMap.put(name, tool.new Device(mixer, lineInfo)); - } - } - } - for (Line.Info lineInfo : mixer.getTargetLineInfo()) { - String lineClassName = lineInfo.getLineClass().getName(); - if (lineClassName.equals("javax.sound.sampled.TargetDataLine")) { - if (mixer.isLineSupported(lineInfo)) { - logger.debug(" " + name); - targetMap.put(name, tool.new Device(mixer, lineInfo)); - } - } else if (lineClassName.equals("javax.sound.sampled.Port")) { - name = name.substring(5); - try { - Port port = (Port) mixer.getLine(lineInfo); - Port.Info portInfo = (Info) port.getLineInfo(); - if (!targetMap.containsKey(name) || portInfo.equals(Port.Info.LINE_OUT) || portInfo.equals(Port.Info.SPEAKER)) { - logger.debug(" " + name); - portList.add(name); - } - } catch (LineUnavailableException e) { - logger.error("", e); - } - } - } - } - } - - public static String[] getTargets() { - return targetMap.keySet().toArray(new String[0]); - } - - public static String[] getSources() { - return sourceMap.keySet().toArray(new String[0]); - } - - public static String[] getPorts() { - return portList.toArray(new String[0]); - } - - public static TargetDataLine getTargetDataLine(String name) throws LineUnavailableException { - if (targetMap.containsKey(name)) { - return targetMap.get(name).getLine(); - } else { - throw new LineUnavailableException(); - } - } - - public static TargetDataLine getTargetDataLine(String name, AudioFormat audioFormat) throws LineUnavailableException { - if (targetMap.containsKey(name)) { - return targetMap.get(name).getLine(audioFormat); - } else { - throw new LineUnavailableException(); - } - } - - public static SourceDataLine getSourceDataLine(String name) throws LineUnavailableException { - if (sourceMap.containsKey(name)) { - return sourceMap.get(name).getLine(); - } else { - throw new LineUnavailableException(); - } - } - - public static SourceDataLine getSourceDataLine(String name, AudioFormat audioFormat) throws LineUnavailableException { - if (sourceMap.containsKey(name)) { - return sourceMap.get(name).getLine(audioFormat); - } else { - throw new LineUnavailableException(); - } - } - - public class Device { - protected Mixer mixer; - protected Line.Info lineInfo; - - public Device(Mixer mixer, Line.Info lineInfo) { - this.mixer = mixer; - this.lineInfo = lineInfo; - } - - @SuppressWarnings("unchecked") - public T getLine() throws LineUnavailableException { - return (T) mixer.getLine(lineInfo); - } - - @SuppressWarnings("unchecked") - public T getLine(AudioFormat audioFormat) throws LineUnavailableException { - DataLine.Info dataLineInfo = new DataLine.Info(lineInfo.getLineClass(), audioFormat); - return (T) mixer.getLine(dataLineInfo); - } - } -} diff --git a/java/exec.sound/src/main/java/sound/util/Utils.java b/java/exec.sound/src/main/java/sound/util/Utils.java deleted file mode 100644 index e25ee34..0000000 --- a/java/exec.sound/src/main/java/sound/util/Utils.java +++ /dev/null @@ -1,55 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package sound.util; - -import java.io.BufferedInputStream; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; - -import javazoom.jl.decoder.JavaLayerException; -import javazoom.jl.player.Player; - -public class Utils { - public static final int BUFFER = 2048; // bytes - - public static void play(InputStream inputStream) { - try { - new Player(new BufferedInputStream(inputStream)).play(); - } catch (JavaLayerException e) { - e.printStackTrace(); - } - } - - public static void write(InputStream inputStream, File file) { - byte[] bytes = new byte[BUFFER]; - int read = 0; - try { - FileOutputStream fileOutputStream = new FileOutputStream(file); - while ((read = inputStream.read(bytes)) > 0) { - fileOutputStream.write(bytes, 0, read); - } - fileOutputStream.close(); - } catch (FileNotFoundException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } - } -} diff --git a/java/exec.sound/src/main/resources/txt/keuze.txt b/java/exec.sound/src/main/resources/txt/keuze.txt deleted file mode 100644 index 7e9581d..0000000 --- a/java/exec.sound/src/main/resources/txt/keuze.txt +++ /dev/null @@ -1,13 +0,0 @@ -from pcm: - --r -s [--unsigned] [--big-endian] - -to mp3: ---cbr -b - - -mp3 to pcm: ---decode - -always: - - - --quiet \ No newline at end of file diff --git a/java/exec.sound/src/main/resources/txt/lame b/java/exec.sound/src/main/resources/txt/lame deleted file mode 100644 index 4d95aae..0000000 --- a/java/exec.sound/src/main/resources/txt/lame +++ /dev/null @@ -1,182 +0,0 @@ -LAME 32bits version 3.98.4 (http://www.mp3dev.org/) - -usage: lame [options] [outfile] - - and/or can be "-", which means stdin/stdout. - -RECOMMENDED: - lame -V2 input.wav output.mp3 - -OPTIONS: - Input options: - --scale scale input (multiply PCM data) by - --scale-l scale channel 0 (left) input (multiply PCM data) by - --scale-r scale channel 1 (right) input (multiply PCM data) by - --mp1input input file is a MPEG Layer I file - --mp2input input file is a MPEG Layer II file - --mp3input input file is a MPEG Layer III file - --nogap <...> - gapless encoding for a set of contiguous files - --nogapout - output dir for gapless encoding (must precede --nogap) - --nogaptags allow the use of VBR tags in gapless encoding - - Input options for RAW PCM: - -r input is raw pcm - -x force byte-swapping of input - -s sfreq sampling frequency of input file (kHz) - default 44.1 kHz - --bitwidth w input bit width is w (default 16) - --signed input is signed (default) - --unsigned input is unsigned - --little-endian input is little-endian (default) - --big-endian input is big-endian - - - Operational options: - -a downmix from stereo to mono file for mono encoding - -m (j)oint, (s)imple, (f)orce, (d)dual-mono, (m)ono - default is (j) or (s) depending on bitrate - joint = joins the best possible of MS and LR stereo - simple = force LR stereo on all frames - force = force MS stereo on all frames. - --preset type type must be "medium", "standard", "extreme", "insane", - or a value for an average desired bitrate and depending - on the value specified, appropriate quality settings will - be used. - "--preset help" gives more info on these - --comp choose bitrate to achive a compression ratio of - --replaygain-fast compute RG fast but slightly inaccurately (default) - --replaygain-accurate compute RG more accurately and find the peak sample - --noreplaygain disable ReplayGain analysis - --clipdetect enable --replaygain-accurate and print a message whether - clipping occurs and how far the waveform is from full scale - --flush flush output stream as soon as possible - --freeformat produce a free format bitstream - --decode input=mp3 file, output=wav - -t disable writing wav header when using --decode - - - Verbosity: - --disptime print progress report every arg seconds - -S don't print progress report, VBR histograms - --nohist disable VBR histogram display - --silent don't print anything on screen - --quiet don't print anything on screen - --brief print more useful information - --verbose print a lot of useful information - - Noise shaping & psycho acoustic algorithms: - -q = 0...9. Default -q 5 - -q 0: Highest quality, very slow - -q 9: Poor quality, but fast - -h Same as -q 2. Recommended. - -f Same as -q 7. Fast, ok quality - - - CBR (constant bitrate, the default) options: - -b set the bitrate in kbps, default 128 kbps - --cbr enforce use of constant bitrate - - ABR options: - --abr specify average bitrate desired (instead of quality) - - VBR options: - -V n quality setting for VBR. default n=4 - 0=high quality,bigger files. 9=smaller files - -v the same as -V 4 - --vbr-old use old variable bitrate (VBR) routine - --vbr-new use new variable bitrate (VBR) routine (default) - -b specify minimum allowed bitrate, default 32 kbps - -B specify maximum allowed bitrate, default 320 kbps - -F strictly enforce the -b option, for use with players that - do not support low bitrate mp3 - -t disable writing LAME Tag - -T enable and force writing LAME Tag - - - PSY related: - --temporal-masking x x=0 disables, x=1 enables temporal masking effect - --nssafejoint M/S switching criterion - --nsmsfix M/S switching tuning [effective 0-3.5] - --interch x adjust inter-channel masking ratio - --ns-bass x adjust masking for sfbs 0 - 6 (long) 0 - 5 (short) - --ns-alto x adjust masking for sfbs 7 - 13 (long) 6 - 10 (short) - --ns-treble x adjust masking for sfbs 14 - 21 (long) 11 - 12 (short) - --ns-sfb21 x change ns-treble by x dB for sfb21 - - - experimental switches: - -Y lets LAME ignore noise in sfb21, like in CBR - - - MP3 header/stream options: - -e de-emphasis n/5/c (obsolete) - -c mark as copyright - -o mark as non-original - -p error protection. adds 16 bit checksum to every frame - (the checksum is computed correctly) - --nores disable the bit reservoir - --strictly-enforce-ISO comply as much as possible to ISO MPEG spec - - Filter options: - --lowpass frequency(kHz), lowpass filter cutoff above freq - --lowpass-width frequency(kHz) - default 15% of lowpass freq - --highpass frequency(kHz), highpass filter cutoff below freq - --highpass-width frequency(kHz) - default 15% of highpass freq - --resample sampling frequency of output file(kHz)- default=automatic - - - ID3 tag options: - --tt audio/song title (max 30 chars for version 1 tag) - --ta <artist> audio/song artist (max 30 chars for version 1 tag) - --tl <album> audio/song album (max 30 chars for version 1 tag) - --ty <year> audio/song year of issue (1 to 9999) - --tc <comment> user-defined text (max 30 chars for v1 tag, 28 for v1.1) - --tn <track[/total]> audio/song track number and (optionally) the total - number of tracks on the original recording. (track - and total each 1 to 255. just the track number - creates v1.1 tag, providing a total forces v2.0). - --tg <genre> audio/song genre (name or number in list) - --ti <file> audio/song albumArt (jpeg/png/gif file, 128KB max, v2.3) - --tv <id=value> user-defined frame specified by id and value (v2.3 tag) - --add-id3v2 force addition of version 2 tag - --id3v1-only add only a version 1 tag - --id3v2-only add only a version 2 tag - --space-id3v1 pad version 1 tag with spaces instead of nulls - --pad-id3v2 same as '--pad-id3v2-size 128' - --pad-id3v2-size <value> adds version 2 tag, pad with extra <value> bytes - --genre-list print alphabetically sorted ID3 genre list and exit - --ignore-tag-errors ignore errors in values passed for tags - - Note: A version 2 tag will NOT be added unless one of the input fields - won't fit in a version 1 tag (e.g. the title string is longer than 30 - characters), or the '--add-id3v2' or '--id3v2-only' options are used, - or output is redirected to stdout. - - -MS-Windows-specific options: - --priority <type> sets the process priority: - 0,1 = Low priority (IDLE_PRIORITY_CLASS) - 2 = normal priority (NORMAL_PRIORITY_CLASS, default) - 3,4 = High priority (HIGH_PRIORITY_CLASS)) - Note: Calling '--priority' without a parameter will select priority 0. - -Misc: - --license print License information - - - - Platform specific: - --noasm <instructions> disable assembly optimizations for mmx/3dnow/sse - - - -MPEG-1 layer III sample frequencies (kHz): 32 48 44.1 -bitrates (kbps): 32 40 48 56 64 80 96 112 128 160 192 224 256 320 - -MPEG-2 layer III sample frequencies (kHz): 16 24 22.05 -bitrates (kbps): 8 16 24 32 40 48 56 64 80 96 112 128 144 160 - -MPEG-2.5 layer III sample frequencies (kHz): 8 12 11.025 -bitrates (kbps): 8 16 24 32 40 48 56 64 - diff --git a/java/exec.sound/src/main/resources/txt/mp3 b/java/exec.sound/src/main/resources/txt/mp3 deleted file mode 100644 index daf87ab..0000000 --- a/java/exec.sound/src/main/resources/txt/mp3 +++ /dev/null @@ -1,1357 +0,0 @@ -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - 155.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - Baby Come On.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - Chapter 13.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - Cliff Diving.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - Interlude.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - Lillian.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - Little Death.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - Lycanthrope.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - Make You Smile.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - No, It Isn't.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - Weatherman.mp3 -C:/Users/Rik/Music/Artists/+44/When Your Heart Stops Beating/+44 - When Your Heart Stops Beating.mp3 -C:/Users/Rik/Music/Artists/10 Years Feeding/Feeding the Wolves/10 Years - Chasing the Rapture.mp3 -C:/Users/Rik/Music/Artists/10 Years Feeding/Feeding the Wolves/10 Years - Dead In the Water.mp3 -C:/Users/Rik/Music/Artists/10 Years Feeding/Feeding the Wolves/10 Years - Fade Into the Dream.mp3 -C:/Users/Rik/Music/Artists/10 Years Feeding/Feeding the Wolves/10 Years - Fix Me.mp3 -C:/Users/Rik/Music/Artists/10 Years Feeding/Feeding the Wolves/10 Years - Now Is the Time.mp3 -C:/Users/Rik/Music/Artists/10 Years Feeding/Feeding the Wolves/10 Years - One More Day.mp3 -C:/Users/Rik/Music/Artists/10 Years Feeding/Feeding the Wolves/10 Years - The Wicked Ones.mp3 -C:/Users/Rik/Music/Artists/10 Years Feeding/Feeding the Wolves/10 Years - Waking Up the Ghost.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/A Beautiful Lie/30 Seconds to Mars - A Beautiful Lie.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/A Beautiful Lie/30 Seconds to Mars - Attack.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/A Beautiful Lie/30 Seconds to Mars - Battle of One.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/A Beautiful Lie/30 Seconds to Mars - From Yesterday.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/A Beautiful Lie/30 Seconds to Mars - R-Evolve.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/A Beautiful Lie/30 Seconds to Mars - Savior.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/A Beautiful Lie/30 Seconds to Mars - The Fantasy.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/A Beautiful Lie/30 Seconds to Mars - Was It a Dream.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - A Call to Arms.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - Closer to the Edge.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - Equinox.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - Escape.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - Hurricane.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - Kings and Queens.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - Night of the Hunter (Flood Remix).mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - Night of the Hunter.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - Search & Destroy.mp3 -C:/Users/Rik/Music/Artists/30 Seconds To Mars/This Is War/30 Seconds to Mars - This Is War.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - A Party Song (The Walk of Shame).mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Break Your Little Heart.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Damned If I Do Ya (Damned If I Don't).mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Hello Brooklyn.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Keep the Change, You Filthy Animal.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Lost In Stereo.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Sick Little Games.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Stella.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Therapy.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Too Much.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Walls.mp3 -C:/Users/Rik/Music/Artists/All Time Low/Nothing Personal/All Time Low - Weightless.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - Art of War.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - Closer.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - Depraved.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - Down.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - Impossible.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - Pray Tell.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - Take Me (As You Found Me).mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - To the Wolves.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - We Owe This to Ourselves.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Dark Is The Way, Light Is A Place/Anberlin - You Belong Here.mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - Clever Love.mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - Epic Holiday.mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - Et Ducit Mundum Per Luce.mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - Hallucinations.mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - Letters to God, Part Ii.mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - Shove.mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - Some Origins of Fire.mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - Soul Survivor (...2012).mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - The Flight of Apollo.mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - The Moon-Atomic (...Fragments and Fictions).mp3 -C:/Users/Rik/Music/Artists/Angels & Airwaves/Love/Angels & Airwaves - Young London.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/The Suburbs/Arcade Fire - City With No Children.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/The Suburbs/Arcade Fire - Empty Room.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/The Suburbs/Arcade Fire - Half Light Ii (No Celebration).mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/The Suburbs/Arcade Fire - Modern Man.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/The Suburbs/Arcade Fire - Month of May.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/The Suburbs/Arcade Fire - Suburban War.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Adam's Song.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - All the Small Things.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Always.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Another Girl Another Planet.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Carousel.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Dammit.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Down.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Feelin' This.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - First Date.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Josie.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - M&m's.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Man Overboard (Live).mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Miss You.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Not Now.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Rock Show.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - Stay Together For the Kids.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Greatest Hits/Blink-182 - What's My Age Again.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Coldplay - Clocks.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Coldplay - In My Place.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Coldplay - Life In Technicolor Ii.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Coldplay - Speed of Sound.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Coldplay - Talk.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Viva la Vida or Death and All His Friends/Coldplay - Life In Technicolor.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Viva la Vida or Death and All His Friends/Coldplay - Lost!.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Viva la Vida or Death and All His Friends/Coldplay - Lovers In Japan Reign of Love.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Viva la Vida or Death and All His Friends/Coldplay - Viva La Vida.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Counting Crows - Accidentally In Love.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - American Girls.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Angels of the Silences.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Big Yellow Taxi.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Einstein On the Beach (For An Eggman).mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Friend of the Devil.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Hanginaround.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Mr. Jones.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Mrs. Potter's Lullaby.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Omaha.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Rain King.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - Recovering the Satellites.mp3 -C:/Users/Rik/Music/Artists/Counting Crows/Films About Ghosts - The Best Of/Counting Crows - She Don't Want Nobody Near.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - Am I So Blind.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - Burn.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - California Summer.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - Everything In Me.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - Forget About Me.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - In the End.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - In Your Arms.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - Sinking Sand.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - Spiders.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - Stars.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - Wake Me.mp3 -C:/Users/Rik/Music/Artists/Destine/Lightspeed/Destine - Where Are You Now.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect - Hungry For Love.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect - She.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - A Good Thing.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - A Whole New Era.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - Break Us In Two.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - Bring Down Tomorrow.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - Don't Look Back.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - I Juct Can't Stand.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - It Feels.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - Johny.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - Lucky.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - One Step Closer.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - Over and Over.mp3 -C:/Users/Rik/Music/Artists/Di-Rect/Di-Rect/Di-Rect - Someday.mp3 -C:/Users/Rik/Music/Artists/Dropout Year/Best Friends For Never/Dropout Year - A Coming of Age Story.mp3 -C:/Users/Rik/Music/Artists/Dropout Year/Best Friends For Never/Dropout Year - As You Wish.mp3 -C:/Users/Rik/Music/Artists/Dropout Year/Best Friends For Never/Dropout Year - Best Friends For Never.mp3 -C:/Users/Rik/Music/Artists/Dropout Year/Best Friends For Never/Dropout Year - Biggest Fan.mp3 -C:/Users/Rik/Music/Artists/Dropout Year/Best Friends For Never/Dropout Year - Confetti.mp3 -C:/Users/Rik/Music/Artists/Dropout Year/Best Friends For Never/Dropout Year - From Across the Room.mp3 -C:/Users/Rik/Music/Artists/Dropout Year/Best Friends For Never/Dropout Year - It Wasn't Over, It Still Isn't Over.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - (Coffee's For Closers).mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - 20 Dollar Nose Bleed.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - 27.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - America's Suitehearts.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - Disloyal Order of Water Buffaloes.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - Headfirst Slide Into Coopestown On a Bad Bet.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - I Don't Care.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - She's My Winona.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - Tiffany Blews.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - West Coast Smoker.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Folie A Deux/Fall Out Boy - What a Catch, Donnie.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - All My Life.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Best of You.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Big Me.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Breakout.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Everlong.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Learn to Fly.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Long Road to Ruin.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Monkey Wrench.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - My Hero.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - The Pretender.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - This Is a Call.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Times Like These.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Wheels.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Word Forward.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - A Matter of Time.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - Arlandria.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - Back & Forth.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - Bridge Burning.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - Dear Rosemary.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - Miss the Misery.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - Rope.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - These Days.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - Walk.mp3 -C:/Users/Rik/Music/Artists/Go Back To The Zoo/Benny Blisto/Go Back to the Zoo - Beam Me Up.mp3 -C:/Users/Rik/Music/Artists/Go Back To The Zoo/Benny Blisto/Go Back to the Zoo - Electric.mp3 -C:/Users/Rik/Music/Artists/Go Back To The Zoo/Benny Blisto/Go Back to the Zoo - Fuck You.mp3 -C:/Users/Rik/Music/Artists/Go Back To The Zoo/Benny Blisto/Go Back to the Zoo - Hey Dj.mp3 -C:/Users/Rik/Music/Artists/Go Back To The Zoo/Benny Blisto/Go Back to the Zoo - I Lov It.mp3 -C:/Users/Rik/Music/Artists/Go Back To The Zoo/Benny Blisto/Go Back to the Zoo - I'm the Night (See You Later).mp3 -C:/Users/Rik/Music/Artists/Go Back To The Zoo/Benny Blisto/Go Back to the Zoo - Nicer.mp3 -C:/Users/Rik/Music/Artists/Go Back To The Zoo/Benny Blisto/Go Back to the Zoo - Oh No (We Stayed).mp3 -C:/Users/Rik/Music/Artists/Go Back To The Zoo/Benny Blisto/Go Back to the Zoo - Sweet World.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - 1979.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Alive.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Cardiology.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Counting the Days.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Harlow's Song (Can't Dream Without You).mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Interlude (The Fifth Chamber).mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Introduction to Cardiology.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Last Night.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Let the Music Play.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Like It's Her Birthday.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Right Where I Belong.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Sex On the Radio.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Silver Screen Romance.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - Standing Ovation.mp3 -C:/Users/Rik/Music/Artists/Good Charlotte/Cardiology/Good Charlotte - There She Goes.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - 21 Guns.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - 21st Century Breakdown.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - American Eulogy.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Before the Lobotomy.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Christian's Inferno.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - East Jesus Nowhere.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Horseshoes and Handgrenades.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Know Your Enemy.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Last Night On Earth.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Last of the American Girls.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Murder City.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Peacemaker.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Restless Heart Syndrome.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - See the Light.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - The Static Age.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - Viva La Gloria (Little Girl).mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - American Idiot.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Are We the Waiting.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Boulevard of Broken Dreams.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Extraordinary Girl.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Give Me Novacaine.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Holiday.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Homecoming.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Jesus of Suburbia.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Letterbomb.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - She's a Rebel.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - St. Jimmy.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Wake Me Up When September Ends.mp3 -C:/Users/Rik/Music/Artists/Green Day/American Idiot/Green Day - Whatsername.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - All the Time.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Armatage Shanks.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Bascet Case.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Brat.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Burnout.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Chump.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Church On Sunday.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Coming Clean.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Desensitized.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Emenius Sleepus.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Fashion Victim.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Geek Stink Breath.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Good Riddance (Time of Your Life).mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - In the End.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - J.A.R. (Jason Andrew Relva).mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Jaded.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Maria.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Nice Guys Finish Last.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Poprocks & Coke.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Redundant.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Scumbag.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - She.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Stuck With Me.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Suffocate.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - The Grouch.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - The Saints Are Coming.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Waiting.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Walking Alone.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Walking Contradiction.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Warning.mp3 -C:/Users/Rik/Music/Artists/Green Day/Greatest Hits/Green Day - Welcome to Paradise.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - Addicted to Drugs.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - Always Happens Like That.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - Can't Say What I Mean.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - Good Days Bad Days.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - Half the Truth.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - Like It Too Much.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - Never Miss a Beat.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - Spanish Metal.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - Tomato In the Rain.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Off With Their Heads/Kaiser Chiefs - You Want History.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Boxing Champ.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Everything Is Average Nowadays.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Heat Dies Down.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Highroyds.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - I Can Do Without You.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Learnt My Lesson Well.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Love's Not a Competition (But I'm Winning).mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - My Kind of Guy.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Retirement.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Ruby.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Thank You Very Much.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - The Angry Mob.mp3 -C:/Users/Rik/Music/Artists/Kaiser Chiefs/Yours Truly, Angry Mob/Kaiser Chiefs - Try Your Best.mp3 -C:/Users/Rik/Music/Artists/Keane/Keane - Everybody's Changing.mp3 -C:/Users/Rik/Music/Artists/Keane/Keane - Is It Any Wonder.mp3 -C:/Users/Rik/Music/Artists/Keane/Keane - Somewhere Only We Know.mp3 -C:/Users/Rik/Music/Artists/Keane/Keane - This Is the Last Time.mp3 -C:/Users/Rik/Music/Artists/Keane/Perfect Symmetry/Keane - Again & Again.mp3 -C:/Users/Rik/Music/Artists/Keane/Perfect Symmetry/Keane - Better Than This.mp3 -C:/Users/Rik/Music/Artists/Keane/Perfect Symmetry/Keane - Black Burning Heart.mp3 -C:/Users/Rik/Music/Artists/Keane/Perfect Symmetry/Keane - Lovers Are Losing.mp3 -C:/Users/Rik/Music/Artists/Keane/Perfect Symmetry/Keane - Perfect Symmetry.mp3 -C:/Users/Rik/Music/Artists/Keane/Perfect Symmetry/Keane - Playing Along.mp3 -C:/Users/Rik/Music/Artists/Keane/Perfect Symmetry/Keane - Pretend That You're Alone.mp3 -C:/Users/Rik/Music/Artists/Keane/Perfect Symmetry/Keane - Spiralling.mp3 -C:/Users/Rik/Music/Artists/Keane/Perfect Symmetry/Keane - You Don't See Me.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - All That I Know.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - Franklin Exits.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - I Was Too Scared.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - Not As Bright.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - So Am I.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - The Heart of It.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - Thieves and Murderers.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - Waiting For a Sign.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - What's Gotten Into Us.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - When It All Falls Down.mp3 -C:/Users/Rik/Music/Artists/Kensington/Borders/Kensington - Youth.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - Back Down South.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - Beach Side.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - Birthday.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - Mary.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - Mi Amigo.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - No Money.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - Pickup Truck.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - Pony Up.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - Pyro.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - Radioactive.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - The End.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - The Face.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Come Around Sundown/Kings of Leon - The Immortals.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Only By The Night/Kings of Leon - Be Somebody.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Only By The Night/Kings of Leon - Closer.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Only By The Night/Kings of Leon - Crawl.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Only By The Night/Kings of Leon - I Want You.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Only By The Night/Kings of Leon - Manhattan.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Only By The Night/Kings of Leon - Notion.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Only By The Night/Kings of Leon - Sex On Fire.mp3 -C:/Users/Rik/Music/Artists/Kings of Leon/Only By The Night/Kings of Leon - Use Somebody.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - All In.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - All That I'm Asking For.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - By Your Side.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - Crash and Burn.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - Falling In.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - From Where You Are.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - Had Enough.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - Halfway Gone.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - In Your Skin.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - It Is What It Is.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - Smoke & Mirrors.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - Wrecking Ball.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - Bridges.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - Disarray.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - Easier to Be.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - First Time.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - Learn You Inside Out.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - Make Me Over.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - Mesmerized.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - Storm.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - Whatever It Takes.mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Who We Are/Lifehouse - Who We Are.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - A Place For My Head.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - Crawling.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - Forgotten.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - In the End.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - One Step Closer.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - Papercut.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - Points of Authority.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - Pushing Me Away.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - Runaway.mp3 -C:/Users/Rik/Music/Artists/Linking Park/Hybrid Theory/Linkin Park - With You.mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - 4am Forever.mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - A Town Called Hypocrisy.mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - Always All Ways (Apologies, Glances and Messed Up Chances).mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - Broken Hearts, Torn Up Letters and the Story of a Lonely Girl.mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - Can't Catch Tomorrow (Good Shoes Won't Save You This Time).mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - Can't Stop, Gotta Date With Hate.mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - Everybody's Screaming !!!.mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - Everyday Combat.mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - For All These Times Son, For All These Times.mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - Heaven For the Weather, Hell For the Company.mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - Rooftops (A Liberation Broadcast).mp3 -C:/Users/Rik/Music/Artists/Lostprophets/Liberation Transmission/Lostprophets - The New Transmission.mp3 -C:/Users/Rik/Music/Artists/Matchbook Romance/Voices/Matchbook Romance - Goody, Like Two Shoes.mp3 -C:/Users/Rik/Music/Artists/Matchbook Romance/Voices/Matchbook Romance - Monsters.mp3 -C:/Users/Rik/Music/Artists/Matchbook Romance/Voices/Matchbook Romance - My Mannequin Can Dance.mp3 -C:/Users/Rik/Music/Artists/Matchbook Romance/Voices/Matchbook Romance - Portrait.mp3 -C:/Users/Rik/Music/Artists/Matchbook Romance/Voices/Matchbook Romance - Singing Bridges (We All Fall).mp3 -C:/Users/Rik/Music/Artists/Matchbook Romance/Voices/Matchbook Romance - Surrender.mp3 -C:/Users/Rik/Music/Artists/Matchbook Romance/Voices/Matchbook Romance - What a Sight.mp3 -C:/Users/Rik/Music/Artists/Neon Trees/Habits/Neon Trees - 1983.mp3 -C:/Users/Rik/Music/Artists/Neon Trees/Habits/Neon Trees - Animal.mp3 -C:/Users/Rik/Music/Artists/Neon Trees/Habits/Neon Trees - In the Next Room.mp3 -C:/Users/Rik/Music/Artists/Neon Trees/Habits/Neon Trees - Sins of My Youth.mp3 -C:/Users/Rik/Music/Artists/Neon Trees/Habits/Neon Trees - Your Surrender.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Dark Horse/Nickelback - Gotta Be Somebody.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Dark Horse/Nickelback - I'd Come For You.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Dark Horse/Nickelback - If Today Was Your Last Day.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Dark Horse/Nickelback - Just to Get High.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Dark Horse/Nickelback - Never Gonna Be Alone.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Dark Horse/Nickelback - This Afternoon.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Nickelback - How You Remind Me.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Nickelback - Photograph.mp3 -C:/Users/Rik/Music/Artists/OneRepublic/Waking Up/Onerepublic - All the Right Moves.mp3 -C:/Users/Rik/Music/Artists/OneRepublic/Waking Up/Onerepublic - Fear.mp3 -C:/Users/Rik/Music/Artists/OneRepublic/Waking Up/Onerepublic - Good Life.mp3 -C:/Users/Rik/Music/Artists/OneRepublic/Waking Up/Onerepublic - Secrets.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - All That We Needed.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - Anything.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - Breakdown.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - Faster.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - Last Call.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - Lazy Day Afternoon.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - My Only One.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - Revenge.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - Sad Story.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - Sing My Best.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - Take Me Away.mp3 -C:/Users/Rik/Music/Artists/Plain White T's/All That We Needed/Plain White T's - What More Do You Want.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Breaking the Girl.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - By the Way.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Californication.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Fortune Faded.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Give It Away.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Higher Ground.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - My Friends.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Otherside.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Parallel Universe.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Save the Population.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Scar Tissue.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Soul to Squeeze.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Under the Bridge.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Greatest Hits/Red Hot Chili Peppers - Universally Speaking.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Animal Bar.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Charlie.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - C'mon Girl.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Dani California.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Death of a Martian.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Desecration Smile.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Especially In Michigan.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Hard to Concentrate.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Hey.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - If.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Make You Feel Better.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - She Looks to Me.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - She's Only 18.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Slow Cheetah.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Snow (Hey Oh).mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - So Much I.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Stadium Arcadium.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Storm In a Teacup.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Strip My Mind.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Tell Me Baby.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Torture Me.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Turn It Again.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Warlocks.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - We Believe.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/Stadium Arcadium/Red Hot Chili Peppers - Wet Sand.mp3 -C:/Users/Rik/Music/Artists/Rooney/Calling The World/Rooney - All In Your Head.mp3 -C:/Users/Rik/Music/Artists/Rooney/Calling The World/Rooney - Are You Afraid.mp3 -C:/Users/Rik/Music/Artists/Rooney/Calling The World/Rooney - Believe In Me.mp3 -C:/Users/Rik/Music/Artists/Rooney/Calling The World/Rooney - Calling the World.mp3 -C:/Users/Rik/Music/Artists/Rooney/Calling The World/Rooney - Don't Come Around Again.mp3 -C:/Users/Rik/Music/Artists/Rooney/Calling The World/Rooney - I Should've Been After You.mp3 -C:/Users/Rik/Music/Artists/Rooney/Calling The World/Rooney - Love Me Or Leave Me.mp3 -C:/Users/Rik/Music/Artists/Rooney/Calling The World/Rooney - Paralyzed.mp3 -C:/Users/Rik/Music/Artists/Rooney/Calling The World/Rooney - What For.mp3 -C:/Users/Rik/Music/Artists/Savage Garden/Savage Garden/Savage Garden - A Thousand Words.mp3 -C:/Users/Rik/Music/Artists/Savage Garden/Savage Garden/Savage Garden - Break Me Shake Me.mp3 -C:/Users/Rik/Music/Artists/Savage Garden/Savage Garden/Savage Garden - Carry On Dancing.mp3 -C:/Users/Rik/Music/Artists/Savage Garden/Savage Garden/Savage Garden - I Want You.mp3 -C:/Users/Rik/Music/Artists/Savage Garden/Savage Garden/Savage Garden - To the Moon and Back.mp3 -C:/Users/Rik/Music/Artists/Savage Garden/Savage Garden/Savage Garden - Truly Madly Deeply.mp3 -C:/Users/Rik/Music/Artists/Savage Garden/Savage Garden/Savage Garden - Violet.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - Generation.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - I Can Wait Forever.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - No Love.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - Running Out of Time.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - Save You.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - Take My Hand.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - The End.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - Time to Say Goodbye.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - What If.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - When I'm Gone (Acoustic).mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - When I'm Gone.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Simple Plan/Simple Plan - Your Love Is a Lie.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/A Hundred Million Suns/Snow Patrol - Crack the Shutters.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/A Hundred Million Suns/Snow Patrol - Disaster Button.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/A Hundred Million Suns/Snow Patrol - Engines.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/A Hundred Million Suns/Snow Patrol - If There's a Rocket Tie Me to It.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/A Hundred Million Suns/Snow Patrol - Please Just Take These Photos From My Hands.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/A Hundred Million Suns/Snow Patrol - Take Back the City.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Eyes Open/Snow Patrol - Chasing Cars.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Eyes Open/Snow Patrol - Hands Open .mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Eyes Open/Snow Patrol - Headlights On Dark Roads.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Eyes Open/Snow Patrol - In My Arms.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Eyes Open/Snow Patrol - It's Beginning to Get to Me.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Eyes Open/Snow Patrol - Open Your Eyes .mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Eyes Open/Snow Patrol - Shut Your Eyes .mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Eyes Open/Snow Patrol - Warmer Climate.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Eyes Open/Snow Patrol - You're All I Have.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Snow Patrol - Chocolate.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Snow Patrol - Just Say Yes.mp3 -C:/Users/Rik/Music/Artists/Snow Patrol/Snow Patrol - Run.mp3 -C:/Users/Rik/Music/Artists/So They Say/Antidote for Irony/So They Say - Anxiety Is Setting In.mp3 -C:/Users/Rik/Music/Artists/So They Say/Antidote for Irony/So They Say - Good-Bye.mp3 -C:/Users/Rik/Music/Artists/So They Say/Antidote for Irony/So They Say - In Essence We Are Falling.mp3 -C:/Users/Rik/Music/Artists/So They Say/Antidote for Irony/So They Say - In Loving Memory Of....mp3 -C:/Users/Rik/Music/Artists/So They Say/Antidote for Irony/So They Say - Over Exposed Photo.mp3 -C:/Users/Rik/Music/Artists/So They Say/Antidote for Irony/So They Say - Talking In Circles.mp3 -C:/Users/Rik/Music/Artists/So They Say/Antidote for Irony/So They Say - The Burden.mp3 -C:/Users/Rik/Music/Artists/So They Say/Antidote for Irony/So They Say - You Asked, Where Are You Now.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Anna.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Dying.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Hate Not Gone.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Hesitate.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Home Again.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Imperfect.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Let's Be Honest.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Miracles.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Mission Statement.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Nylon 66.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Pieces.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Say You'll Haunt Me.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - The Bitter End.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Threadbare.mp3 -C:/Users/Rik/Music/Artists/Stone Sour/Audio Secrecy/Stone Sour - Unfinished.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Baby You Don't Wanna Know.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Back Where I Belong.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Blood In My Eyes.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Crash.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Exit Song.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Happiness Machine.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Holy Image of Lies.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Jessica Kill.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Reason to Believe (Acoustic).mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Reason to Believe.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Screaming Bloody Murder.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Sick of Everyone.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Skumfuk.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - Time For You to Go.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - What Am I to Say.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - Best of Me.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - Confusion and Frustration In Modern Times.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - Count Your Last Blessings.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - Dear Father.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - King of Contradiction.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - March of the Dogs.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - Pull the Curtain.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - So Long Goodbye.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - Speak of the Devil.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - The Jester.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - Underclass Hero.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - Walking Disaster.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Underclass Hero/Sum 41 - With Me.mp3 -C:/Users/Rik/Music/Artists/The Academy Is/Almost Here/The Academy Is... - Almost Here.mp3 -C:/Users/Rik/Music/Artists/The Academy Is/Almost Here/The Academy Is... - Attention.mp3 -C:/Users/Rik/Music/Artists/The Academy Is/Almost Here/The Academy Is... - Black Mamba.mp3 -C:/Users/Rik/Music/Artists/The Academy Is/Almost Here/The Academy Is... - Checkmarks.mp3 -C:/Users/Rik/Music/Artists/The Academy Is/Almost Here/The Academy Is... - Classifieds.mp3 -C:/Users/Rik/Music/Artists/The Academy Is/Almost Here/The Academy Is... - Down and Out.mp3 -C:/Users/Rik/Music/Artists/The Academy Is/Almost Here/The Academy Is... - Season.mp3 -C:/Users/Rik/Music/Artists/The Academy Is/Almost Here/The Academy Is... - Skeptics and True Believers.mp3 -C:/Users/Rik/Music/Artists/The Academy Is/Almost Here/The Academy Is... - The Phrase That Pays.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/Move Along/The All-American Rejects - 11.11 P.M.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/Move Along/The All-American Rejects - Change Your Mind.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/Move Along/The All-American Rejects - Dance Inside.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/Move Along/The All-American Rejects - Dirty Little Secret.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/Move Along/The All-American Rejects - I'm Waiting.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/Move Along/The All-American Rejects - Move Along.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/Move Along/The All-American Rejects - Stab My Back.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/Move Along/The All-American Rejects - Top of the World.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Another Heart Calls.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Back to Me.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Believe.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Breakin'.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Damn Girl.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Fallin' Apart.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Gives You Hell.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - I Wanna.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Mona Lisa.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Real World.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - Sunshine.mp3 -C:/Users/Rik/Music/Artists/The All-American Rejects/When The World Comes Down/The All-American Rejects - The Wind Blows.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - All At Once.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - Dead Wrong.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - Fall Away.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - Heaven Forbid.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - How to Save a Life.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - Hundred.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - Little House.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - Look After You.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - Over My Head (Cable Car).mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - She Is.mp3 -C:/Users/Rik/Music/Artists/The Fray/How To Save A Life/The Fray - Trust Me.mp3 -C:/Users/Rik/Music/Artists/The Hoosiers/The Illusion Of Safety/The Hoosiers - Bumpy Ride.mp3 -C:/Users/Rik/Music/Artists/The Hoosiers/The Illusion Of Safety/The Hoosiers - Choices.mp3 -C:/Users/Rik/Music/Artists/The Hoosiers/The Illusion Of Safety/The Hoosiers - Giddy Up.mp3 -C:/Users/Rik/Music/Artists/The Hoosiers/The Illusion Of Safety/The Hoosiers - Glorious.mp3 -C:/Users/Rik/Music/Artists/The Hoosiers/The Illusion Of Safety/The Hoosiers - Live By the Ocean.mp3 -C:/Users/Rik/Music/Artists/The Hoosiers/The Illusion Of Safety/The Hoosiers - Made to Measure.mp3 -C:/Users/Rik/Music/Artists/The Hoosiers/The Illusion Of Safety/The Hoosiers - Sarajevo.mp3 -C:/Users/Rik/Music/Artists/The Hoosiers/The Illusion Of Safety/The Hoosiers - Unlikely Hero.mp3 -C:/Users/Rik/Music/Artists/The Hoosiers/The Illusion Of Safety/The Hoosiers - Who Said Anything (About Falling In Love).mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - A Crippling Blow.mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - A Dustland Fairytale.mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - Human.mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - I Can't Stay.mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - Joy Ride.mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - Losing Touch.mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - Neon Tiger.mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - Spaceman.mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - The World We Live In.mp3 -C:/Users/Rik/Music/Artists/The Killers/Day & Age/The Killers - This Is Your Life.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - All These Things That I've Done.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Andy, You're a Star.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Believe Me Natalie.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Everything Will Be Alright.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Glamorous Indie Rock & Roll.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Indie Rock & Roll.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Jenny Was a Friend of Mine.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Midnight Show.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Mr Brightside.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Mr. Brightside.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - On Top.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Smile Like You Mean It.mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - The Ballad of Michael Valentine (Bonus).mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Under the Gun (Bonus).mp3 -C:/Users/Rik/Music/Artists/The Killers/Hot Fuss/The Killers - Who Let You Go (Bonus).mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - (Can't Get My) Head Around You.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - All I Want.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Can't Repeat.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Come Out and Play (Keep 'em Separated).mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Defy You.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Gone Away.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Gotta Get Away.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Hit That.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Original Prankster.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Pretty Fly (For a White Guy).mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Self Esteem.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - The Kids Aren't Alright.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Want You Bad.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Greatest Hits/The Offspring - Why Don't You Get a Job.mp3 -C:/Users/Rik/Music/Artists/The Script/Science & Faith/The Script - Dead Man Walking.mp3 -C:/Users/Rik/Music/Artists/The Script/Science & Faith/The Script - Exit Wounds.mp3 -C:/Users/Rik/Music/Artists/The Script/Science & Faith/The Script - For the First Time.mp3 -C:/Users/Rik/Music/Artists/The Script/Science & Faith/The Script - If You Ever Come Back.mp3 -C:/Users/Rik/Music/Artists/The Script/Science & Faith/The Script - Long Gone and Moved On.mp3 -C:/Users/Rik/Music/Artists/The Script/Science & Faith/The Script - Nothing.mp3 -C:/Users/Rik/Music/Artists/The Script/Science & Faith/The Script - Science & Faith.mp3 -C:/Users/Rik/Music/Artists/The Script/Science & Faith/The Script - This = Love.mp3 -C:/Users/Rik/Music/Artists/The Script/Science & Faith/The Script - You Won't Feel a Thing.mp3 -C:/Users/Rik/Music/Artists/The Script/The Script/The Script - Before the Worst.mp3 -C:/Users/Rik/Music/Artists/The Script/The Script/The Script - Breakeven.mp3 -C:/Users/Rik/Music/Artists/The Script/The Script/The Script - Fall For Anything.mp3 -C:/Users/Rik/Music/Artists/The Script/The Script/The Script - Rusty Halo.mp3 -C:/Users/Rik/Music/Artists/The Script/The Script/The Script - Talk You Down.mp3 -C:/Users/Rik/Music/Artists/The Script/The Script/The Script - The End Is Where I Begin.mp3 -C:/Users/Rik/Music/Artists/The Script/The Script/The Script - The Man Who Can't Be Moved.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - Bitter Taste.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - Break.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - Goin' Down.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - Last to Know.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - Life Starts Now.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - Lost In You.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - No More.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - Someone Who Cares.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - The Good Life.mp3 -C:/Users/Rik/Music/Artists/Three Days Grace/Life Starts Now/Three Days Grace - Without You.mp3 -C:/Users/Rik/Music/Artists/U2/No Line On The Horizon/U2 - Breathe.mp3 -C:/Users/Rik/Music/Artists/U2/No Line On The Horizon/U2 - Get On Your Boots.mp3 -C:/Users/Rik/Music/Artists/U2/No Line On The Horizon/U2 - I'll Go Crazy If I Don't Go Crazy Tonight.mp3 -C:/Users/Rik/Music/Artists/U2/No Line On The Horizon/U2 - Magnificent.mp3 -C:/Users/Rik/Music/Artists/U2/No Line On The Horizon/U2 - No Line On the Horizon.mp3 -C:/Users/Rik/Music/Artists/U2/No Line On The Horizon/U2 - Stand Up Comedy.mp3 -C:/Users/Rik/Music/Artists/U2/No Line On The Horizon/U2 - Unknown Caller.mp3 -C:/Users/Rik/Music/Artists/U2/No Line On The Horizon/U2 - White As Snow.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - Beautiful Day.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - Elevation.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - I Still Haven't Found What I'm Looking For.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - New Year's Day.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - One.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - Stuck In a Moment You Can't Get Out of.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - Sunday Bloody Sunday .mp3 -C:/Users/Rik/Music/Artists/U2/U2 - Sweetest Thing.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - The City of Blinding Lights.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - Vertigo.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - Where the Streets Have No Name.mp3 -C:/Users/Rik/Music/Artists/U2/U2 - With Or Without You.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - All My Friends Are Insects (Bonus Track).mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Brave New World.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Hang On.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - I Want to Be Something (Bonus Track).mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Memories.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Represent (Rocked Out Mix) %5Bbonus Track%5D.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Ruling Me.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Run Away.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Smart Girls.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Time Flies.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Trainwrecks.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Unspoken.mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Viva La Vida (Bonus Track).mp3 -C:/Users/Rik/Music/Artists/Weezer/Hurley/Weezer - Where's My Sex.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Afraid.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Cut Me, Mick.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Date Line (I Am Gone).mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Dear Bobbie.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Fighting.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Five Become Four.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Keeper.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Light Up the Sky.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Paper Walls.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Shadows and Regrets.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - Shrink the World.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - The Takedown.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Paper Walls/Yellowcard - You and Me and One Spotlight.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/Yellowcard - October Nights.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Contagious Chemistry.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Fireworks.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Hard to Swallow.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Liquid Confidence.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Playing the Blame Game.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Safer to Hate Her.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Stay With Me.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Take Your Breath Away.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - There's No Such Thing As Accident.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Trophy Eyes.mp3 -C:/Users/Rik/Music/Artists/You Me At Six/Hold Me Down/You Me At Six - Underdog.mp3 -C:/Users/Rik/Music/Old/Bad English - Time Stood Still.mp3 -C:/Users/Rik/Music/Old/Bon Jovi/Bon Jovi - In These Arms.mp3 -C:/Users/Rik/Music/Old/Bon Jovi/Bon Jovi - Livin' On a Prayer.mp3 -C:/Users/Rik/Music/Old/Don Henley - The Boys of Summer.mp3 -C:/Users/Rik/Music/Old/Duran Duran/Duran Duran - Ordinary World.mp3 -C:/Users/Rik/Music/Old/Duran Duran/Duran Duran - The Reflex.mp3 -C:/Users/Rik/Music/Old/Europe - The Final Countdown.mp3 -C:/Users/Rik/Music/Old/Genesis/Genesis - Land of Confusion.mp3 -C:/Users/Rik/Music/Old/Midnight Oil - Beds Are Burning.mp3 -C:/Users/Rik/Music/Old/No Doubt/No Doubt - It's My Life.mp3 -C:/Users/Rik/Music/Old/Survivor - Eye of the Tiger.mp3 -C:/Users/Rik/Music/Various/3 Doors Down/3 Doors Down - Here Without You.mp3 -C:/Users/Rik/Music/Various/3 Doors Down/3 Doors Down - Kryptonite.mp3 -C:/Users/Rik/Music/Various/A Silent Express - Will I Be Around.mp3 -C:/Users/Rik/Music/Various/Adam Lambert - Whataya Want From Me.mp3 -C:/Users/Rik/Music/Various/Alphabeat - The Spell.mp3 -C:/Users/Rik/Music/Various/Anouk/Anouk - Girl.mp3 -C:/Users/Rik/Music/Various/Anouk/Anouk - Nobody's Wife.mp3 -C:/Users/Rik/Music/Various/Anouk/Anouk - R U Kiddin' Me.mp3 -C:/Users/Rik/Music/Various/Avril Lavigne/Avril Lavigne - What the Hell.mp3 -C:/Users/Rik/Music/Various/Biffy Clyro - Many of Horror.mp3 -C:/Users/Rik/Music/Various/Brandon Flowers - Crossfire.mp3 -C:/Users/Rik/Music/Various/Carolina Liar - Show Me What Im Looking For.mp3 -C:/Users/Rik/Music/Various/Chumbawamba - Tubthumping.mp3 -C:/Users/Rik/Music/Various/Eagle Eye Cherry - Save Tonight.mp3 -C:/Users/Rik/Music/Various/Esm%C3%A9e Denters - Outta Here.mp3 -C:/Users/Rik/Music/Various/Falco Luneau - Nobody.mp3 -C:/Users/Rik/Music/Various/Freemasons - Uninvited.mp3 -C:/Users/Rik/Music/Various/Gavin DeGraw/Gavin Degraw - Chariot.mp3 -C:/Users/Rik/Music/Various/Gavin DeGraw/Gavin Degraw - Follow Through.mp3 -C:/Users/Rik/Music/Various/Gavin DeGraw/Gavin Degraw - In Love With a Girl.mp3 -C:/Users/Rik/Music/Various/Intwine - Happy.mp3 -C:/Users/Rik/Music/Various/Jaap - Don't Stop Believin'.mp3 -C:/Users/Rik/Music/Various/Jonas Brothers - Burnin' Up.mp3 -C:/Users/Rik/Music/Various/Joshua Radin - I'd Rather Be With You.mp3 -C:/Users/Rik/Music/Various/Kevin Rudolf - Let It Rock.mp3 -C:/Users/Rik/Music/Various/Kid Rock - All Summer Long.mp3 -C:/Users/Rik/Music/Various/Kylie Minogue/Kylie Minogue - All the Lovers.mp3 -C:/Users/Rik/Music/Various/Kylie Minogue/Kylie Minogue - Get Outta My Way.mp3 -C:/Users/Rik/Music/Various/Kylie Minogue/Kylie Minogue - Love At First Sight.mp3 -C:/Users/Rik/Music/Various/Kylie Minogue/Kylie Minogue - Wow.mp3 -C:/Users/Rik/Music/Various/Lenny Kravitz/Lenny Kravitz - Again.mp3 -C:/Users/Rik/Music/Various/Lenny Kravitz/Lenny Kravitz - Fly Away.mp3 -C:/Users/Rik/Music/Various/Liquido - Narcotic.mp3 -C:/Users/Rik/Music/Various/Live/Live - Heaven.mp3 -C:/Users/Rik/Music/Various/Live/Live - Overcome.mp3 -C:/Users/Rik/Music/Various/Live/Live - Run to the Water.mp3 -C:/Users/Rik/Music/Various/Live/Live - Selling the Drama.mp3 -C:/Users/Rik/Music/Various/Live/Live - The River.mp3 -C:/Users/Rik/Music/Various/Mando Diao - Dance With Somebody.mp3 -C:/Users/Rik/Music/Various/Maroon 5/Maroon 5 - Misery.mp3 -C:/Users/Rik/Music/Various/Maroon 5/Maroon 5 - Won't Go Home Without You.mp3 -C:/Users/Rik/Music/Various/Melee/Melee - Built to Last.mp3 -C:/Users/Rik/Music/Various/Melee/Melee - Imitation.mp3 -C:/Users/Rik/Music/Various/Mike Posner - Cooler Than Me.mp3 -C:/Users/Rik/Music/Various/Novastar/Novastar - Because.mp3 -C:/Users/Rik/Music/Various/Novastar/Novastar - Waiting So Long.mp3 -C:/Users/Rik/Music/Various/Oasis - Wonderwall.mp3 -C:/Users/Rik/Music/Various/One Night Only - Just For Tonight.mp3 -C:/Users/Rik/Music/Various/Robyn - With Every Heartbeat.mp3 -C:/Users/Rik/Music/Various/Roxette/Roxette - How Do You Do!.mp3 -C:/Users/Rik/Music/Various/Roxette/Roxette - It Must Have Been Love.mp3 -C:/Users/Rik/Music/Various/Roxette/Roxette - Joyride.mp3 -C:/Users/Rik/Music/Various/Roxette/Roxette - Listen to Your Heart.mp3 -C:/Users/Rik/Music/Various/Roxette/Roxette - The Look.mp3 -C:/Users/Rik/Music/Various/Scissor Sisters - Fire With Fire.mp3 -C:/Users/Rik/Music/Various/Scouting For Girls - Take a Change On Us.mp3 -C:/Users/Rik/Music/Various/Scouting for Girls/Scouting For Girls - Famous.mp3 -C:/Users/Rik/Music/Various/Scouting for Girls/Scouting For Girls - This Ain't a Love Song.mp3 -C:/Users/Rik/Music/Various/September/September - Can't Get Over.mp3 -C:/Users/Rik/Music/Various/September/September - Cry For You.mp3 -C:/Users/Rik/Music/Various/Sick Puppies - Maybe.mp3 -C:/Users/Rik/Music/Various/Simple Minds - Don't You (Forget About Me).mp3 -C:/Users/Rik/Music/Various/Spin Doctors - Two Princes.mp3 -C:/Users/Rik/Music/Various/Swedish House Mafia - One (Your Name).mp3 -C:/Users/Rik/Music/Various/Taio Cruz - Break Your Heart.mp3 -C:/Users/Rik/Music/Various/The Calling - Wherever You Will Go.mp3 -C:/Users/Rik/Music/Various/The Naked & Famous - Young Blood.mp3 -C:/Users/Rik/Music/Various/The Rasmus - In the Shadows.mp3 -C:/Users/Rik/Music/Various/Train/Train - Drops of Jupiter.mp3 -C:/Users/Rik/Music/Various/Train/Train - Hey, Soul Sister.mp3 -C:/Users/Rik/Music/Various/Train/Train - If It's Love.mp3 -C:/Users/Rik/Music/Various/Wheatus - Teenage Dirtbag.mp3 -C:/Users/Rik/Music/Various/Within Temptation - Faster.mp3 -C:/Users/Rik/Music/Various/Jason Derulo - In My Head.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - Better Off.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Wasting Light/Foo Fighters - I Should Have Known.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Always Be.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Big Casino.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Carry You.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Chase This Light.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Dizzy.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Electable (Give It Up).mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Feeling Lucky.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Firefight.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Gotta Be Somebody's Blues.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Here It Goes.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Chase The Light/Jimmy Eat World - Let It Happen.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Crazy.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Everytime.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Jump.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Me Against The World.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - One.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Perfect World.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Promise.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Shut Up.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Thank You.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Untitled.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Still Not Getting Any/Simple Plan - Welcome To My Life.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - 16 Dollars.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - 7 Shots.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - A Better Believer.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - A New Day.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - A Warrior's Call.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - Being 1.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - Fallen.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - Heaven Nor Hell.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - Magic Zone.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - Thanks.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - The Mirror and the Ripper.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Beyond Hell-Above Heaven/Volbeat - Who They Are.mp3 -C:/Users/Rik/Music/Various/Beady Eye - The Roller.mp3 -C:/Users/Rik/Music/Various/Depeche Mode - Just Can't Get Enough.mp3 -C:/Users/Rik/Music/Various/Kelly Clarkson/Kelly Clarkson - Because of You.mp3 -C:/Users/Rik/Music/Various/Kelly Clarkson/Kelly Clarkson - Behind These Hazel Eyes.mp3 -C:/Users/Rik/Music/Various/Kelly Clarkson/Kelly Clarkson - Since U Been Gone.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - American Slang.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - Boxer.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - Bring It On.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - Old Haunts.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - Orphans.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - Stay Lucky.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - The Diamond Church Street Choir.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - The Queen Of Lower Chelsea.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - The Spirit Of Jazz.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/American Slang/The Gaslight Anthem - We Did It When We Were Young.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - Break Away.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - Every You Every Me.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - Jesus Only Knows.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - Love Is Gone.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - Ordinary Day.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - People.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - Save Me Now.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - These Are the Days.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - Today I Break Loose.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - Triple X.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - Wake Me Up.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - We Can Stay.mp3 -C:/Users/Rik/Music/Artists/Blind/Blind/Blind - You.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Do What You Do.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Doctor.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Hollywood.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Loser.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Marriage to Millions.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Miss Sobriety.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Navigate Me.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Practice Makes Perfect.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Safe Ride.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - The Lock Down Denial.mp3 -C:/Users/Rik/Music/Artists/Cute Is What We Aim For/Rotation/Cute Is What We Aim For - Time.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Artbreaker I.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Artbreaker II.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - For Better Or Hearse.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Giving Up.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Hunt the Haunted.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Lilli Rose.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Matters At All.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Maybe Tomorrow.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Sunshine.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - The Best Is Yet To Come.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - The Morning Afterlife.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Undercover Lover.mp3 -C:/Users/Rik/Music/Artists/Kids In Glass Houses/Dirt/Kids In Glass Houses - Youngblood (Let It Out).mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - Anywhere Else But Here.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - Astronaut.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - Can't Keep My Hands Off You.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - Freaking Me Out.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - Gone Too Soon.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - Jet Lag.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - Last One Standing.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - Loser Of The Year.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - This Song Saved My Life.mp3 -C:/Users/Rik/Music/Artists/Simple Plan/Get Your Heart On!/Simple Plan - You Suck At Love.mp3 -C:/Users/Rik/Music/Various/The Von Bondies - C%60Mon C%60Mon.mp3 -C:/Users/Rik/Music/Various/White Stripes - Seven Nation Army.mp3 -C:/Users/Rik/Music/Artists/Futures/The Holiday/Futures - 16.mp3 -C:/Users/Rik/Music/Artists/Futures/The Holiday/Futures - Holiday.mp3 -C:/Users/Rik/Music/Artists/Futures/The Holiday/Futures - Sal Paradise.mp3 -C:/Users/Rik/Music/Artists/Futures/The Holiday/Futures - Take Me Home.mp3 -C:/Users/Rik/Music/Artists/Futures/The Holiday/Futures - Thank You.mp3 -C:/Users/Rik/Music/Artists/Futures/The Holiday/Futures - The Boy Who Cried Wolf.mp3 -C:/Users/Rik/Music/Artists/Futures/The Holiday/Futures - The Summer.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Audience of One.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Collapse (Post-Amerika).mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Elective Amnesia.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Entertainment.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - From Heads Unworthy.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Hairline Fracture.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Hero of War.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Kotov Syndrome.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Long Forgotten Sons.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Prayer of the Refugee.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Re-Education (Through Labor).mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Savior.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - The Dirt Whispered.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - The Strength to Go On.mp3 -C:/Users/Rik/Music/Artists/Rise Against/Appeal To Reason/Rise Against - Whereabouts Unknown.mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - A Place To Hide.mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - Death.mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - E.S.T..mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - Farewell To The Fairground.mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - Fifty On Our Foreheads.mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - From The Stars.mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - Nothing To Give.mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - The Price Of Love.mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - To Lose My Life.mp3 -C:/Users/Rik/Music/Artists/White Lies/To Lose My Life/White Lies - Unfinished Business.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - Be the Young.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - For You and Your Denial.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - Hang You Up.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - Hide.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - Life of Leaving Home.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - Promises.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - See Me Smiling.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - Sing for Me (Acoustic).mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - Sing for Me.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - Soundtrack.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - The Sound of You and Me.mp3 -C:/Users/Rik/Music/Artists/Yellowcard/When You're Through Thinking, Say Yes/Yellowcard - With You Around.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - Bang The Doldrums.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - Don't You Know Who I Think I Am.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - Fame.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - Hum Hallelujah.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - I'm Like A Lawyer With The Way I'm Always Trying To Get You Off (me+you).mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - I've Got All This Ringing In My Ears And None On My Fingers.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - Thanks For The Memories.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - The (After) Life Of The Party.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - The Carpal Tunnel Of Love.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - The Take Over, The Breaks Over.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - This Ain't A Scene, It's An Arms Race.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - Thriller.mp3 -C:/Users/Rik/Music/Artists/Fall Out Boy/Infinity On High/Fall Out Boy - You're Crashing, But You're No Wave.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Action Needs An Audience.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Coffee And Cigarettes.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Cut.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Evidence.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Heart Is Hard To Find.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Higher Devotion.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Invented.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Littlething.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Mixtape.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Movielike.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - My Best Theory.mp3 -C:/Users/Rik/Music/Artists/Jimmy Eat World/Invented/Jimmy Eat World - Stop.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Best Is Yet to Come.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Buried Beneath.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Faceless.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Feed the Machine.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Hymn for the Missing.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Let It Burn.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Lie to Me (Denial).mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Not Alone.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - The Outside.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Watch You Crawl.mp3 -C:/Users/Rik/Music/Artists/Red/Until We Have Faces/Red - Who We Are.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - Back To Go Again.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - Bittersweet Sundown.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - Fool With Dreams.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - Intro.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - Livin' So Divine.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - Photographs & Gasoline.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - The Burn.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - The Promise.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - Wake Up.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - WarZone.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - Weight of The World.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - You Stupid Girl.mp3 -C:/Users/Rik/Music/Artists/Framing Hanley/A Promise To Burn/Framing Hanley - You.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - (Fin).mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - A Whisper & A Clamour.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - Adelaide.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - Alexithymia.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - Debut.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - Dismantle. Repair.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - Godspeed.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - Hello Alone.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - Inevitable.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - Reclusion.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - The Promise.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - The Unwinding Cable Car.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - There Is A Light That Never Goes Dope.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - There Is No Mathematics To Love And Loss.mp3 -C:/Users/Rik/Music/Artists/Anberlin/Cities/Anberlin - Uncanny.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Blame Me! Blame Me!.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Breaking.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Breathe.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Burn Out Brighter (Northern Lights).mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Disappear.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Feel Good Drag.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Haight St.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Misearbile Visu (Ex Malo Bonum).mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Retrace.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Soft Skeletons.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - The Resistance.mp3 -C:/Users/Rik/Music/Artists/Anberlin/New Surrender/Anberlin - Younglife.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/Neon Bible/Arcade Fire - Antichrist Television Blues.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/Neon Bible/Arcade Fire - Black Mirror.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/Neon Bible/Arcade Fire - Black WaveBad Vibrations.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/Neon Bible/Arcade Fire - Intervention.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/Neon Bible/Arcade Fire - Keep The Car Running.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/Neon Bible/Arcade Fire - No Cars Go.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/Neon Bible/Arcade Fire - Ocean Of Noise.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/Neon Bible/Arcade Fire - Well & The Lighthouse, The.mp3 -C:/Users/Rik/Music/Artists/Arcade Fire/Neon Bible/Arcade Fire - Windowsill.mp3 -C:/Users/Rik/Music/Artists/Green Day/21st Century Breakdown/Green Day - %C2%A1Viva la Gloria!.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - 1990.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - Angry Johnny and the Radio.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - Bomboxes and Dictionaries.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - Drive.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - I Coul'da Been a Contender.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - I'da Called You Woody, Joe.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - Red in the Morning.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - We Came to Dance.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - We're Getting A Divorce, You Keep The Dinner.mp3 -C:/Users/Rik/Music/Artists/The Gaslight Anthem/Sink or Swim/The Gaslight Anthem - Wooderson.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Back To Prom.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Broken Man And The Dawn.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - End Of The Road.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Find That Soul.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Guitar Gangsters & Cadillac Blood.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Hallelujah Goat.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - I'm So Lonesome I Could Cry.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Light A Way.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Making Believe.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Mary Ann' s Place.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Maybellene I Hofteholder.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Still Counting.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - We.mp3 -C:/Users/Rik/Music/Artists/Volbeat/Guitar Gangsters & Cadillac Blood/Volbeat - Wild Rover Of Hell.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - Bulletproof Heart.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - Destroya.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - Party Poison.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - Planetary (Go!).mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - Save Yourself- I'll Hold Them Back.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - S-C-A-R-E-C-R-O-W.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - Sing.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - Summertime.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - The Kids From Yesterday.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - The Only Hope For Me Is You.mp3 -C:/Users/Rik/Music/Artists/My Chemical Romance/Danger Days - The True Lives Of The Fabulous Killjoys/My Chemical Romance - Vampire Money.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - Eyes Like Headlights.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - I Don't Dare.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - It's True.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - Life Is Wrong.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - No Direction.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - Satellites.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - Secrets Are Sinister.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - Shining Hours.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - Sideways Sideways Rain.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - Sirens In The Deep Sea.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Annie Wants a Baby.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Brendan's Death Song.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Dance, Dance, Dance.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Did I Let You Know.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Ethiopia.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Even You Brutus.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Factory of Faith.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Goodbye Hooray.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Happiness Loves Company.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Look Around.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Meet Me At the Corner.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Monarchy of Roses.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - Police Station.mp3 -C:/Users/Rik/Music/Artists/Red Hot Chili Peppers/I'm With You/Red Hot Chili Peppers - The Adventures of Rain Dance Maggie.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - An Anthem For The Young At Heart.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - Burdens Of The Past.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - Conviction.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - Shine.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - Something To Be Said.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - The Best Mistake.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - The Girl Who Destroys.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - The Good Life.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - Three Words.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - We Can't Fake This.mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - What Matters Most.mp3 -C:/Users/Rik/Music/Old/Nirvana - Smells Like Teen Spirit.mp3 -C:/Users/Rik/Music/Artists/10 Years Feeding/Feeding the Wolves/10 Years - Don't Fight It.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Broken Open.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Bulldozer.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Cold Toes On The Cold Floor.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Finally Begin.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Louder Than Ever.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Mine Is Yours.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Out Of The Wilderness.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Royal Blue.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Sensitive Kid.mp3 -C:/Users/Rik/Music/Artists/Cold War Kids/Mine Is Yours/Cold War Kids - Skip The Charades.mp3 -C:/Users/Rik/Music/Artists/Sum 41/Screaming Bloody Murder/Sum 41 - We're the Same.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - A Fortnight's Time.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - Books From Boxes.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - By The Monument.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - Girls Who Play Guitars.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - Karaoke Plays.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - Nosebleed.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - Our Velocity.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - Parisian Skies.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - Russian Literature.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - Sandblasted And Set Free.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - The Unshockable.mp3 -C:/Users/Rik/Music/Artists/Maximo Park/Our Earthly Pleasures/Maximo Park - Your Urge.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - 100MPH.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - Beerbottle.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - Could You Be The One.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - I Got Your Number.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - Innocent.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - Live 'N' Love.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - She's Alright.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - Show Me How.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - Stuck In A Rut.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - Trouble.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - Uppercut.mp3 -C:/Users/Rik/Music/Artists/Stereophonics/Keep Calm and Carry On/Stereophonics - Wonder.mp3 -C:/Users/Rik/Music/Artists/Foo Fighters/Greatest Hits/Foo Fighters - Everlong (Acoustic).mp3 -C:/Users/Rik/Music/Artists/Lifehouse/Smoke & Mirrors/Lifehouse - Everything (Live).mp3 -C:/Users/Rik/Music/Artists/Amber Pacific/Virtues/Amber Pacific - Forever.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - After Midnight.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Even If She Falls.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Fighting the Gravity.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Ghost On The Dance Floor.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Heart's All Gone (Interlude).mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Heart's All Gone.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Kaleidoscope.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Love Is Dangerous.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Mh 4.18.2011.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Natives.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Snake Charmer.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - This Is Home.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Up All Night.mp3 -C:/Users/Rik/Music/Artists/Blink-182/Neighborhoods/Blink-182 - Wishing Well.mp3 -C:/Users/Rik/Music/Artists/Longwave/Secrets Are Sinister/Longwave - The Devil And The Liar.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - All I Can Do.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Believe It.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Can You Handle Me.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Catwalk Criminal.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Damn Those Eyes.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Dreamer.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Fearless.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Hold On to the World.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - I Will Keep My Head Down.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - In Over My Head.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - It's London Calling.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Let It Be.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Love Over Healing.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - My Best Wasn't Good Enough.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - No Surrender.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Rain Down On Me.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Scream.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Shot of a Gun.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - So Glad You Made It.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Something to Say.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Wanna Make It Happen.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - Where Do I Go Now.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - A Hopeful Transmission.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Charlie Brown.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Don't Let It Break Your Heart.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Every Teardrop Is a Waterfall.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Hurts Like Heaven.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - M.M.I.X..mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Major Minus.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Mylo Xyloto.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Paradise.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Princess of China.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - U.F.O..mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Up in Flames.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Up with the Birds.mp3 -C:/Users/Rik/Music/Artists/Coldplay/Mylo Xyloto/Coldplay - Us Against the World.mp3 -C:/Users/Rik/Music/Artists/Kane/Singles Only/Kane - High Places.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - Bad Love.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - Bigger Than Us.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - Come Down.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - Holy Ghost.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - Is Love.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - Peace & Quiet.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - Strangers.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - Streetlights.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - The Power & The Glory.mp3 -C:/Users/Rik/Music/Artists/White Lies/Ritual/White Lies - Turn The Bells.mp3 -C:/Users/Rik/Music/Artists/Destine/Destine - Thousand Miles.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - Dive Into The Blue Sky.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - Eyes Gone Blind.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - Fallen Leaves.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - Rain Down On Me.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - Raining.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - Setting Sails.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - The Borderline.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - The Enemy.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - Wasted.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - What We Are.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - Where Do We Go.mp3 -C:/Users/Rik/Music/Artists/The Seer/Heading for the Sun/The Seer - Wishful Thinking.mp3 -C:/Users/Rik/Music/Old/Bruce Springsteen/Bruce Springsteen - The River.mp3 -C:/Users/Rik/Music/Archive/Artists/Snow Patrol/Fallen Empires/Snow Patrol - Called Out In The Dark.mp3 -C:/Users/Rik/Music/Archive/Artists/Snow Patrol/Fallen Empires/Snow Patrol - This Isn't Everything You Are.mp3 -C:/Users/Rik/Music/Archive/Artists/The Wombats/This Modern Glitch/The Wombats - Techno Fan.mp3 -C:/Users/Rik/Music/Archive/Artists/The Wombats/This Modern Glitch/The Wombats - Tokyo (Vampires & Wolves).mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - A Lot Like Me.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Fix You.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Half-Truism.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Hammerhead.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Kristy, Are You Doing Okay.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Let's Hear It For Rock Bottom.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Nothingtown.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - O.C. Life.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Rise And Fall.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Stuff Is Messed Up.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Takes Me Nowhere.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - Trust In You.mp3 -C:/Users/Rik/Music/Artists/The Offspring/Rise and Fall Rage and Grace/The Offspring - You're Gonna Go Far, Kid.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - Bottoms Up.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - Don't Ever Let It End.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - Everything I Wanna Do.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - Gotta Get Me Some.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - Holding On to Heaven.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - Kiss It Goodbye.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - Lullaby.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - Midnight Queen.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - This Means War.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - Trying Not to Love You.mp3 -C:/Users/Rik/Music/Artists/Nickelback/Here and Now/Nickelback - When We Stand Together.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - A Lack of Understanding.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - All in White.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - Blow It Up.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - Family Friend.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - If You Wanna.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - N%C3%B8rgaard.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - Post Break-Up Sex.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - Under Your Thumb.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - Westsuit.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - Wolf Pack.mp3 -C:/Users/Rik/Music/Artists/The Vaccines/What Did You Expect From The Vaccines/The Vaccines - Wreckin' Bar.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - Call Your Name.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - Every Time You Turn Around.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - Ghost Of Me.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - Learn My Lesson.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - Life After You.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - No Surprise.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - Open Up Your Eyes.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - September.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - Supernatural.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - Tennessee Line.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - What I Meant To Say.mp3 -C:/Users/Rik/Music/Artists/Daughtry/Leave This Town/Daughtry - You Don't Belong.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - Black And Blue.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - Ghost.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - Heaven.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - Lament.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - Love My Life.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - Nobody's Listening.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - Switch.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - Terrible End.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - The Long & Dangerous Sea.mp3 -C:/Users/Rik/Music/Artists/Moke/The Long & Dangerous Sea/Moke - Windows Of Hope.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Ashtray Heart.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Battle for the Sun.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Breathe Underwater.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Bright Lights.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Come Undone.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Devil in the Details.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - For What It's Worth.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Happy You're Gone.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Julien.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Kings of Medicine.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Kitty Litter.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - Speak in Tongues.mp3 -C:/Users/Rik/Music/Artists/Placebo/Battle for the Sun/Placebo - The Never-Ending Why.mp3 -C:/Users/Rik/Music/Artists/Keane/Night Train/Keane - Back In Time.mp3 -C:/Users/Rik/Music/Artists/Keane/Night Train/Keane - Clear Skies.mp3 -C:/Users/Rik/Music/Artists/Keane/Night Train/Keane - House Lights.mp3 -C:/Users/Rik/Music/Artists/Keane/Night Train/Keane - Ishin Denshin (You've Got To Help Yourself).mp3 -C:/Users/Rik/Music/Artists/Keane/Night Train/Keane - Looking Back.mp3 -C:/Users/Rik/Music/Artists/Keane/Night Train/Keane - My Shadow.mp3 -C:/Users/Rik/Music/Artists/Keane/Night Train/Keane - Stop For a Minute.mp3 -C:/Users/Rik/Music/Artists/Keane/Night Train/Keane - Your Love.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - A Bad Dream.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Atlantic.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Broken Toy.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Crystal Ball.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Hamburg Song.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Is It Any Wonder.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Leaving So Soon.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Let It Slide .mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Nothing In My Way.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Put It Behind You.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - The Frog Prince.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - The Iron Sea.mp3 -C:/Users/Rik/Music/Artists/Keane/Under The Iron Sea/Keane - Try Again.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - 6 Months.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - Arizona.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - Candles.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - Homecoming.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - How You Love Me Now.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - Hurricane Streets.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - Josey.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - Obvious.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - Run, Don't Walk.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - Set Off.mp3 -C:/Users/Rik/Music/Artists/Hey Monday/Hold On Tight/Hey Monday - Should've Tried Harder.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Anything.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Breakdown.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Cover Me.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Epilogue.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Mistakes we Knew we Were Making.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Painless.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Prologue.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Ready and Waiting to Fall.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Someone Else's Arms.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - Suspension.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - The Everglow.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - The Ocean.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - The Sun and the Moon.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - This is the Countdown.mp3 -C:/Users/Rik/Music/Artists/Mae/The Everglow/Mae - We're So Far Away.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - All I'm Losing Is Me.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - At Your Funeral.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - Cars And Calories.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - Certain Tragedy.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - Firefly.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - Freakish.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - Jukebox Breakdown.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - Nightingale.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - See You.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - This Is Not An Exit.mp3 -C:/Users/Rik/Music/Artists/Saves the Day/Saves the Day - Your Ghost Takes Flight.mp3 \ No newline at end of file diff --git a/java/exec.sound/src/main/resources/txt/testfiles.txt b/java/exec.sound/src/main/resources/txt/testfiles.txt deleted file mode 100644 index 6c2c2b6..0000000 --- a/java/exec.sound/src/main/resources/txt/testfiles.txt +++ /dev/null @@ -1,12 +0,0 @@ -junk (with or without header) -PCM_SIGNED 8000.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian --r 8k -t s16 -c 1 -e signed-integer - - -out (without header) -PCM_SIGNED 8000.0 Hz, 16 bit, stereo, 4 bytes/frame, big-endian --r 128k -t s32 -c 2 -2 signed integer [reasonable] - -out (without header) -PCM_SIGNED 192000.0 Hz, 16 bit, stereo, 4 bytes/frame, little-endian --r 192k -t s16 -c 2 [-e signed-integer] \ No newline at end of file diff --git a/java/exec.sound/src/test/java/test/SoundAudit.java b/java/exec.sound/src/test/java/test/SoundAudit.java deleted file mode 100644 index 1d7373a..0000000 --- a/java/exec.sound/src/test/java/test/SoundAudit.java +++ /dev/null @@ -1,71 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer <rik.veenboer@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -package test; - -import javax.sound.sampled.*; -public class SoundAudit { - public static void main(String[] args) { try { - System.out.println("OS: "+System.getProperty("os.name")+" "+ - System.getProperty("os.version")+"/"+ - System.getProperty("os.arch")+"\nJava: "+ - System.getProperty("java.version")+" ("+ - System.getProperty("java.vendor")+")\n"); - for (Mixer.Info thisMixerInfo : AudioSystem.getMixerInfo()) { - System.out.println("Mixer: "+thisMixerInfo.getDescription()+ - " ["+thisMixerInfo.getName()+"]"); - Mixer thisMixer = AudioSystem.getMixer(thisMixerInfo); - for (Line.Info thisLineInfo:thisMixer.getSourceLineInfo()) { - if (thisLineInfo.getLineClass().getName().equals( - "javax.sound.sampled.Port")) { - Line thisLine = thisMixer.getLine(thisLineInfo); - thisLine.open(); - System.out.println(" Source Port: " - +thisLineInfo.toString()); - for (Control thisControl : thisLine.getControls()) { - System.out.println(AnalyzeControl(thisControl));} - thisLine.close();}} - for (Line.Info thisLineInfo:thisMixer.getTargetLineInfo()) { - if (thisLineInfo.getLineClass().getName().equals( - "javax.sound.sampled.Port")) { - Line thisLine = thisMixer.getLine(thisLineInfo); - thisLine.open(); - System.out.println(" Target Port: " - +thisLineInfo.toString()); - for (Control thisControl : thisLine.getControls()) { - System.out.println(AnalyzeControl(thisControl));} - thisLine.close();}}} - } catch (Exception e) {e.printStackTrace();}} - public static String AnalyzeControl(Control thisControl) { - String type = thisControl.getType().toString(); - if (thisControl instanceof BooleanControl) { - return " Control: "+type+" (boolean)"; } - if (thisControl instanceof CompoundControl) { - System.out.println(" Control: "+type+ - " (compound - values below)"); - String toReturn = ""; - for (Control children: - ((CompoundControl)thisControl).getMemberControls()) { - toReturn+=" "+AnalyzeControl(children)+"\n";} - return toReturn.substring(0, toReturn.length()-1);} - if (thisControl instanceof EnumControl) { - return " Control:"+type+" (enum: "+thisControl.toString()+")";} - if (thisControl instanceof FloatControl) { - return " Control: "+type+" (float: from "+ - ((FloatControl) thisControl).getMinimum()+" to "+ - ((FloatControl) thisControl).getMaximum()+")";} - return " Control: unknown type";} -} diff --git a/java/exec.sound/src/test/java/test/Test.java b/java/exec.sound/src/test/java/test/Test.java deleted file mode 100644 index a6fa8af..0000000 --- a/java/exec.sound/src/test/java/test/Test.java +++ /dev/null @@ -1,56 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer <rik.veenboer@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -package test; - -import javax.sound.sampled.AudioFormat; - -import sound.Consumer; -import sound.Producer; -import sound.Source; -import sound.consumer.Port; -import sound.consumer.Shoutcast; -import sound.producer.Stream; - -public class Test { - public static void main(String[] args) { - AudioFormat audioFormat = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, 48000f, 16, 2, 4, 48000f, true); - try { - //Producer p1 = new Target("Line-In (Creative SB X-Fi)"); - //Producer p2 = new Target("Line 1 (Virtual Audio Cable)", audioFormat); - //p2.start(); - Producer p3 = new Stream("http://ics2gss.omroep.nl:80/3fm-bb-mp3"); - Producer p4 = new Stream("http://sc7.mystreamserver.com:8004"); - - Consumer c1 = new Source("Java Sound Audio Engine"); - Consumer c2 = new Port("Speakers (Creative SB X-Fi)"); - Consumer c3 = new Shoutcast(); - //Consumer c4 = new Player(); - //Consumer c5 = new Writer(new File("stream.out")); - - //Utils.write(p3.getInputStream(), new File("stream.out")); - //Utils.play(p3.getInputStream()); - c3.start(p4); - - //while (true) { - //Thread.sleep(300000); - //c1.stop(); - //} - } catch (Exception e) { - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/java/exec.sound/src/test/java/test/lines/Main.java b/java/exec.sound/src/test/java/test/lines/Main.java deleted file mode 100644 index 6712715..0000000 --- a/java/exec.sound/src/test/java/test/lines/Main.java +++ /dev/null @@ -1,50 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer <rik.veenboer@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -package test.lines; - -import javax.sound.sampled.AudioFormat; -import javax.sound.sampled.AudioSystem; -import javax.sound.sampled.Line; -import javax.sound.sampled.LineUnavailableException; -import javax.sound.sampled.Mixer; -import javax.sound.sampled.SourceDataLine; -import javax.sound.sampled.TargetDataLine; - -public class Main { - public static void main(String[] args) { - System.out.println(System.getProperty("javax.sound.sampled.SourceDataLine")); - - new AudioFormat(44100, 16, 2, true, false); - - for (Mixer.Info mixerInfo : AudioSystem.getMixerInfo()) { - Mixer mixer = AudioSystem.getMixer(mixerInfo); - for (Line.Info lineInfo : mixer.getTargetLineInfo()) { - try { - Line line = mixer.getLine(lineInfo); - if (mixer.isLineSupported(lineInfo)) { - if (line instanceof TargetDataLine) { - new TargetLine(mixer, (TargetDataLine) line); - }/* else if (line instanceof SourceDataLine) { - new SourceLine(mixer, (SourceDataLine) line); - }*/ - } - } catch (LineUnavailableException e) {} - } - - } - } -} diff --git a/java/exec.sound/src/test/java/test/lines/SourceLine.java b/java/exec.sound/src/test/java/test/lines/SourceLine.java deleted file mode 100644 index b2c2727..0000000 --- a/java/exec.sound/src/test/java/test/lines/SourceLine.java +++ /dev/null @@ -1,35 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer <rik.veenboer@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -package test.lines; - -import javax.sound.sampled.Mixer; -import javax.sound.sampled.SourceDataLine; - -public class SourceLine { - //private Mixer mixer; - private SourceDataLine line; - - public SourceLine(Mixer mixer, SourceDataLine line) { - //this.mixer = mixer; - this.line = line; - System.out.println("SOURCE " + mixer.getMixerInfo().getName() + " || " + line.getLineInfo()); - } - - public int write(byte[] bytes, int offset, int length) { - return line.write(bytes, offset, length); - } -} diff --git a/java/exec.sound/src/test/java/test/lines/TargetLine.java b/java/exec.sound/src/test/java/test/lines/TargetLine.java deleted file mode 100644 index b7c74c1..0000000 --- a/java/exec.sound/src/test/java/test/lines/TargetLine.java +++ /dev/null @@ -1,35 +0,0 @@ -/** - * Copyright (C) 2016 Rik Veenboer <rik.veenboer@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -package test.lines; - -import javax.sound.sampled.Mixer; -import javax.sound.sampled.TargetDataLine; - -public class TargetLine { - //private Mixer mixer; - private TargetDataLine line; - - public TargetLine(Mixer mixer, TargetDataLine line) { - //this.mixer = mixer; - this.line = line; - System.out.println("TARGET " + mixer.getMixerInfo().getName() + " || " + line.getLineInfo()); - } - - public int read(byte[] bytes, int offset, int length) { - return line.read(bytes, offset, length); - } -} diff --git a/java/settings.gradle b/java/settings.gradle index c3e495e..391ed5b 100644 --- a/java/settings.gradle +++ b/java/settings.gradle @@ -23,6 +23,5 @@ include ':device.rumblepad' include ':device.wiimote' include ':device.xbox360' include ':exec.mimis' -include ':exec.sound' include ':exec.test' include ':exec.connected' \ No newline at end of file