JEmplode 2.0b11

Posted by: mschrag

JEmplode 2.0b11 - 13/02/2002 22:36

After much laziness, the next official JEmplode release is out... snag it at http://www.jempeg.org or http://www.sourceforge.net/projects/jempeg

Mike
Posted by: tms13

Re: JEmplode 2.0b11 - 14/02/2002 05:05

A bug report - it still isn't using ISO-8859.1 to match the player. All non-ASCII characters in playlist and track names appear as square boxes, and if I edit their properties, the name on the player is changed to have question-marks in those positions.
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 06:33

Does this only happen on Mac OS X? I think it works on Windows... Can you give me an example character (ASCII char #) to try? If my first sentence is true, then I wonder if there is a bug in OS X Java, because I thought the default font was supposed to be an 8859 font. I'll look into it...

Thanks
Mike
Posted by: tms13

Re: JEmplode 2.0b11 - 14/02/2002 06:48

I'm using Linux (2.4,10ish, Blackdown J2SE 1.3.1).

All accented characters are affected - one example is for the playlist "Nŕdurra" (that's a-grave after the N).

LC_ALL=en_GB

I don't think it's merely a font issue, as writing back to the player didn't preserve the characters. Do you use the default String/byte converters anywhere (e.g. new String(byte[]) or String.getBytes() without specifying an encoding - or equivalently, new StreamReader(InputStream) or new StreamWriter(OutputStream)?
Posted by: Nosferatu

Re: JEmplode 2.0b11 - 14/02/2002 07:13

Heah That's GREAT !!!!!

I like the real time grab sreen ....

Now what i'd like is a Hijack Updater from JEMplode , that would Rock !!!!

Again Congratulations !!!
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 07:18

Interesting ... I think you might be right. I need to look into it, but I'm basically doing a (this is summarized):

String title = <whateveryoutyped>;
...
ByteArrayOutputStream baos = new ByteArrayOutputStream();
baos.print(title);

So the question is, what is that doing behind the scenes......

Mike
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 07:22

I actually don't use Hijack (I know, I'm behind the times )... What is the Hijack updater and what's required to implement it? Is this like the Emplode upgrade tool? (i.e. a way to flash a new kernel on?), because we do have that ... Maybe it can be adapted.
Posted by: tms13

Re: JEmplode 2.0b11 - 14/02/2002 07:22

In reply to:

ByteArrayOutputStream baos = new ByteArrayOutputStream();
baos.print(title);




Are you sure? ByteArrayOutputStream doesn't have any print() methods, at least in 1.3.1.

If you know which class, I can download the source bundle and have a read...
Posted by: TommyE

Re: JEmplode 2.0b11 - 14/02/2002 07:44

Just downloaded and tried Jemplode for the first time in a long time.
Looks great, but any idea why I can't get properties of any tracks??
The properties menu bar just stays blue and no matter how many times
I select it, no properties....

TommyE
Posted by: Nosferatu

Re: JEmplode 2.0b11 - 14/02/2002 08:15

Yes a flash kernel utility !!!

My think is simple (surely not to implement but ...) :

You set you preferences on Hijack in a Speciel Menu :
- Enable checking for new Hijack versions
- Enable Updating kernel trough selected Port.
- Flash kernel on port COM1, COM2, FTP (eventually set IP address)
- Set the downlaod directory.

If I check the Enable the Hijack Versions Checking, the programm would 'only' connect to Mark's site and download the kernel.
It would verify in the dowload directory.
That will always download the latest hijack kernel but no update.
eventually, Popup user of the Downloaded Version ...

Then if I check the Flash Enable,ask user if Want to upgrade to hijack Vxxx, then the program will update the Player via the selected port.


Is it to long to do or could you realize it partially or not at all ?
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 08:28

Whoops .. my bad you're right, I read past one of the lines.

again, a summary of roughly what happens:

ByteArrayOutputStream baos = new BAOS();
PrintWriter pw = new PrintWriter(new OutputStreamWriter(baos));
pw.print(tagvalue);

I think you can instantiate a PrintWriter with a character encoding, but I'm surprised the default doesn't work properly... I suspect that the encoding format of Java and the encoding format of the Empeg are different. I would imagine that PrintWriter uses UTF-8 by default.

Mike
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 08:28

So if you select a track in the playlist view (the table view on the right), and double click, does it bring up Properties? Can you right click and try Properties ...? What OS are you on?
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 08:31

So you basically want a tool that will always keep your Hijack kernel up to date with Mark's latest release? When you download a hijack kernel, do you use the Empeg upgrader to put the kernel on your player? (i.e. is the file the same format as the Empeg guys' upgrade files?)
Posted by: Nosferatu

Re: JEmplode 2.0b11 - 14/02/2002 08:38

Not the Empeg Upgrader.

Mark made a FTP server in the Hijack and via SITE FTP Commands you can Upgrade the Kernel in 'simply' writing the new kernel on kernel_flash device.

The 'only thing' to see is the connexion to Mark's site downloading the last kernel release.

The upgrade of the kernel is only a command line tool for serial update and a connection to the player via FTP and SITE commands.

I recommend you to take a look on Mark's site, his explanations would be better that mine ....

Finally, my wish is to have a All in One Application to manage my Riocar .
Posted by: tms13

Re: JEmplode 2.0b11 - 14/02/2002 08:53

new OutputStreamWriter(OutputStream) uses the "default character encoding", i.e. it depends on the user's locale. According to Sun, "The default encoding is determined during virtual-machine startup and typically depends upon the locale and encoding being used by the underlying operating system."

What you need is new OutputStreamWriter(baos, "ISO-8859-1");

This is declared to throw UnsupportedCodingException, but must not in this case because all Java platforms are required to support this encoding.

We might have a corresponding issue in the InputStream/Reader interface in the other direction.

I'm reasonably confident that the Empeg protocol uses ISO-8859-1 for everything, but that's just an educated guess based on observations.
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 08:57

Great! I'll put this in tonight when I get home ... Thanks for the info.

Mike
Posted by: jag

Re: JEmplode 2.0b11 - 14/02/2002 10:33

I have the same problem with the properties.
I am running MacOS X.
The properties doesn't come up when I select it from the menu or from the right click menu or when I double click.

-Jeremy
Posted by: TommyE

Re: JEmplode 2.0b11 - 14/02/2002 10:54

Hello.

I'm running WinXP.
It's the same if I doubleclick, right mouse -> properties or select the properties from the toolbar.

TommyE
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 11:05

Wow ... Apparently I just completely broke Properties Pretty crucial feature to be broken. I'll look at it tonight and put new installers up.
Posted by: loren

Re: JEmplode 2.0b11 - 14/02/2002 11:29

NICE. I haven't installed Jemplode since your first release, and it's now impressive to the point where i probably won't be using emplode much any more.

And i second the vote for a Hijack .zimage installer/upgrader. This would allow non linux/Windows users to install hijack easily. (or is there a way to do this already that i'm not aware of... let me know and i'll stick it in the FAQ)
Posted by: rob

Re: JEmplode 2.0b11 - 14/02/2002 11:30

Ah, but you haven't seen what we're doing to emplode

Rob
Posted by: tfabris

Re: JEmplode 2.0b11 - 14/02/2002 11:32

Hey, the configurable filenames for downloading are nice.

Is there any way to offer the following option (I know this would be extra work but...)

One of the things that would be useful is to have the track number as part of the file name so that the songs are in the proper order. I think it can do this just by putting the {track#} tag in there in the options. Cool.

But not all of my MP3s have the track number field filled out. Some of them are just on the player in order of "Position" in a playlist.

Is there a way we could also have {position} as an available field for the file name if we're dowloading an entire playlist? Perhaps even zero-padded to two or three digits?
Posted by: tfabris

Re: JEmplode 2.0b11 - 14/02/2002 11:32

ROB, STOP TEASING!
Posted by: loren

Re: JEmplode 2.0b11 - 14/02/2002 11:36

yeah ROB!!!
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 11:47

I hate when they make these announcements ... Every time there's been one of these, it means I have a lot of work ahead of me
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 11:48

Yeah -- I can do that ... What do you think on the zero pad issue? automatically pad it to 3 digits, or something like:
{position:3} to specify 3 digit pad (and allow this on any numeric fields)?
Posted by: tfabris

Re: JEmplode 2.0b11 - 14/02/2002 11:52

That would be cool, if you wanted to go to that kind of trouble. Awesome.
Posted by: eternalsun

Re: JEmplode 2.0b11 - 14/02/2002 12:12

You guys are stealing tricks right ouf of the Microsoft marketing machine bag.

Calvin
Posted by: TommyE

Re: JEmplode 2.0b11 - 14/02/2002 13:12

Nice.
Also, Jemplode seems a bit faster than Emplode I think. At least in screen updates.
This is great.

TommyE
Posted by: ellweber

Re: JEmplode 2.0b11 - 14/02/2002 15:00

I wonder if the following error message might have an easy answer. I can run JEmplode under OSX but when I try to use it with OS 9.2.1 on my Mac I get this message:

java.lang.NoClassDefFoundError: javax/swing/UIManager
at org.jempeg.empeg.emplode.Main.main(Compiled Code)
at com.zerog.lax.LAX.launch(Compiled Code)
at com.zerog.lax.LAX.main(Unknown Source)
at com.apple.mrj.JManager.JMStaticMethodDispatcher.run(JMAWTContextImpl.java)
at java.lang.Thread.run(Thread.java)

Not being well (or at all) versed in Java, I am at a loss. Older versions of JEmplode did run under what I think are the same conditions.

Any help would be greatly appreciated.

Lynn
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 16:08

Hi Lynn -- The official stance is that we are no longer supporting Java versions below 1.2. Unfortunately that includes Mac OS version below 10. That's the official stance. However, I tried to be very careful and not actually use 1.2 features in a way that would break 1.1 versions ... The big difference now is that we are not bundling Swing (the UI toolkit) in the installer, since it's built into 1.2/1.3 JDK's. You can download Swing 1.1.1 from http://java.sun.com/products/jfc/download.html and try to get it to work with that. If I get some time, I'll see if I can get it up and running in a 1.1 VM and I'll let you know.

Mike
Posted by: tfabris

Re: JEmplode 2.0b11 - 14/02/2002 16:12

Unfortunately that includes Mac OS version below 10. That's the official stance.

This is kind of disappointing to hear, since the original driving force behind the development of a Java emplode was so that Mac users would be able to run the player. Don't you find that as ironic as I do?
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 16:21

Yes and no -- Most of the feedback I have gotten is from Mac OS X and Linux users actually ... I don't hear too much from OS 9 folks. Your mocking makes me want to fix it now though Seriously though, I have tried to avoid using 1.2 features -- I don't know about the MP3 import code since that's Daniel's and I don't have the source. If that code is 1.2 "clean" then it really shouldn't be a problem... Pushing for more people to go to OS X makes life easier, though, because the Java support is going to be much better and sadly Apple has basically said that they will never make a JDK 1.2 for OS 9 and below.

I'll take a look and see how far off of 1.1 we are now...

Mike
Posted by: tfabris

Re: JEmplode 2.0b11 - 14/02/2002 16:24

No, no, I wasn't mocking. No, I believe the term is "busting your balls".
Posted by: mschrag

Re: JEmplode 2.0b11 - 14/02/2002 17:45

Yeah -- I really screwed the pooch on this one ... I accidentally built the final jar without including Daniel's MP3 parser (which includes the Genre list), so it was basically bombing when it tried to display the Properties dialog. I'm rebuilding installers now and I'll put them up in the next half hour or so.
Posted by: Neutrino

Re: JEmplode 2.0b11 - 14/02/2002 22:15

Just a quick 'Thank You' JEmplode is very nice and has know taken the place of Emplode on my Windows systems.
Posted by: tonyc

Re: JEmplode 2.0b11 - 15/02/2002 00:08

Just a quick 'Thank You' JEmplode is very nice and has know taken the place of Emplode on my Windows systems.

Wow, is it that good???

Posted by: mschrag

Re: JEmplode 2.0b11 - 15/02/2002 07:28

I don't hear too many Windows people switching to jEmplode ... Kind of interesting to hear. Thanks for the Thanks.

Mike
Posted by: TommyE

Re: JEmplode 2.0b11 - 15/02/2002 07:29

Works great now, thanks.

TommyE
Posted by: loren

Re: JEmplode 2.0b11 - 15/02/2002 10:42

I switched... though Rob's hint "wait til you see what we're doing with emplode" means you could have some catching up to do soon. =]
Posted by: mschrag

Re: JEmplode 2.0b11 - 16/02/2002 15:33

There is a prerelease jar on http://64.83.11.163/jemplode (my dns provider is down right now) that includes support for "pos" and padding.

Mike
Posted by: mschrag

Re: JEmplode 2.0b11 - 16/02/2002 15:35

There is a prerelease jar on http://64.83.11.163/jemplode (my dns provider is down right now) that includes support much better support for ISO-8859-1 everywhere (I think I caught them all). Thanks a lot for this tip!

(replace jemplode20.jar in your install directory for jemplode20-prerelease.jar -- you'll have to rename it to jemplode20.jar)

Mike
Posted by: mschrag

Re: JEmplode 2.0b11 - 16/02/2002 15:35

Incidentally, replace jemplode20.jar in your install directory for jemplode20-prerelease.jar -- you'll have to rename it to jemplode20.jar.
Posted by: tfabris

Re: JEmplode 2.0b11 - 17/02/2002 11:21

I just tried this version of Jemplode and the new file naming features work perfectly, exactly as advertised.

My filespec is now:
{artist} - {source} ({year}, {genre}) - {pos:2} - {title}.mp3

Which results in filenames that look like the following:
Béla Fleck and the Flecktones - Outbound (2000, Jazz) - 00 - Intro.mp3
Béla Fleck and the Flecktones - Outbound (2000, Jazz) - 01 - Hoe Down.mp3
Béla Fleck and the Flecktones - Outbound (2000, Jazz) - 02 - A Moment So Close.mp3

If need be, these can be translated into complete, fully populated tags with a simple run through Tag Studio. Perfect.

The only problem is that I forgot "position" started at zero. So the filenames are all off-by-one, but I don't really care since the only thing that's important is the order of the files, not the exact numbers.

I also noticed something interesting just now.

If you tell Jemplode to download an entire playlist, say "Yes to all", but then close the box showing the download progress, it keeps downloading in the background (closing the box doesn't cancel the download). Feature or bug? To me, it's a feature.
Posted by: mschrag

Re: JEmplode 2.0b11 - 17/02/2002 13:36

Given the choice between saying that an oddity is a feature or a bug, the programmer always says feature, right? In the spirit of that, I say it is a feature. In actuality, I never added in the capability to abort any transfers, and I forgot to turn off the close button on the progress dialog Oh well. I likely will add support for cancelling in a future release ... maybe I'll add a checkbox to enable/disable progress dialogs too. Incidentally, I noticed the zero-offset position also -- What would you expect the correct behavior to be? It's pretty easy to just add a "+ 1" in the position retriever if you think it should start at 1 instead of zero.... let me know. Mike
Posted by: tfabris

Re: JEmplode 2.0b11 - 17/02/2002 13:57

What would you expect the correct behavior to be?

I would expect the behavior to be as it is: If the "Position" column on the screen says zero, then if I use the "pos" variable, it should say zero as well.

However, I will say this.

In the Emplode software, the positions do start at 1 instead of at 0. Only in JEmplode do they start at 0. So the +1 might be something to consider, if only for consistency between the two products.

In Emplode, there's currently a bug where the main "playlists" list starts at 2 instead of at 1, and it might be a result of them adding a +1 in all cases. So if you notice this behavior after adding the +1 in JEmplode, you might have to work around this same bug.
Posted by: mschrag

Re: JEmplode 2.0b11 - 17/02/2002 15:03

I'll do the +1 thing ... I think Emplode starts at 2 because they're hiding Unattached Items from you (which would typically be 1)... That would be my guess.

Mike
Posted by: mschrag

Re: JEmplode 2.0b11 - 17/02/2002 18:20

the new prerelease does the +1, just an fyi
Posted by: Roger

Re: JEmplode 2.0b11 - 18/02/2002 08:17

Give that man a cigar. Yeah, the "Unattached Items" playlist is still in the root playlist, which causes a discontinuity in the numbering (e.g. on my player, it's actually number 3 or 4).

This is the reason that the move up/down buttons are disabled in the root playlist -- it used to crash if you pushed the playlist too far. The quick fix is to disable the buttons. When I figure out a sane fix, I'll reenable them.
Posted by: mschrag

Re: JEmplode 2.0b11 - 18/02/2002 08:56

What do you think about just leaving Unattached Items visible? I had essentially the same problem in jEmplode and decided that it may actually be helpful in some instances to have that playlist visible so I decided to leave it. One example is that jEmplode shows modified nodes colorized Red -- when you sync to an Empeg that has database errors (aborted sync or whatever), it's really unclear what got "fixed" if something is moved to Unattached. By leaving it in, Unattached gets marked Red to show that it has "modified" (in this case, the nodes were moved to Unattached to repair the problems).

Just my two cents

Mike
Posted by: Roger

Re: JEmplode 2.0b11 - 18/02/2002 10:21

emplode no longer moves anything to "Unattached Items", so there's not a lot of point in having it visible.
Posted by: mschrag

Re: JEmplode 2.0b11 - 18/02/2002 10:31

Interesting .. Didn't realize that. So when you find a 0 reference count node in Emplode, is it just not considered an error anymore (i.e. you just leave it be)?

Mike
Posted by: tfabris

Re: JEmplode 2.0b11 - 18/02/2002 10:40

Correct. A tune with refs=0 still exists in the soup. And can still be played via a search (and in the future, via soup from the main menu).
Posted by: Roger

Re: JEmplode 2.0b11 - 18/02/2002 10:41

Correct. We don't worry about it.
Posted by: tms13

Re: JEmplode 2.0b11 - 19/02/2002 10:12

After getting a later jar (ConnectException at startup - thought it was due to our screwy network until I came back here...), the ISO-8859-1 characters look much better.

Haven't tried uploading any yet, but I believe in your fix. Thanks.
Posted by: ADent

Re: JEmplode 2.0b11 - 20/02/2002 00:33

The new version works with Mac OS 8.6.*

The only bug I am getting is that the genre shows up as (17) instead of 'Rock'. Shows up right on emplode in Virtual PC [but I will double check - I just udpated SoundJam (my ripper/encoder) last night too].
Unfilled in year shows up as -1 (bug or feature?)




(* I know this is the third thread I have said this, but I wanted to keep a couple of threads up to date)
Posted by: mschrag

Re: JEmplode 2.0b11 - 20/02/2002 00:51

The ID3 tag parser was written by Daniel .. I'll have to talk with him about the issues with tags. The -1 thing is a known issue -- As is typical, given the option, I claim it is a feature Not sure why the Genre didn't show up properly ... It definitely works in other places.

Mike
Posted by: ADent

Re: JEmplode 2.0b11 - 21/02/2002 03:30

The tags work fine in emplode 2b11 (running Win 95 in VPC). I normally use v2.3 ID3 tags. If I use v2.2, nothing gets read in. If I use v1.1 tags all is fine.