StudioSound

From RISC OS
Revision as of 20:24, 21 November 2016 by HBP (talk | contribs) (→‎Choices)
Jump to navigationJump to search

StudioSound

StudioSound is a 32 track audio sequencing studio, allowing several hours of audio to be sequenced amd mixed, using an intuitive visual cutting desk.

That's how the original manual described StudioSound when it was released by Oregan back in 1996-1997. StudioSound was developed by Henrik Bjerregaard Pedersen.

StudioSound is now available as a PackMan package, and runs freakishly fast on a Raspberry Pi 2.

Raik Fischer has scanned the old paper version of the manual, it is available here: PDF version

Features

StudioSound allows you to:

  • Position sample files on 32 editing tracks and then move them about
  • Change the volume of each track or sample file
  • Apply realtime, non-destructive DSP effects
  • Cut out parts of each file
  • Much more

Recommendations

Anything slower than a StrongARM is too slow.

A fast harddisc / flash drive is important.

Make sure you get the latest version!

Getting started

Install the StudioSound package and the StudioLib package.

Make sure the audio output / HDMI cable is connected to something which can playback sound.

Start StudioSound, then click on the icon on the iconbar, and create an 8 track project.

Double-click on the !StudioLib icon. This will open a window with a bunch of sample files. Drag one of the sample files to the StudioSound window; it should appear as a small coloured rectangle. Do the same with a few more files, then press Play in the StudioSound window.

Library

Click Adjust on the iconbar icon to open the Library. This holds the sample files that can be used in the projects. Any file you drag to the project window will also be added to the Library, assuming the file is in a supported format.

You may save the content of the Library, so that it is available every time you start StudioSound. Click Menu in the Library and select "Save as default".

Click Menu over an item in the Library and select Copy to make a copy of the item. This doesn't use any extra disc space, the copy simply contains information about which part of the original file to use.

If you double click on an item in the Library, the item will be displayed in a View window, where you can play it. If the item is a copy then you may change which part is used, by dragging a selection with the mouse. You may also open a view from a Project window, by Shift+double click on a segment.

The following icons are available in the View window:

  • Play selection
  • Play around selection
  • Scrub
  • Stop
  • Zoom in
  • Zoom out
  • Save the selected part
  • Save the non-selected part; this is only available if the View was opened from a Project.

Project

Click Select on the iconbar icon to create a new project - simply fill in the fields and click Create.

At the top of the project window are a number of project icons. Below them are the tracks, and below the tracks is the timeline. To the right of the tracks are a number of icons for each track.

Track icons

The are 5 icons for each track. From left to right:

  • Track number - click on it to change the height of the track. For drum tracks the background is blue.
  • Stereo position; click Adjust to reset.
  • Volume; click Adjust to reset.
  • DSP - this opens the DSP effects window.
  • Active - this controls if the track is active; if inactive the track will be muted and copy/cut/paste operations will ignore the track. Click Adjust to "solo" the track.

Project icons

At the far left is the StudioSound logo. At the far right are the input fields for specifying the selection.

First row, from left to right:

  • VU meter.
  • Project volume.
  • Playback direction.
  • Playback speed.
  • Play selection.
  • Play entire track.
  • Stop.
  • Pause.
  • Loop.
  • Selection mode; in all modes you can change the selection by dragging the timeline.
  • Move mode - this will move a single segment.
  • Move all mode - this will move all following segments on the active tracks.
  • Adjust segment mode.
  • Envelope mode.
  • Repeat.
  • Move selection.
  • Quantize.

Second row:

  • Select all track
  • Deselect all tracks.
  • Toggle tracks.
  • Playback speed indicator.
  • Zoom in.
  • Zoom out.
  • Snap.
  • Undo and Redo
  • Copy.
  • Cut.
  • Paste.
  • Paste insert.
  • Paste overwrite.
  • Save project - this will save the project as an EDL (Edit Decision List), which takes up very little space; use the menu to save the project as a sample file.
  • Goto previous flag.
  • Set flag - drag the icon to the timeline below the tracks to add a flag.
  • Goto next flag.

Timeline

The timeline displays the time codes and the flags.

Click Menu to change the format of the time codes.

Selection

Drag the timeline to change the selection.

Drag whilst holding down the Shift key in order to change the start or end of the selection.

Drag whilst holding down the Ctrl key in order to move the selection.

Flags

Double click Select on a flag to remove it.

Double click adjust on a flag to rename it.

Drag a flag to move it.

DSP

The DSP window allows up to 4 realtime effects to be applied to each track.

For each effect there is an on/off button, an effect select button (to scroll through the available effects), and adjust buttons for each of the parameters supported by the selected effect. Obviously the DSP effect use a fair amount of CPU, so don't expect to be able to apply effects to all tracks at the same time.

Project menu

Project submenu

Info Info about the project
Save Save the project as an EDL
Save as Save the project as a sample file, eg. WAV or AIFF
Duration Set project duration
Beats Set project beats per second
Remove Remove this project

Track submenu

Clear track Delete all segments
Copy track Copy the segments
Cut track Cut the segments
Shift track Move all segments backwards or forwards
Delete track Delete the track
Add track Add a new track
Move track Move the track up or down in the project
Mixer Open the big mixer
Type Set the track type to either Normal or Drum

There are two types of tracks, Normal and Drum. The main difference is how the segments on the track are displayed. Normal tracks are intended for segments that have a duration and might possibly be cut (eg. speech or music), whereas the Drum tracks are intended for segments that are more like a single sound or note. On Drum tracks, the segments are displayed as icons.

Selection submenu

Select all Select the entire project
Clear selection Select nothing
Copy Copy the selection onto the clipboard.
Cut Remove the selected part. Segments after the selection will be moved.
Silence Delete any segment which lies entirely within the selection. Segments that lie partly within the selection will have parts cut out.
Paste (insert) This will move all subsequent segments further down the timeline, and will then insert the selection.
Paste (overwrite) This will insert the selection without moving the segments.
Repeat Make copies of the segments that overlap the selection.
Move Move the selection up or down the track.
Quantize
Play around Play the entire project, except the selected part
Previous List of previous selections

Notice that when copying / cutting / pasting, only the active tracks will be affected. F.ex. if tracks 1, 2 and 3 are active and you copy from them, and you then deactivate those tracks and activate tracks 5 and 6 and paste, then the segments from track 1 will be inserted on track 5, and the segments from track 2 will be inserted on track 6. The segments from track3 will not be pasted.

Segment submenu

Controls This gives you access to the Segment Control window, where you may change the playback speed and volume/gain of the segment.
View This opens a new window displaying the waveform of the file.
Copy Copy the segment to the clipboard.
Cut Copy the segment to the clipboard, and delete it.
Delete Delete the segment.
Paste (insert) Insert the segment from the clipboard, moving other segments to make room.
Paste (overwrite) Insert the segment from the clipboard.
Repeat Make copies of the segment.
Split Split the segment into two.

Utilities submenu

Replace This allows to replace a library item by another library item throughout the project. Drag a library item to each of the icons in the window.
Split at cursor Split all segments that are bisected by the cursor.
Purge undo buffer In case you are running low on memory...
Tidy (1 ms) This removes any segment with duration less than 1 millisecond. Such small segments may appear when you cut close to the ends of a segment, and can be difficult to spot.
Remove all flags This removes all the flags.
Clock Open the studio clock

Repeat

Quantize

Envelope

The envelope controls the gain of a segment, and allows you to reduce the gain of parts of the segment.

Select the envelope editing icon to edit the envelopes. You might want to increase the height of the track that you are going to edit.

If a segment doesn't already have an envelope, just click on it and an envelope will be created.

To adjust the envelope, simply drag one of the envelope points or the lines that connect the points.

The 3 different ways the envelope may control the gain, this is selected in the Segment Control window:

  • Cross - for cross fading between to segments whilst keeping the combines volume constant
  • dB - for fading in/out
  • Linear - not very useful

Loading files

Load sample files

You can load samples files by dragging them to the library, or dragging them to a Project window.

Load EDL

You can load a previously saved EDL by double-clicking on it, or by dragging it to the icon on the iconbar.

If the EDL references sample files that do not exist then a window is opened allowing you to specify replacements for the missing files. Missing files will be shown in red. Specify a replacement file by dragging to to the red file name.

Load text EDL

StudioSound can load EDL in a homemade text format. This allows other programs to generate projects for StudioSound. The text EDL format is described below.

Keyboard shortcuts

THIS SECTIONS NEEDS TiDYING ...

Hotkeys in the project window

Ctrl+F1 'Select' mode
Ctrl+F2 'Move segment' mode
Ctrl+F3 'Move all' mode
Ctrl+F4 'Adjust cue' mode
Ctrl+F5 'Envelope' mode
F3 Save EDL
Shift+F3 Save samples
Shift+F7 Zoom in
Shift+F8 Zoom out
F8 Undo
F9 Redo
Ctrl+A Select all
Ctrl+C Copy selection
Ctrl+D Silence selection
Ctrl+L Toggle loop on/off
Ctrl+M Set marker
Ctrl+P Start playback from cursor/stop and set cursor
Ctrl+Q Drop project
Ctrl+V Paste
Ctrl+X Delete
Ctrl+Z Clear selection
Space Play selection/stop
Escape Stop playback
Enter Whilst playing: set marker at cursor


Mouse operations in the project window

In select mode

Drag
Shift+drag
Ctrl+drag Set selection in various ways
Double-click on segment Open segment viewer
Shift+double-click on sement Set selection to cover segment
Ctrl+double-click on segment Open segment control window

Technical details

Sample libraries

The PackMan package StudioLib contains a collection of sample files for use in StudioSound; StudioSound allows up to 9 such collections to be used.

A collection is identified by a system variable named StudioSound$SampleLibs<x> (where <x> is a number from 1 to 9) which holds the name of another system variable, which then holds the path to the collection. This allows StudioSound to determine if any file is included in a collection. If so, StudioSound stores the filename relative to the path to the collection. This means that you can distribute StudioSound project files, without having to include the sample files, so long as those that try to load the project have the same collections installed.

StudioSound$SampleLibs1 is used by StudioLib, so StudioSound$SampleLibs1 is set to StudioLib$Dir.

Choices

In version 2.05 the Choices window was removed, as most of the settings dealt with the limitations of slow platforms.

The current default settings should be fine for most users. For the rest there are a few settings that control memory usage. These can be set in the Obey file Choices:StudioSnd, which is run when StudioSound is started. The following settings are supported from version 2.07 - the default values are shown:

 Set StudioSound%CacheSize 100
 Set StudioSound%CacheFileSize 5000

StudioSound%CacheSize specifies the size of the file cache, in MBytes. StudioSound%CacheFileSize specifies the max. size of any files that can be cached, in KBytes, so in the example above, files larger than 5000 KBytes will not be cached.

Text EDL format

The format of a text EDL file is:

 EDL1
 <projectduration, seconds>
 <frequency, 8000 - 48000 Hz>
 <number of tracks>

then follows any number of special fields for the project, terminated by an empty line

 [<special fields>]

and then for each track:

 <number of segments, max 8160>
 <pan position, -255 to 255>
 <volume, -90 to 20 dB>

then follows any number of special fields for the track, terminated by an empty line

 [<special fields>]

and then for each segment on the track

 <filename of samplefile>
 <startposition in file, seconds>,>endposition in file, seconds>
 <startposition on track, seconds>,<endposition on track, seconds>
 <volume, -90 to 20 dB>

followed by any number of special fields for the segment, terminated by an empty line

 [<special fields>]

Finally, an arbitrary number of special fields follow:

 [<extra fields>]

The special fields are optional - StudioSound may choose to ignore them. Fields start with a line informing StudioSound of the type of the field, then follows any number of lines of data; the field is terminated by a line identical to the first line,eg:

 comment
 This is a comment
 comment

Currently StudioSound ignores all special fields. Lines can be no longer than 200 chars and must be terminated by a linefeed.

Example:

 EDL1
 45.80 seconds
 44100 Hz
 4 tracks
 
 2 segments on first track
 0 stereo position
 -3 dB
 
 <StudioSound$Dir>.^.Samples.HiTom
 0,0.5
 0,0.5
 -6 dB
 
 <StudioSound$Dir>.^.Samples.HiTom
 0,0.5
 1,2
 -6 dB
 comment
 this segment will be played at half speed
 comment
 
 0 segments on second track
 -255
 0 dB
 
 0 segments on third track
 255
 0 dB
 
 0 segments on fourth track
 0
 -12 dB