RISC OS Open
Safeguarding the past, present and future of RISC OS for everyone
ROOL
Home | News | Downloads | Bugs | Bounties | Forum | Documents | Photos | Contact us
Account
Forums → Announcements →

New version of ProSound

Subscribe to New version of ProSound 17 posts, 6 voices

 
Aug 18, 2016 8:28pm
Avatar Henrik Bjerregaard Pedersen (3011) 58 posts

There is a new version of ProSound which works on ARM7. ProSound is an audio processor, it was originally released by Oregan about 20 years ago. ProSound can edit large sound files.

It should be available in PackMan soon, but until then it can be downloaded from www.henrikbp.riscos.fr.

A few notes:

This version has been tested on Pi 2 and a little bit in RPCEmu. There are probably still lots of bugs – the ARM7 conversion was a bit of a nightmare.

There is no documentation. I believe documentation should be available online, so if anyone wants to start a wiki page somewhere then I’d be happy to contribute.

When you start ProSound for the first time, the Choices window will be displayed. Select playback drivers and drag the directory icon to the place where you want ProSound to store data, typically your biggest/fastest harddrive.

There is currently no way of recording sound. I am working on an API to allow other applications to delivered recorded audio to ProSound, hopefully this will be ready in a week or 2. Then someone will have to develope an application for interfacing with an USB audio device or whatever.

I would like ProSound to be able to read MP3 files. If anyone feels like writing a BASIC program for decoding MP3, using eg. AMPlayer, then I’d be happy to include it in ProSound.

 
Aug 18, 2016 11:27pm
Avatar Steffen Huber (91) 1826 posts

I would like ProSound to be able to read MP3 files. If anyone feels like writing a BASIC program for decoding MP3, using eg. AMPlayer, then I’d be happy to include it in ProSound.

Not a BASIC program, but there is some simple example code available on the DigitalCD site to implement an MP3 decoder based on the AudioMPEG/DiskSample modules.

 
Aug 19, 2016 4:36pm
Avatar jim lesurf (2082) 1330 posts

As things stand a USB recording input would have to bypass SharedSound and SoundDMA. So your best bet with that might be Colin or Dave.

 
Aug 19, 2016 5:42pm
Avatar Steffen Huber (91) 1826 posts

As things stand a USB recording input would have to bypass SharedSound and SoundDMA.

I always thought that SharedSound and SoundDMA only handle output? IIRC, RISC OS never had any public API for sound input, so hopefully Henrik’s API can be used in a generic way instead of an application specific way.

 
Aug 19, 2016 6:48pm
Avatar Henrik Bjerregaard Pedersen (3011) 58 posts

Thanks for the tip about DigitalCD – the AudioMPEG module seems like it might do the job. I think I will just wait a little to see if anybody volunteers to do the job.

The API will not be ProSound-specific, it will just be a few Wimp messages to transfer information about available devices and to start/stop, and the rest will be done in shared memory.

 
Aug 22, 2016 4:53am
Avatar Raik (463) 1973 posts

There is a new version of ProSound which works on ARM7.

Short try this morning on my ARMX6. Works fine. Thanks a lot.
I have play around with any older “self record” wav-files.

I have also try with my EasyCap and IsocRecorder. No success. Not sure what the reason is. The right settings are inside (“Syntek Semiconductor ‘USB 2.0 Video Capture Controller’”) but “bad request”.
I’m sure it was working on my Pandora in the past. I will look at the descriptors and settings an try a other device next few days.

 
Aug 22, 2016 8:32pm
Avatar Henrik Bjerregaard Pedersen (3011) 58 posts

I also got the “bad request” error. I’m considering offering a bounty for a driver that works with a cheap USB device, but I have a feeling the cheap devices change every other month.

 
Aug 23, 2016 6:31am
Avatar Raik (463) 1973 posts

I’m sure one of my EasyCap devices was working. Long time ago (01/2014). But I’m not sure both.
Many changes in RISC OS etc. since 2014. So I will sort any things e.g. updates.
I have take a look at the descriptors Readme (send by Colin in 2014) and in the EasyCap descriptor file. Looks like I must change any parameter. The problem is, I have give my second (or first) EasyCap to a other user to try. Maybe the Rev. is not the same.
I have a “USB Tape Player” that works and a iTec-Box with Displaylink, Audio in/out and network works also.
I mean I have send the settings in 2014 to Colin. I have take a look at the latest IsocPlayer and I mean the correct settings are inside.

 
Aug 26, 2016 10:28am
Avatar Raik (463) 1973 posts

I have sort any things on my “reference maschine” (Pandore and MX6) e.g. Systemupdate. Both are working with Prosound.
On MX6 it play the sample to fast. If I try to set the playing speed to 50% or 25% Prosound crash with a “Data abort”.
I have not a RP2 aviable with RISC OS (Use it with Linux ad FreeCAD for my 3D projects.). So I have not try.
Any other remarks I you will find (later) in the USBAudio thread.

 
Aug 26, 2016 11:41am
Avatar Henrik Bjerregaard Pedersen (3011) 58 posts

Thanks for the feedback – not quite sure why it plays too fast on one machine but not on the other. ProSound just delivered data to the Replay sampledriver whenever it needs it, so the sampledriver must consume the samples too fast.
Do other programs also play audio too fast on the MX6 ?

I have no problems on RP2.

 
Aug 26, 2016 3:19pm
Avatar Raik (463) 1973 posts

I remember there was a comparable Problem on the Pandaboard in the past. I must think about and search… but here 35°C.
I have no problems with other player on MX6 and I have not try “crossed”. The Pandora recorded tracks on MX6 and …

 
Aug 29, 2016 6:51am
Avatar Raik (463) 1973 posts

Looks like is a ARMX6 problem with the IsocRecorder.
Tracks I record with my Pandora are working correct with ProSound and DigitalCD on both.
Tracks I record with my MX6 are to fast in ProSound and not playable with DigitalCD.

 
Aug 29, 2016 9:01am
Avatar Colin Ferris (399) 1422 posts

Seems some 26bit instructions in there.

One in Code:
teqp pc,#&10000000
Is that just changing the V flag?
msr cpsr_f,#&10000000 should do.

3 in module ‘ProSound’
orrs pc,r14,#&10000000

This should do.
msr cpsr_f,#&10000000
mov pc,r14

 
Aug 29, 2016 12:50pm
Avatar Henrik Bjerregaard Pedersen (3011) 58 posts

Colin – I have probably missed some of the finer details of 26 to 32 bit conversion. I only changed the non-aligned LDR to make it ARM7 compatible, but I will go through the module and look for weird stuff that involves PC. Thanks for reporting it.

 
Aug 29, 2016 1:26pm
Avatar Steve Pampling (1551) 7334 posts

Colin – I have probably missed some of the finer details of 26 to 32 bit conversion.

It’s not a jump out at you referenced document but there is a partially complete document on conversion.

Armalyser comes in handy for identifying the basic issues.

 
Sep 1, 2016 4:03am
Avatar Raik (463) 1973 posts

There is no documentation. I believe documentation should be available online,…

One of the old links I know is not broken…
Any docs but not a manual (I have found my old paper one ;-)).

 
Sep 1, 2016 12:13pm
Avatar Henrik Bjerregaard Pedersen (3011) 58 posts

Raik – thanks for the link, I didn’t know the Iconbar kept a copy of my old site. I will take a look.

Reply

To post replies, please first log in.

Forums → Announcements →

Search forums

Social

Follow us on and

ROOL Store

Buy RISC OS Open merchandise here, including SD cards for Raspberry Pi and more.

Donate! Why?

Help ROOL make things happen – please consider donating!

RISC OS IPR

RISC OS is an Open Source operating system owned by RISC OS Developments Ltd and licensed primarily under the Apache 2.0 license.

Description

Announce and discuss new hardware and software releases.

Voices

  • Henrik Bjerregaard Pedersen (3011)
  • Steffen Huber (91)
  • jim lesurf (2082)
  • Raik (463)
  • Colin Ferris (399)
  • Steve Pampling (1551)

Options

  • Forums
  • Login
Site design © RISC OS Open Limited 2018 except where indicated
The RISC OS Open Beast theme is based on Beast's default layout

Valid XHTML 1.0  |  Valid CSS

Powered by Beast © 2006 Josh Goebel and Rick Olson
This site runs on Rails

Hosted by Arachsys