Commodore 64 (C64) Forum Index
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
sidplay2 in Java released
Goto page 1, 2, 3 ... 19, 20, 21  Next
 
Post new topic   Reply to topic    Commodore 64 (C64) Forum Index -> New Releases
View previous topic :: View next topic  
Author Message
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Mon Dec 10, 2007 8:35 pm    Post subject: sidplay2 in Java released Reply with quote

Hello forum members,

I have recently released a Java version of sidplay2
and now i would like to get some feedback by the fans
of the great soundchip of the good old C64.
It is very compatible to the original version and for now
a console based player with a little menu.

I would appreciate any positive or negative response.
Tell me what you expect as the next features.

Best regards of a new member of this forum,
kenchis
Very Happy

Important Links:

Java Web Start with Beta Version:
http://kenchis.t15.org/jsidplay2/jsidplay2.jnlp

Latest Stable Build:
http://sourceforge.net/project...play2/2.0/

Run Beta Version in a Browser
http://kenchis.t15.org/jsidplay2/jsidplay2.html

Short Instructions:

1. Install Java 6
Minimum is a Java 6 Runtime Environment

2.
Windows Console Player:
Open a command prompt and type:
Code:
java -jar jsidplay2_console.jar


Windows GUI Player:
Code:
java -jar jsidplay2.jar


Last edited by kenchis on Thu Oct 04, 2012 9:26 pm; edited 9 times in total
Back to top
View user's profile Send private message Visit poster's website
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Mon Dec 10, 2007 8:36 pm    Post subject: Reply with quote

Sorry,
i forgot Embarassed

http://sourceforge.net/projects/jsidplay2/
Back to top
View user's profile Send private message Visit poster's website
norfair
Groupie in Training
Groupie in Training


Joined: 11 Jul 2007
Posts: 84
Location: Montréal, Québec, Canada

PostPosted: Wed Dec 12, 2007 1:16 am    Post subject: Reply with quote

Sounds promising, but I have your first linux bug report!

it won't play on Ubuntu 7.10. I tried 2 files, here is the output:

Code:

hugues@toshiba:~/Downloads$ java -jar jsidplay2-1.2.jar "/media/S3A3305D001F/Documents and Settings/norfair/Mes documents/C64/C64Music/MUSICIANS/B/Blues_Muz/Nordboe_Kjell/Against_My_Enemy.sid"
Format: PCM_SIGNED 44100.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian
Problem while  getting data line javax.sound.sampled.LineUnavailableException: Audio Device Unavailable
+------------------------------------------------------+
| Java SIDPLAY - Music Player & C64 SID Chip Emulator  |
|          Sidplay V2.0.8, libsidplay V2.1.1           |
+------------------------------------------------------+
| Title        :                      Against My Enemy |
| Author       :                          Kjell Nordbø |
| Released     :                 1996 SHAPE/Blues Muz' |
+------------------------------------------------------+
| File format  :        PlaySID one-file format (PSID) |
| Filename(s)  :                  Against_My_Enemy.sid |
|              :                                       |
| Condition    :                             No errors |
| Playlist     :                     1/1 (tune 1/1[1]) |
| Song Length  :                               UNKNOWN |
+------------------------------------------------------+
keyboard control (press enter after command):
< > - play previous/next tune
, . - normal/faster speed
p   - pause/continue player
h e - play first/last tune
q   - quit player
Exception in thread "main" java.lang.NullPointerException
        at sidplay.ConsolePlayer.event(ConsolePlayer.java:701)
        at sidplay.ConsolePlayer.open(ConsolePlayer.java:495)
        at sidplay.ConsolePlayer.main(ConsolePlayer.java:1333)


and

Code:

hugues@toshiba:~/Downloads$ java -jar jsidplay2-1.2.jar "/media/S3A3305D001F/Documents and Settings/norfair/Mes documents/C64/C64Music/MUSICIANS/L/Linus/Getaway.sid"
Format: PCM_SIGNED 44100.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian
Problem while  getting data line javax.sound.sampled.LineUnavailableException: Audio Device Unavailable
+------------------------------------------------------+
| Java SIDPLAY - Music Player & C64 SID Chip Emulator  |
|          Sidplay V2.0.8, libsidplay V2.1.1           |
+------------------------------------------------------+
| Title        :                           The Getaway |
| Author       :                Sascha Zeidler (Linus) |
| Released     :                      2006 Triad/Viruz |
+------------------------------------------------------+
| File format  :        PlaySID one-file format (PSID) |
| Filename(s)  :                           Getaway.sid |
|              :                                       |
| Condition    :                             No errors |
| Playlist     :                     1/1 (tune 1/1[1]) |
| Song Length  :                               UNKNOWN |
+------------------------------------------------------+
keyboard control (press enter after command):
< > - play previous/next tune
, . - normal/faster speed
p   - pause/continue player
h e - play first/last tune
q   - quit player
Exception in thread "main" java.lang.NullPointerException
        at sidplay.ConsolePlayer.event(ConsolePlayer.java:701)
        at sidplay.ConsolePlayer.open(ConsolePlayer.java:495)
        at sidplay.ConsolePlayer.main(ConsolePlayer.java:1333)


for good measure, this is my java version:

Code:

hugues@toshiba:~/Downloads$ java -version
java version "1.6.0_03"
Java(TM) SE Runtime Environment (build 1.6.0_03-b05)
Java HotSpot(TM) Client VM (build 1.6.0_03-b05, mixed mode, sharing)


I will help as much as I can, a java port of sidplay is cool!
Back to top
View user's profile Send private message
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Wed Dec 12, 2007 7:07 pm    Post subject: Reply with quote

Quote:
javax.sound.sampled.LineUnavailableException: Audio Device Unavailable


I tested only under Win XP,
but i assume that the audio device must be somehow enabled in
the sound configuration of Linux?

I will download Ubuntu and test it in a virtual pc.

Perhaps you can test if you can output WAV files with the player alternativly.
Use option: --wav<filename>

After testing i will give you feedback what went wrong.

Thanks and best regards,
Ken
Back to top
View user's profile Send private message Visit poster's website
ice00
Groupie in Training
Groupie in Training


Joined: 22 Feb 2002
Posts: 116
Location: Italy

PostPosted: Wed Dec 12, 2007 7:42 pm    Post subject: Reply with quote

Works on Fedora Core 8.
With this release, now I have all that I need to make a Java music editor for Sid music (something I look for some long time)

:wink:
Back to top
View user's profile Send private message Visit poster's website
norfair
Groupie in Training
Groupie in Training


Joined: 11 Jul 2007
Posts: 84
Location: Montréal, Québec, Canada

PostPosted: Thu Dec 13, 2007 12:35 am    Post subject: Reply with quote

Err, I just tried again, and it worked...

I think the problem yesterday was that I had rythmbox opened >_>;

it sounds pretty decent, too Smile Keep up the good work!
Back to top
View user's profile Send private message
nata
Über Groupie
Über Groupie


Joined: 01 Jun 2005
Posts: 377

PostPosted: Sun Dec 16, 2007 1:40 pm    Post subject: Reply with quote

Works fine under Win2K.

Do you plan to port the distortion code too? http://bel.fi/~alankila/c64-sw/

ice00 wrote:
With this release, now I have all that I need to make a Java music editor for Sid music (something I look for some long time)

\o/
Back to top
View user's profile Send private message
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Sun Dec 16, 2007 7:25 pm    Post subject: Reply with quote

Hi nata,

of course i will. I already asked him in the Kohina forum, when his changes are complete. No answer yet.

But if the changes only make sense for certain SID chip revision, it must be assured, that other SID chip revisions are not affected by the change.

Additionally, his work is currently not finished. Last update is from 8.12.07
so perhaps i should wait, if his work is released in the next libsidplay version. He is currently working on a branch.
I only want to merge the diff once.

On the other hand i am very envious of the new distortion effects, how they sound...

First i will wait, what he is thinking about the status of his work.
Back to top
View user's profile Send private message Visit poster's website
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Fri Dec 21, 2007 9:04 pm    Post subject: Reply with quote

Hi, its me again Smile
If you want you can test the newest version (beta)

I included the distortion patch by Antti Lankila.
It is enabled by default. But you can turn on and off at runtime (with key 'd' and pressing return).

You should rename your old configuration file ~/sidplay2.ini .
Because if it is missing, the player creates it including the filter for 6581R4. So it will give the best results.

http://mitglied.lycos.de/kenchis/jsidplay2.jar

Thank you for testing,
regards,
Ken
Back to top
View user's profile Send private message Visit poster's website
nata
Über Groupie
Über Groupie


Joined: 01 Jun 2005
Posts: 377

PostPosted: Sat Jan 12, 2008 9:16 am    Post subject: Reply with quote

Would it be possible to display rasterime usage? (Not graphically but with som hex values)
Back to top
View user's profile Send private message
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Sat Jan 12, 2008 6:37 pm    Post subject: Reply with quote

Hi Nata,

I dont know exactly to find out the rastertime of the tune.
Can you explain?
Or better show me the place in the source code Wink
Back to top
View user's profile Send private message Visit poster's website
nata
Über Groupie
Über Groupie


Joined: 01 Jun 2005
Posts: 377

PostPosted: Sat Jan 12, 2008 6:57 pm    Post subject: Reply with quote

kenchis wrote:
Hi Nata,

I dont know exactly to find out the rastertime of the tune.
Can you explain?
Or better show me the place in the source code Wink


Rastertime is the calculating time of the playroutine for each call.

Maybe this place helps: http://codebase64.org/
Back to top
View user's profile Send private message
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Sat Jan 12, 2008 10:57 pm    Post subject: Reply with quote

that is what i understood:
rastertime is the time consumed by the player routine to play the next note.
Some players shows it by changing the background color when the routine is called and change it back, when it ended.

jsidplay2 is able to play SID/PSID as well as PRG.
For some tunes (PSID?) the player is always the same, it is installed by sidplay2. So this makes no sense for them.
For PRG files they come with their own custom player.
And i know the init address and play address of them.

What i would have to do is the following:
Measure the time from the continous calls of the player address.
The measure unit is what, raster lines, cycles?
How can i calculate it?
Back to top
View user's profile Send private message Visit poster's website
c64web
Immortal Grandmaster of C64
Immortal Grandmaster of C64


Joined: 28 Jun 2007
Posts: 3633
Location: Qld OZ

PostPosted: Sun Jan 13, 2008 9:48 am    Post subject: Reply with quote

Works great under Debian sounds good to. Smile
_________________
Looking for a causal coder, Python/MYSQL/PHP/Java. PM Me Smile
Back to top
View user's profile Send private message Send e-mail Visit poster's website
nata
Über Groupie
Über Groupie


Joined: 01 Jun 2005
Posts: 377

PostPosted: Wed Jan 23, 2008 9:46 am    Post subject: Reply with quote

Quote:
How can i calculate it?

Oh sorry, I don't know. I'm not a coder.

Btw. I testet the latest beta. Looks nice. Especially "Tune Speed" is a useful feature. When I play songs that were made in "25Hz" mode I get some wired speed value like "0.0-4.9E-324". Is this correct?

Maybe, could you include Lasse's SIDid from http://covertbitops.c64.org ? So, it would be possible to display the playroutine's name from the music.

Edit:

Hmm. The only thing I bother is the really high CPU usage (60% and more). I very often get serious slowdowns on my Pentium 4 running at 1800 MHz. (Especially if Digis are involved)
Does the "OptimiseLevel" activates resampling or interpolation?
I use VICE with reSID interpolation and it takes only 2-5% CPU time. If I use fast resampling in Vice CPU usage is more or less the same as in Java Sidplay.

Anyway, would it be possible to place the sidplay2.ini in the same folder as the .jar file?
Back to top
View user's profile Send private message
Ariqu
Groupie
Groupie


Joined: 13 Mar 2003
Posts: 231
Location: The Hole, USA

PostPosted: Thu Jan 24, 2008 3:21 am    Post subject: Reply with quote

I'd love to use this on my pocketpc/phone for SID-on-the-go, but I receive and error from my JRE (IBM J9 Java Emulator) about the application descriptor missing the required MIDlet-Name field. I assume it's referring to the title bar when running it under Windows which is currently blank. Mayhaps one could be added?
Back to top
View user's profile Send private message MSN Messenger
groepaz
Immortal Grandmaster of C64
Immortal Grandmaster of C64


Joined: 13 Oct 2004
Posts: 4704

PostPosted: Thu Jan 24, 2008 4:43 am    Post subject: Reply with quote

are you seriously expecting this to work on your cellphone? o_O
_________________
Back to top
View user's profile Send private message
Ariqu
Groupie
Groupie


Joined: 13 Mar 2003
Posts: 231
Location: The Hole, USA

PostPosted: Thu Jan 24, 2008 5:01 am    Post subject: Reply with quote

It's really more of a PocketPC than a phone. I thought Java was platform independent. I seem to have an issue just getting the program to open. Playback at this stage is understandably iffy. I'd just like to see what it can do.
Back to top
View user's profile Send private message MSN Messenger
groepaz
Immortal Grandmaster of C64
Immortal Grandmaster of C64


Joined: 13 Oct 2004
Posts: 4704

PostPosted: Thu Jan 24, 2008 6:05 am    Post subject: Reply with quote

it's platform independent (well, in theory) yes, but it still needs a lot of computing power =)
_________________
Back to top
View user's profile Send private message
nata
Über Groupie
Über Groupie


Joined: 01 Jun 2005
Posts: 377

PostPosted: Thu Jan 24, 2008 10:26 am    Post subject: Reply with quote

Here some example that is completely broken in emulators with reSID.. (Vice, Java/Sidplay...) It only plays correct on a real machine.

http://www.file-upload.net/dow...b.sid.html
Back to top
View user's profile Send private message
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Thu Jan 24, 2008 11:08 am    Post subject: Reply with quote

nata wrote:

Btw. I testet the latest beta. Looks nice. Especially "Tune Speed" is a useful feature. When I play songs that were made in "25Hz" mode I get some wired speed value like "0.0-4.9E-324". Is this correct?

Please, give me a hint, wich tune it is. I tested many of Jeffs multispeed songs and some others and did not find such unusable values.

nata wrote:

Maybe, could you include Lasse's SIDid from http://covertbitops.c64.org ? So, it would be possible to display the playroutine's name from the music.

I will look at the sources...

nata wrote:

Hmm. The only thing I bother is the really high CPU usage (60% and more). I very often get serious slowdowns on my Pentium 4 running at 1800 MHz. (Especially if Digis are involved)
Does the "OptimiseLevel" activates resampling or interpolation?
I use VICE with reSID interpolation and it takes only 2-5% CPU time. If I use fast resampling in Vice CPU usage is more or less the same as in Java Sidplay.

I will make the graphical output optional, then the CPU will consume about 20% instead of 60%.
The original is around 2% as far i know, but this must be the difference C vs Java, because it is as close as possible to the original source code. I think the Java sound API is the most expensive part.

Optimisation level. (default: 0)
Optimisation 0 - C64 emulation is kept fully cycle synced at all times.
Optimisation 1 - Allows the CPU to run by itself and only regains sync with the Sound Interface Device (SID) when a sample is required. This reduces sound accuracy.

About the sampling method (there are 4 types: SAMPLE_FAST, SAMPLE_INTERPOLATE, SAMPLE_RESAMPLE_FAST, SAMPLE_RESAMPLE_INTERPOLATE)
Java SIDPLAY implements all of them, but SAMPLE_FAST is used, then.
I measure everytime around 20% CPU time and my ear cant get the difference.

nata wrote:

Anyway, would it be possible to place the sidplay2.ini in the same folder as the .jar file?

I can read it from the current working directory first, if that fails, i read it from users home dir, OK?
Back to top
View user's profile Send private message Visit poster's website
nata
Über Groupie
Über Groupie


Joined: 01 Jun 2005
Posts: 377

PostPosted: Thu Jan 24, 2008 11:19 am    Post subject: Reply with quote

Quote:
Please, give me a hint, wich tune it is. I tested many of Jeffs multispeed songs and some others and did not find such unusable values.

I used some own test tune, but this one should work too: http://www.c64.org/HVSC/MUSICI...-speed.sid

Quote:
About the sampling method (there are 4 types: SAMPLE_FAST, SAMPLE_INTERPOLATE, SAMPLE_RESAMPLE_FAST, SAMPLE_RESAMPLE_INTERPOLATE)
Java SIDPLAY implements all of them, but SAMPLE_FAST is used, then.
I measure everytime around 20% CPU time and my ear cant get the difference.


Doesn't SAMPLE_FAST cuts away all the high frequencies and produces bad sounding combined waveforms? (This happens with sidplay2/w... f.ex)
Back to top
View user's profile Send private message
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Thu Jan 24, 2008 4:02 pm    Post subject: Reply with quote

nata wrote:

Doesn't SAMPLE_FAST cuts away all the high frequencies and produces bad sounding combined waveforms? (This happens with sidplay2/w... f.ex)

Shocked
I am no emulator specialist,
so tell me, which setting i should use by default and
better tell me a sound example, where i can hear the difference.
I want to use best sound reproduction by default.
Back to top
View user's profile Send private message Visit poster's website
kenchis
Groupie
Groupie


Joined: 10 Dec 2007
Age: 39
Posts: 239
Location: Berlin

PostPosted: Thu Jan 24, 2008 7:02 pm    Post subject: Reply with quote

nata wrote:

Maybe, could you include Lasse's SIDid from http://covertbitops.c64.org ? So, it would be possible to display the playroutine's name from the music.

Ok, i added player ID to the beta version and fixed the tune speed.
Now it shows min/max values and i hope its better now.
The INI file is now searched in current working directory first.

But ouch i found a tune that sounds strange (Arkanoid as PSID version),
but i didnt find the bug for now. Crying or Very sad
Back to top
View user's profile Send private message Visit poster's website
Magnate
Groupie
Groupie


Joined: 11 Feb 2002
Posts: 266

PostPosted: Thu Jan 24, 2008 7:14 pm    Post subject: Reply with quote

kenchis wrote:
Shocked
I am no emulator specialist,
so tell me, which setting i should use by default and
better tell me a sound example, where i can hear the difference.
I want to use best sound reproduction by default.

A prime example is darwin.sid.
_________________
C64C + 1541-II, or Hoxs64 as an accurate equivalent.
Visit hvsc.c64.org for the most comprehensive SID collection.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Commodore 64 (C64) Forum Index -> New Releases All times are GMT
Goto page 1, 2, 3 ... 19, 20, 21  Next
Page 1 of 21

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Tip: Get C64 Forever for super-comfy C64 emulation with pre-installed games, demos and other goodies!


Powered by phpBB © 2001, 2005 phpBB Group