Audio Choppiness & Overloads in VocalWriter

About SheepShaver, a PPC Mac emulator for Windows, MacOS X, and Linux that can run System 7.5.3 to MacOS 9.0.4.

Moderators: Cat_7, Ronald P. Regensburg, ClockWise

Post Reply
TheXealot
Space Cadet
Posts: 1
Joined: Fri Mar 09, 2018 4:37 am

Audio Choppiness & Overloads in VocalWriter

Post by TheXealot »

I've been having problems with VocalWriter in SheepShaver to the point where it's next to impossible to use. The audio is delayed and very choppy when previewing single notes, and whenever I try to play anything (even if there are no notes programmed) I get this error message:

Image

My preferences are set to the lowest number of polyphony possible, and I only ever have one or two notes in a single channel/track sequence. Yet I'm still getting the error message above.

Preferences menu:
Image

I looked in the ReadMe file that came with the software, and came across a list of system requirements:

Image

I meet and even exceed all of these requirements, except for one I'm not too certain about, which is the CPU clock speed. I read somewhere that the CPU clock speed is dependent on the host machine, so this shouldn't be a problem (if that's the case).

VocalWriter uses the (MacOS) system's built-in General MIDI synthesizer for its instruments, and the (MacOS) system's built-in speech synthesizer for vocals. I've noticed that when using the speech synth to "read aloud" text I've written in SimpleText, as well as previewing the synth in system settings, that it is very choppy as well.

Here's a list of my system specs
Host Machine
  • Host OS: Windows 10 Creator Update (64-bit)
  • CPU rate: 3.2 gHz
  • Physical RAM: 8 GB
  • HHD Size (that SheepShaver is installed to): 1 TB
SheepShaver
  • OS: MacOS 8.6
  • MacOS RAM: 1024 MB
  • ROM Type: 1997-11 - 79D68D63 - Power Mac G3 Desktop
  • ROM Size: 4MB
Miscellaneous
  • 'My Computer' icon on Mac desktop enabled.
  • Polling enabled.
  • QuickDraw acceleration disabled.
  • Sound output enabled (obviously).
  • Idle CPU useage enabled.
  • Illegal memory access disabled.
  • JIT compiler enabled.
  • Built-in 68k DR emulator disabled.
Here's debug information from the stdout.txt file
SheepShaver V2.3 by Christian Bauer and Mar"c" Hellwig
Reading ROM file...
Using SDL/waveout audio output
Detected CPU features: MMX SSE SSE2 SSE3 SSSE3
PowerPC CPU emulator by Gwenole Beauchesne
WARNING: RmvTime(00905620): Descriptor not found
WARNING: RmvTime(00905644): Descriptor not found
WARNING: RmvTime(00905668): Descriptor not found
WARNING: RmvTime(0090568c): Descriptor not found
WARNING: RmvTime(009056b0): Descriptor not found
WARNING: RmvTime(009056d4): Descriptor not found
WARNING: RmvTime(009056f8): Descriptor not found
WARNING: RmvTime(0090571c): Descriptor not found
FATAL: PrimeTime(): Descriptor not found
FATAL: PrimeTime(): Descriptor not found
WARNING: RmvTime(00905620): Descriptor not found
WARNING: RmvTime(00905644): Descriptor not found
WARNING: RmvTime(00905668): Descriptor not found
WARNING: RmvTime(0090568c): Descriptor not found
WARNING: RmvTime(009056b0): Descriptor not found
WARNING: RmvTime(009056d4): Descriptor not found
WARNING: RmvTime(009056f8): Descriptor not found
WARNING: RmvTime(0090571c): Descriptor not found
FATAL: PrimeTime(): Descriptor not found
FATAL: PrimeTime(): Descriptor not found
WARNING: RmvTime(00905620): Descriptor not found
WARNING: RmvTime(00905644): Descriptor not found
WARNING: RmvTime(00905668): Descriptor not found
WARNING: RmvTime(0090568c): Descriptor not found
WARNING: RmvTime(009056b0): Descriptor not found
WARNING: RmvTime(009056d4): Descriptor not found
WARNING: RmvTime(009056f8): Descriptor not found
WARNING: RmvTime(0090571c): Descriptor not found
WARNING: RmvTime(00905620): Descriptor not found
WARNING: RmvTime(00905644): Descriptor not found
WARNING: RmvTime(00905668): Descriptor not found
WARNING: RmvTime(0090568c): Descriptor not found
WARNING: RmvTime(009056b0): Descriptor not found
WARNING: RmvTime(009056d4): Descriptor not found
WARNING: RmvTime(009056f8): Descriptor not found
WARNING: RmvTime(0090571c): Descriptor not found
WARNING: RmvTime(00905620): Descriptor not found
WARNING: RmvTime(00905644): Descriptor not found
WARNING: RmvTime(00905668): Descriptor not found
WARNING: RmvTime(0090568c): Descriptor not found
WARNING: RmvTime(009056b0): Descriptor not found
WARNING: RmvTime(009056d4): Descriptor not found
WARNING: RmvTime(009056f8): Descriptor not found
WARNING: RmvTime(0090571c): Descriptor not found
The ppc.log file is empty for some reason.

Does anyone know what the problem is, and how to fix it?
-The Xealot
Ad0
Space Cadet
Posts: 1
Joined: Sat Mar 13, 2021 5:27 pm

Re: Audio Choppiness & Overloads in VocalWriter

Post by Ad0 »

Same issue here. The program is not usable in this state sadly.
User avatar
Cat_7
Expert User
Posts: 5315
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: Audio Choppiness & Overloads in VocalWriter

Post by Cat_7 »

Hi,

I'm not sure whether you are using the same setting for SheepShaver as the OP, but I would suggest using the GUI to set:

On the volumes tab:
-Disable polling
On the Graphics/Sound tab:
-Enable QuickDraw acceleration
On the Memory/Misc tab
-Disable Don't use CPU When Idle
(this will lead to a high cpu usage by SheepShaver, so please check whether that is sustainable on your machine)

Then give it a try. If things did not improve, try
On the JIT compiler tab:
-Disable the JIT compiler.

If that will not work, then you might be out of luck ;-)

I just gave the program a go, and the choppiness of the sound suggests that perhaps SheepShaver cannot provide exact timing. AFIAK this is an inherent problem in emulators.

Best,
Cat_7
Ad0
Space Cadet
Posts: 1
Joined: Sat Mar 13, 2021 5:27 pm

Re: Audio Choppiness & Overloads in VocalWriter

Post by Ad0 »

Thanks! Sadly those things didn't improve. It also fails under qemu, since it wants Virtual Memory turned off. If VM is off, then Audio output is not present.
I tried OSX in qemu as well. Same choppyness.

Sorry forgot to mention that I used this http://www.columbia.edu/~em36/macos9win.html

Here's a dump of the SS config:

Code: Select all

disk MacOS9HD.dsk
extfs 
screen win/1024/768
windowmodes 3
screenmodes 63
seriala COM1
serialb COM2
bootdrive 0
bootdriver 0
ramsize 536870912
frameskip 0
gfxaccel true
nocdrom true
nonet false
nosound false
nogui false
noclipconversion false
ignoresegv true
ignoreillegal false
jit false
jit68k false
keyboardtype 5
hardcursor false
hotkey 0
scale_nearest false
scale_integer false
cpuclock 0
yearofs 0
dayofs 0
mag_rate 0
swap_opt_cmd true
ether slirp
keycodes false
mousewheelmode 1
mousewheellines 3
idlewait false
keycodes false
mousewheelmode 1
mousewheellines 3
enableextfs true
debugextfs false
extdrives CDEFGHIJKLMNOPQRSTUVWXYZ
pollmedia false
etherpermanentaddress true
ethermulticastmode 0
routerenabled false
ftp_port_list 21
tcp_port 
portfile0 C:\B2TEMP0.OUT
portfile1 C:\B2TEMP1.OU
Last edited by Ad0 on Sun Mar 14, 2021 10:45 pm, edited 1 time in total.
kanjitalk755
Mac Mechanic
Posts: 179
Joined: Thu Nov 09, 2017 12:06 pm

Re: Audio Choppiness & Overloads in VocalWriter

Post by kanjitalk755 »

I found that some applications may not work properly without shortening the sound buffer.
So, I added the feature to adjust length of it.

https://github.com/kanjitalk755/macemu

For VocalWriter, add following line to .sheepshaver_prefs.

Code: Select all

sound_buffer 2
Higher the number, shorter the sound buffer and heavier the load.
User avatar
Cat_7
Expert User
Posts: 5315
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: Audio Choppiness & Overloads in VocalWriter

Post by Cat_7 »

Hi Kanjitalk755,

Fantastic, shortening the buffer does indeed fix the sound issue in that program.
New builds for SheepShaver and Basilisk for Windows have been posted.

Best,
Cat_7
User avatar
Ronald P. Regensburg
Expert User
Posts: 6673
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Audio Choppiness & Overloads in VocalWriter

Post by Ronald P. Regensburg »

I suppose this change also applies to macOS?
User avatar
Cat_7
Expert User
Posts: 5315
Joined: Fri Feb 13, 2004 8:59 am
Location: Sittard, The Netherlands

Re: Audio Choppiness & Overloads in VocalWriter

Post by Cat_7 »

The change was made in the SDL2 audio code and macOS builds use SDL2, so I think it will apply to those as well.

Best,
Cat_7
kanjitalk755
Mac Mechanic
Posts: 179
Joined: Thu Nov 09, 2017 12:06 pm

Re: Audio Choppiness & Overloads in VocalWriter

Post by kanjitalk755 »

-An additional pref item "sound_buffer" is introduced that sets the size of the sound buffer. Size 1 uses the original size, higher numbers shorten the buffer but increase CPU load.
Size 0 (or no sound_buffer line) uses the original size.
Each +1 halves the length of the sound buffer.
Post Reply