Jump to content

Pandora Timeshifting App: Main Discussion Thread


irieb

Recommended Posts

i have my doubts that srccode appended to beta 7.2 archive is not the latest version.

Anyway, i confirmed it work almost well :wink:

Oops! My bad!

The latest version (beta 7.2) has been updated with the appropriate src files now (thanks to barley!!! for sending those!) and should probably be updated if you are tinkering with the source.

They are availble here:

http://wildandbad.com/pandoras-jar/

So i have been trying to work on an older version of the src..

oh boy.. well i got my southern comfort.. so im set...

darn it over 100 out.. the pool is looking good...

umm that link isnt working...

That'll teach me to type rather than copy-paste.

http://wildandbad.com/article/pandoras-jar

Link to comment
Share on other sites

  • Replies 1.4k
  • Created
  • Last Reply

Top Posters In This Topic

okay now when i go to compile with the 7.2 code, im getting

all sorts of issues out of the box.

import com.jacob.com.*; package does not exist in the apple/itunes

folder... ????

jacob under Mac? Someone needs to get their ass kicked, that's for sure.

Jacob stands for JAva to COm Bridge. Only Windows uses COM. You could download the jar for it, add it to the libs directory, modify the build.xml so that it's included in the classpath during compilation, but whatever it is that needs it needs to be turned OFF on the Mac.

Link to comment
Share on other sites

okay now when i go to compile with the 7.2 code, im getting

all sorts of issues out of the box.

import com.jacob.com.*; package does not exist in the apple/itunes

folder... ????

As cooper said update the classpath in the build.xml, also you will need to update the build.default.properties

my bad, i forgot to package these files in the last update :roll:

I have included the corrections

mrdave can you please update the files in the 7.2 dist with the changes - thanks!!!

revised build.xml

<?xml version="1.0" encoding="UTF-8"?>



<project name="PANDORA" basedir="." default="help">



    <target name="help">

        <echo>

This is the build script for the Pandora Timeshifting program.

It is used to compile the pandora.jar file.



To compile your own version of the pandora.jar file you need to have version 1.5

or later of the Sun java compiler installed on your system as well as a somewhat

current version of ant. If you're seeing this, chances are you've already met

that requirement. :)



To get this script to compile a pandora.jar file for you, execute the following

command:

    ant pandora



If compilation succeeds succesfully, a new pandora.jar file can be found in the

'dist' directory.



To create the javadoc documentation for this release (well, what little there is

anyways), run the following command:

    ant build_docs

On completion the assembled javadoc documentation can be found in the 'docs'

directory.

        </echo>

    </target>



    <!--================================================================================
===-->

    <!--    PARAMETERS    -->

    <!--================================================================================
===-->



    <property file="build.personal.properties"/>

    <property file="build.default.properties"/>







    <!--================================================================================
===-->

    <!--  CLASSPATH   -->

    <!--================================================================================
===-->

    <path id="build-classpath">

        <!-- The files that need to be in the classpath to build the application. -->

        <pathelement location="${lib.dir}/JID3.jar"/>

        <pathelement location="${lib.dir}/jacob.jar"/>

        <pathelement location="${lib.dir}/Tidy.jar"/>

        <pathelement location="${lib.dir}/activation-1.0.2_02.jar"/>

        <pathelement location="${lib.dir}/commons-logging-1.0.4.jar"/>

        <pathelement location="${lib.dir}/dom4j-1.6.1.jar"/>

        <pathelement location="${lib.dir}/httpunit.jar"/>

        <pathelement location="${lib.dir}/js.jar"/>

        <pathelement location="${lib.dir}/log4j-1.2.12.jar"/>

        <pathelement location="${lib.dir}/nekohtml.jar"/>

        <pathelement location="${lib.dir}/servlet.jar"/>

        <pathelement location="${lib.dir}/xercesImpl.jar"/>

        <pathelement location="${lib.dir}/xmlParserAPIs.jar"/>

    </path>



    <!--================================================================================
===-->

    <!-- Target: clean                                                                     -->

    <!-- Description: Remove the directories that hold the class- and jar-files.           -->

    <!--================================================================================
===-->

    <target name="clean" description="Clean the build and dist directory" >

        <!-- Clear out the directory that holds the compiled sources. -->

        <delete includeEmptyDirs="true" failonerror="false">

            <fileset dir="${build.dir}" includes="**/*.*" />

        </delete>

        <!-- Clear out the directory into which the jars are placed. -->

        <delete includeEmptyDirs="true" failonerror="false">

            <fileset dir="${dist.dir}" includes="**/*.*" />

        </delete>



    </target>



    <!--================================================================================
===-->

    <!-- Target: init                                                                      -->

    <!-- Description: Create the directories that we will put files in.                    -->

    <!--================================================================================
===-->

    <target name="init" depends="clean">

        <tstamp>

            <format property="TODAY" pattern="dd-MM-yyyy HH.mm.ss" />

        </tstamp>

        <echo message="start init: ${TODAY} "/>

        <mkdir dir="${build.dir}" />

        <mkdir dir="${dist.dir}" />

    </target>



    <!--================================================================================
===-->

    <!-- Target: compile                                                                   -->

    <!-- Description: Compile all classes.                                                 -->

    <!--================================================================================
===-->

    <target name="compile" description="Compile all classes" depends="init">

        <javac debug="true"  classpathref="build-classpath" destdir="${build.dir}">

            <src path="${source.dir}"/>

            <include name="**/*.java"/>

        </javac>

    </target>



    <!--================================================================================
===-->

    <!-- Target: pandora                                                                   -->

    <!-- Description: Put together the pandora.jar file.                                   -->

    <!--================================================================================
===-->

    <target name="pandora" description="Put together the pandora.jar file." depends="compile">

        <jar destfile="${dist.dir}/${app.filename}" >

            <fileset dir="${build.dir}" includes="**/*.*" />

            <fileset dir="${source.dir}" includes="*.properties" />

            <fileset dir="${source.dir}" includes="images/*.*" />

            <manifest>

                <attribute name="Release" value="${app.release}"/>

                <attribute name="Client" value="${app.client}"/>

                <attribute name="Built-On" value="${TODAY}"/>

                <attribute name="Java-Version" value="${java.version}"/>

                <attribute name="Username" value="${user.name}"/>

                <attribute name="Class-Path" value="${app.classpath}"/>

                <attribute name="Main-Class" value="client.Client"/>

            </manifest>

        </jar>

    </target>



    <!--================================================================================
===-->

    <!-- Target: docs                                                                      -->

    <!-- Description: Create all Jars en WAR files necessary for the EAR-file.             -->

    <!--================================================================================
===-->

    <target name="docs" description="Generate JavaDoc documentation of all Java sources.">

        <echo message="Generate JavaDoc documentation"/>

        <delete dir="${doc.dir}" failonerror="false"/>

        <mkdir dir="${doc.dir}"/>

            <!-- additionalparam="-tag date:X -tag company:X -tag todo:X" -->

        <javadoc

            sourcepath="${source.dir}"

            destdir="${doc.dir}"

            classpathref="main-classpath"

            author="true"

            public="true"

            version="true"

            stylesheetfile="${resource.dir}/javadoc.css"

            use="true"

            windowtitle="${app.client} ${app.name} ${app.release}"

            doctitle="${app.name} ${app.release}"

            packagenames="nl.sscsp.*">

            <link href="http://java.sun.com/j2se/1.5/docs/api/"/>

            <link href="http://jakarta.apache.org/log4j/docs/api/"/>

        </javadoc>

        <!-- Copy project specific content (HTML & CSS) -->

        <filter token="TITLE" value="${app.name} ${app.release}"/>

        <copy file="${resource.dir}/javadoc.css" tofile="${doc.dir}/javadoc.css" overwrite="true"/>

    </target>

</project>

revised build.default.properties

#############################################################

#

# Default global properties for this build.

#

# To override these settings, add a setting with the exact same

# name but your personal value to the build.personal.properties

# file.

#

#############################################################



#--------------------------------------------------------------------

# Workspace

#--------------------------------------------------------------------

project.root.dir    = .

source.dir            = ${project.root.dir}/src

build.dir            = ${project.root.dir}/build

dist.dir            = ${project.root.dir}/dist

lib.dir                = ${project.root.dir}/lib

doc.dir                = ${project.root.dir}/doc



#--------------------------------------------------------------------

# Properties for the application

#--------------------------------------------------------------------



app.classpath        = lib/nekohtml.jar lib/log4j-1.2.12.jar lib/xmlParserAPIs.jar lib/JID3.jar lib/Tidy.jar lib/commons-logging-1.0.4.jar lib/activation-1.0.2_02.jar lib/httpunit.jar lib/servlet.jar lib/xercesImpl.jar lib/js.jar lib/dom4j-1.6.1.jar lib/jacob.jar

app.filename        = pandora.jar

app.client            = Pandora's Jar

app.name            = Pandora's Jar

app.release            = 6



#------------------------------------------------------------

# Javadoc options

#------------------------------------------------------------



javadoc.author        = true

javadoc.private        = true

javadoc.use            = true

javadoc.version        = true

Link to comment
Share on other sites

Forgive me because I'm WAY over my head doing this. The instructions I've gotten from reading this forum and the noob guide mention doing the vi fix but I actually don't understand one of the directions to "make this an executable file." If I copy and paste the actually pandora.sh scripting into a terminal then it tells me

"Unable to access jarfile pandora.jar

[1]+ Exit 1 java -jar pandora.jar $port"

I assume this is because I'm not opening it in the right place.

You assumed correctly. Go to the directory where you unpacked the stuff. When you list the directory (the ls command) you should see the pandora.jar file. Now paste it.

Cooper thanks for all the tips. I'm still not sure about this last one though. What I'm doing now to open pandora.sh is opening a terminal window, dragging the pandora.sh file from it's unpacked folder onto the terminal (because this seems to easily show the file path) and then hitting return. This seems to run the file but it still says "Unable to access jarfile pandora.jar" Where do I paste it to after listing it etc.? Do I need to enter the file path to pandora.jar into the pandora.sh script somewhere?

Thanks again.

Link to comment
Share on other sites

Guest t3chn0b0y
mrdave can you please update the files in the 7.2 dist with the changes - thanks!!!

I've just uploaded it. Looks like we BOTH fumbled the ball.

Only one issue when i compile its

saying Mp3Processor.java uses unchecked or unsafe operations..

but all and all it appears to be completely operationable when

compiled without any glitches.. :) thanx....

Link to comment
Share on other sites

Great app!

A few suggestions:

-The ability to minimize the java window to the system tray (automatically?) to prevent accidentally closing it.

-Adjustable interval for cruise control grabbing; sometimes 30s isn't enough.

-Perhaps customizable taggings so the station can go in comments/genres for iTunes.

Thanks, this rocks.

Link to comment
Share on other sites

Cooper thanks for all the tips. I'm still not sure about this last one though. What I'm doing now to open pandora.sh is opening a terminal window, dragging the pandora.sh file from it's unpacked folder onto the terminal (because this seems to easily show the file path) and then hitting return. This seems to run the file but it still says "Unable to access jarfile pandora.jar" Where do I paste it to after listing it etc.? Do I need to enter the file path to pandora.jar into the pandora.sh script somewhere?

Thanks again.

Lets say you have a folder on your desktop called pandoras and that the pandoras.jar file actually resides in this folder. What you need to do is this. Open terminal, and do

cd Desktop/pandoras

then type

./pandora.sh

Do that and you will be good to go.

Link to comment
Share on other sites

Wildandbad.com is going to be up and down for the next few days.

I've changed ISPs and sso it'll mean adjusting to the new way of doing things.

FOR NOW...http://72.81.231.172:8080/

Will get you there. But you'll have to use port 8080 for everything until I get the redirect in place.

Sorry for any problems

Link to comment
Share on other sites

We're sorry, the minimized pandora player has moved.

Please update your bookmark to http://www.pandora.com?cmd=mini .

Well, except integration into the main window, it still works.

I changed
<iframe src="http://www.pandora.com/?cmd=tunermini" scrolling=no>

to

<iframe src="http://www.pandora.com?cmd=mini" scrolling=no>

and it seems to work. But, there are problems. The Pandora mini window is misplaced within the iframe so that I can not login.

Check this out

1379472960658153099_rs.jpg

Ideas?

Link to comment
Share on other sites

Hi all... new here.

The simplest way to get everything back to normal would be to change the PandoraGrabber.html and pandorajar.css (located in Pandoraskinsdefaultcss) to incorporate the following changes:

In PandoraGrabber.html make sure the IFrame points to the new location of the miniplayer:

            <iframe src="http://www.pandora.com/?cmd=mini" scrolling=no></iframe>

in the pandorajar.css find the section named #TunerContainer and remove it, and everything within it (That means all lines within the { } section just below the #TunerContainer line) and replace with the following:

#TunerContainer {

    position:relative;

    width:640px;

    height:250px;

    overflow:hidden;

    margin:auto;}



#TunerContainer iframe {

    width:684px;

    height:360px;

    margin-left:-44px;

    margin-top:-110px;   

    border:0 solid;

 }

That should make the player look normal again...

/uMan

Link to comment
Share on other sites

The simplest way to get everything back to normal would be to change the PandoraGrabber.html and pandorajar.css (located in Pandoraskinsdefaultcss) to incorporate the following changes:That should make the player look normal again...
Thanks man! Works great!
Link to comment
Share on other sites

Hi all... new here.

The simplest way to get everything back to normal would be to change the PandoraGrabber.html and pandorajar.css (located in Pandoraskinsdefaultcss) to incorporate the following changes:

In PandoraGrabber.html make sure the IFrame points to the new location of the miniplayer:

            <iframe src="http://www.pandora.com/?cmd=mini" scrolling=no></iframe>

in the pandorajar.css find the section named #TunerContainer and remove it, and everything within it (That means all lines within the { } section just below the #TunerContainer line) and replace with the following:

#TunerContainer {

    position:relative;

    width:640px;

    height:250px;

    overflow:hidden;

    margin:auto;}



#TunerContainer iframe {

    width:684px;

    height:360px;

    margin-left:-44px;

    margin-top:-110px;   

    border:0 solid;

 }

That should make the player look normal again...

/uMan

Well this fixes it's appearance very nicely, but when I try to rip a song I get this error in the Pandoras Jar log window.

unable to rip MP3 unable to find file make sure you have Pandora running in a FIRFOX browser

And, yes, I am running it in the most recent Firefox.

Link to comment
Share on other sites

I followed the instructions provided by Xellos and all works well for me.

my system:

  • Windows XP Service Pack2

Firefox 1.5.0.4

Flash Payer 8

Pandoras Jar pandora.beta.7.2 with Xellos fix

I heard there where some issues running pandoras jar using flash player 9

Link to comment
Share on other sites

Hi all... new here.

The simplest way to get everything back to normal would be to change the PandoraGrabber.html and pandorajar.css (located in Pandoraskinsdefaultcss) to incorporate the following changes:

In PandoraGrabber.html make sure the IFrame points to the new location of the miniplayer:

            <iframe src="http://www.pandora.com/?cmd=mini" scrolling=no></iframe>

in the pandorajar.css find the section named #TunerContainer and remove it, and everything within it (That means all lines within the { } section just below the #TunerContainer line) and replace with the following:

#TunerContainer {

    position:relative;

    width:640px;

    height:250px;

    overflow:hidden;

    margin:auto;}



#TunerContainer iframe {

    width:684px;

    height:360px;

    margin-left:-44px;

    margin-top:-110px;   

    border:0 solid;

 }

That should make the player look normal again...

/uMan

Well this fixes it's appearance very nicely, but when I try to rip a song I get this error in the Pandoras Jar log window.

unable to rip MP3 unable to find file make sure you have Pandora running in a FIRFOX browser

And, yes, I am running it in the most recent Firefox.

The "fix" i wrote does nothing else but link to the new miniplayer and display only part of the new (advertisment-infected) miniplayer in the IFrame to align it correctly and to "remove" the banners.

This won't affect the way pandorasjar work in any way so you have to presume there is something else wrong with your setup. Perhaps, as someone mentioned, you have a version of flash player or firefox that doesn't work perfectly.

Are you using the latest pandoras.jar?

/uMan

Link to comment
Share on other sites

I followed the instructions provided by Xellos and all works well for me.

my system:

  • Windows XP Service Pack2

Firefox 1.5.0.4

Flash Payer 8

Pandoras Jar pandora.beta.7.2 with Xellos fix

I heard there where some issues running pandoras jar using flash player 9

Hey! Xellos fix?? UnMasters fix, if you please!

Infringement!

:wink:

/uMan

Link to comment
Share on other sites

Updated Pandora's Jar (7.3)

Changes:

* Fixed URL to mini player

* Fixed positioning of Mini Player (thanks unmaster!)

* Added style switcher

* Added "Backstage" button

* Bundled l0ki76117 skins with distro. (thanks!)

* cleaned out some redundant files

* added 'favorites' icon

* added process?version (in utils/Constants.java)

Check the unofficial page and the N00bs guide for more info

Link to comment
Share on other sites

I followed the instructions provided by Xellos and all works well for me.

my system:

  • Windows XP Service Pack2

Firefox 1.5.0.4

Flash Payer 8

Pandoras Jar pandora.beta.7.2 with Xellos fix

I heard there where some issues running pandoras jar using flash player 9

Hey! Xellos fix?? UnMasters fix, if you please!

Infringement!

:wink:

/uMan

Heh. It can be confusing with all the quoting I suppose.

I am running Pandora's Jar 7.2 and this never happened before Pandora updated the mini client. However, this isn't happening all the time. It happened a few times after I updated the link to the new mini-client but not every time. The reason I posted my reply was because the first 3 or 4 times I tried ripping it gave me that message. Though it has worked for me most of the times since then.

I think I will try this 7.3 that MrDave just posted. Though it doesn't appear to have changed anything that would affect that.

Xellos

Link to comment
Share on other sites

Guest t3chn0b0y

Im using the 7.3 and it appears to be stuck saying its initiating mp3 rip but doing nothing... I will have to look it over tonight after i get back from my classes. I got the latest of everything thing installed, i cleaned the cache, but to no success... :twisted: appears to be grabbing the wrong songs and tagging them... i went ahead and added the 7.2 pandora.jar to the 7.3 setup to to see if it would go okay.. it would rip them in correct order..

last.fm keeps giving me a wrong protocol error so i had to disable it also.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...