English Amiga Board


Go Back   English Amiga Board > Main > Amiga scene

 
 
Thread Tools
Old 11 March 2021, 15:48   #21
pink^abyss
Registered User
 
Join Date: Aug 2018
Location: Untergrund/Germany
Posts: 408
I think the player is perfect for modules with low register data rate. For chiptunes (as you already mentioned) the size may grow quite a bit.
I tested 'LSPConvert.exe' with "zapped-out.mod" by 4Mat which grows from 18kb to 49kb, tho thats certainly an extreme testcase.

I wonder how high data rate amiga songs (not Protracker modules) could be stored efficently and played fast... if its possible at all
pink^abyss is offline  
Old 11 March 2021, 15:53   #22
Samurai_Crow
Total Chaos forever!
 
Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
Quote:
Originally Posted by pink^abyss View Post
I think the player is perfect for modules with low register data rate. For chiptunes (as you already mentioned) the size may grow quite a bit.

I tested 'LSPConvert.exe' with "zapped-out.mod" by 4Mat which grows from 18kb to 49kb, tho thats certainly an extreme testcase.



I wonder how high data rate amiga songs (not Protracker modules) could be stored efficently and played fast... if its possible at all
Hashing the collection of register writes voice by voice to eliminate duplicates might help but I'm not familiar with the new format. I just wrote a module compiler years ago that needs a rewrite.
Samurai_Crow is offline  
Old 11 March 2021, 15:58   #23
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 53
Posts: 4,468
The parser for intricate modules with B/D commands could fail.
Leonard you have a PM
ross is offline  
Old 11 March 2021, 16:07   #24
no9
Registered User
 
no9's Avatar
 
Join Date: Feb 2018
Location: Poland
Posts: 352
Just leaving a praise for new developments in Amiga audio departament.
no9 is offline  
Old 11 March 2021, 16:23   #25
khph_re
Registered User
 
Join Date: Feb 2008
Location: Northampton/UK
Posts: 524
So there was a thread about getting the Amiga to play higher quality, and another about mixing channels, and now this gem.

Will these be combined into new formats? Or are they incompatible with each other?

Sorry if it's a noob question, I'm not a coder.
khph_re is offline  
Old 11 March 2021, 20:36   #26
Thcm
Registered User
 
Join Date: Dec 2011
Location: Gummersbach
Posts: 18
Quote:
Originally Posted by pink^abyss View Post
Great execution Leonard! As always, you win over any amiga coder in optimization

Inspired by LFT from C64 I tried the same a year ago with my Pretracker replayer but my data exploded. A 3 minute song took around 50kb of replayer data when the original song only had 7kb of pattern data, so i scrapped it

I'm using the same approach for my C64 Protracker replayer for about 10 years now. The replayer logic would simply take too much processing power. Mixing is expensive enough. I first started with simple RLE compression of period, offset, volume and sample trigger streams and the newest data format uses a simple LZ packer of interleaved rle streams which results in good compression and fast enough decompression one byte a time.
Thcm is offline  
Old 11 March 2021, 20:42   #27
Thcm
Registered User
 
Join Date: Dec 2011
Location: Gummersbach
Posts: 18
Quote:
Originally Posted by pink^abyss View Post
I think the player is perfect for modules with low register data rate. For chiptunes (as you already mentioned) the size may grow quite a bit.
I tested 'LSPConvert.exe' with "zapped-out.mod" by 4Mat which grows from 18kb to 49kb, tho thats certainly an extreme testcase.

I wonder how high data rate amiga songs (not Protracker modules) could be stored efficently and played fast... if its possible at all

I tested the mod with my converter and it "packs" to 26kb, but I'm using only a 256 byte lz history buffer, which packs complicated songs not so well. Lots of period and volumes changes like slides, vibratoe etc. result in less compression. Simple mods like HYMN_TO_YEZZ.MOD compress down to 2kb.
Thcm is offline  
Old 11 March 2021, 22:12   #28
leonard
Registered User
 
leonard's Avatar
 
Join Date: Apr 2013
Location: paris
Posts: 133
Quote:
Originally Posted by pink^abyss View Post
I think the player is perfect for modules with low register data rate. For chiptunes (as you already mentioned) the size may grow quite a bit.
I tested 'LSPConvert.exe' with "zapped-out.mod" by 4Mat which grows from 18kb to 49kb, tho thats certainly an extreme testcase.

I wonder how high data rate amiga songs (not Protracker modules) could be stored efficiently and played fast... if its possible at all
you're right high register pressure makes .lsmusic file bigger in memory. I don't want to store any compressed form in memory because my goal is to have the fastest replay ( even decoding lz or lz4 takes time ). Anyway a lot of mods just keep the same size, and some of them are even shorter in LSP

However, I'm planning to xform .lsmusic a bit so it could be better compressed on the disk ( right now compression ratio is ok, but it could be better if I interleave & delta the byte streams.)

The player will require some more work at init time. So it won't reduce the memory usage at runtime, but it will help on floppy storage. ( important for floppy demos )
leonard is offline  
Old 11 March 2021, 23:27   #29
xaind
Registered User
 
Join Date: Apr 2006
Location: Sydney / Australia
Posts: 113
Apologies if I missed this - but is the source for LSPConvert.exe available somewhere?
xaind is offline  
Old 11 March 2021, 23:33   #30
lesta_smsc
Registered User
 
lesta_smsc's Avatar
 
Join Date: Feb 2012
Location: United Kingdom
Posts: 3,173
Quote:
Originally Posted by xaind View Post
Apologies if I missed this - but is the source for LSPConvert.exe available somewhere?
https://github.com/arnaud-carre/LSPlayer
lesta_smsc is offline  
Old 11 March 2021, 23:40   #31
Jobbo
Registered User
 
Jobbo's Avatar
 
Join Date: Jun 2020
Location: Druidia
Posts: 386
Quote:
Originally Posted by lesta_smsc View Post

He's asking for the source to the converter. Which is not public afaik.
Jobbo is offline  
Old 12 March 2021, 00:13   #32
Antiriad_UK
OCS forever!
 
Antiriad_UK's Avatar
 
Join Date: Mar 2019
Location: Birmingham, UK
Posts: 418
Leonard, what format are the samples saved in? I'm thinking amigaklang type scenario where the samples have to be saved in exactly normal protracker format or the system falls apart (like with p61 which modifies the samples).
Antiriad_UK is offline  
Old 12 March 2021, 00:15   #33
leonard
Registered User
 
leonard's Avatar
 
Join Date: Apr 2013
Location: paris
Posts: 133
Quote:
Originally Posted by Antiriad_UK View Post
Leonard, what format are the samples saved in? I'm thinking amigaklang type scenario where the samples have to be saved in exactly normal protracker format or the system falls apart (like with p61 which modifies the samples).
you could use "-nosampleoptim" option with LSPConvert to keep the sample bank un-modified. ( so you can use amigaklang with this option )
leonard is offline  
Old 12 March 2021, 00:32   #34
Antiriad_UK
OCS forever!
 
Antiriad_UK's Avatar
 
Join Date: Mar 2019
Location: Birmingham, UK
Posts: 418
Quote:
Originally Posted by leonard View Post
you could use "-nosampleoptim" option with LSPConvert to keep the sample bank un-modified. ( so you can use amigaklang with this option )
That is wonderful. Thank you
Antiriad_UK is offline  
Old 12 March 2021, 14:59   #35
pink^abyss
Registered User
 
Join Date: Aug 2018
Location: Untergrund/Germany
Posts: 408
Quote:
Originally Posted by Thcm View Post
I tested the mod with my converter and it "packs" to 26kb, but I'm using only a 256 byte lz history buffer, which packs complicated songs not so well. Lots of period and volumes changes like slides, vibratoe etc. result in less compression. Simple mods like HYMN_TO_YEZZ.MOD compress down to 2kb.

Good work!


I ask myself if there aren't more clever methods possible, because its not random data but MUSIC! For instance, it would be possible to pack Volume and Pitch lossy (considering psychoacoustics). Pitch would need to be linearized of course before...
pink^abyss is offline  
Old 12 March 2021, 16:05   #36
Thcm
Registered User
 
Join Date: Dec 2011
Location: Gummersbach
Posts: 18
Quote:
Originally Posted by pink^abyss View Post
Good work!


I ask myself if there aren't more clever methods possible, because its not random data but MUSIC! For instance, it would be possible to pack Volume and Pitch lossy (considering psychoacoustics). Pitch would need to be linearized of course before...

That's one thing I'm already doing. Reducing to 16 different volumes and 127 different periods. Normally you don't hear any big difference on the c64. I try to choose quite optimal values for periods and volumes depending on frequency and distances.
Thcm is offline  
Old 12 March 2021, 17:23   #37
leonard
Registered User
 
leonard's Avatar
 
Join Date: Apr 2013
Location: paris
Posts: 133
Quote:
Originally Posted by pink^abyss View Post
For instance, it would be possible to pack Volume and Pitch lossy (considering psychoacoustics). Pitch would need to be linearized of course before...
I didn't investigated so much in that direction because I wanted to be a full compatible protracker player ( so I want the exact same PAULA registers values than an official player).

But I did some test like having just a 256 periods table to fit in 8bits etc. Helps packing but it also needs some extra cycles to read back the table ( most of MODs are not using more than 256 different periods so it works )
leonard is offline  
Old 13 March 2021, 15:13   #38
Keops/Equinox
Registered User
 
Keops/Equinox's Avatar
 
Join Date: Feb 2008
Location: .
Posts: 107
Excellent stuff as usual Leonard.
Keops/Equinox is offline  
Old 14 March 2021, 19:47   #39
leonard
Registered User
 
leonard's Avatar
 
Join Date: Apr 2013
Location: paris
Posts: 133
Quote:
Originally Posted by ross View Post
The parser for intricate modules with B/D commands could fail.
Leonard you have a PM
thanks for reporting! I fixed the parser. You can get fixed LSP v1.01 here:

https://www.pouet.net/prod.php?which=88177
leonard is offline  
Old 14 March 2021, 21:01   #40
Galahad/FLT
Going nowhere
 
Galahad/FLT's Avatar
 
Join Date: Oct 2001
Location: United Kingdom
Age: 50
Posts: 8,986
I think if you throw this at Hoffman, his vast range of mods that pretty use every single trick in the book, and most importantly, he would know which of those modules might be a good bunch of test cases.

Great work
Galahad/FLT is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Replayer dissasembly request passing_by Coders. Asm / Hardware 6 18 December 2017 16:25
Digibooster 2 Replayer Routine Emufr3ak Coders. Asm / Hardware 2 13 June 2017 07:29
Replayer archive? absence Coders. General 4 17 March 2011 14:24
acurate protracker replayer! h0ffman Coders. General 1 12 December 2010 10:19
Best MOD replayer RickyD-II Coders. General 8 09 July 2007 03:04

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 05:57.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.19512 seconds with 15 queries