Package: virtualensemble
IntroductionVirtualEnsemble is free and makes it quick and easy to record music individually and merge the recordings to create a mosaic video.If you find VirtualEnsemble useful and post your performances online, we'd love to see them so please do email a link toEmailVirtualEnsemble@gmail.com.Note that this program is quite new and has only been tested on Linux and Windows (though should work on Macs too). Before starting a large project with it, please test that it works well for you.How to install VirtualEnsembleStep 1: Install pythonDownloadpython3and install it, if you don't already have it. If you use Linux you almost certainly already have python.Step 2: Install VirtualEnsembleIn Windows, open a "command prompt" and type:py -m pip install virtualensembleIn Linux, open a terminal and type:python3 -m pip install virtualensembleStep 3: Install FFmpegDownload and installFFmpeg.For Windows, there are various guides on the internet on how to install FFmpeg if needed. In short, downloadthis file(link correct at the time of writing) and unzip it where you like (remembering where you unzipped it).For Mac, you need to downloadFFmpegand alsoFFprobeand put them in the same folder. You can download them using these links:FFmpeg,FFprobe.If you use Linux you probably already have FFmpeg installed or an easy way or doing so. Note that you need support for mp3 files, which might not be there in your default version of FFmpeg.Step 4: Run VirtualEnsembleIn Windows, open a "command prompt" and type:py -m virtualensembleIn Linux, open a terminal and type:virtualensembleIf VirtualEnsemble can't find FFmpeg it will ask you to do so. You need to choose the file called "ffmpeg.exe" (Windows) or "ffmpeg" (Linux), usually in the "bin" folder of where you installed FFmpeg.How to create a virtual performanceStep 1: prepare a backing trackYour singers/players will play along to a backing track whilst recording themselves on a phone. Timing is everything so a strong metronome beat on the backing track is highly recommended.There are various ways of creating a backing track, for example:Download midi or similar music from theChoral Public Domain LibraryorIMSLPand add a metronome beat/edit the tempo in your favourite score editor (e.g.Musescorewhich is free).Record a piano accompaniment with a load metronome beat.Search the web for others was of doing this.Step 2: add the VirtualEnsemble audio signature to you backing trackGo to theMosaic makertab in VirtualEnsemble and to theCreate backing tracktab.Choose theaudio filewith your backing track and choose andoutput file.ClickCreate backing track.VirtualEnsemble will create add an audio signature at the start of your backing track which will be used to automatically align the individual recordings.Step 3: get the recordingsSend the backing track (with audio signature) to your performers with instructions.Stress that the most important thing is that your performers are exactly in time with the backing track.They need to:Start a video recording of themselves using a phone or similar.Play the backing track from a playback device.At the start, the backing track needs to be playedthrough speakers. This way, the audio signature will be captured on the recording. It is important that this is recorded clearly.Once the audio signature has played, plug headphones into the playback device so that the rest of the backing track won't be recorded.Send you the recording (e.g. usingWeTransfer).Step 4: add the recordings to VirtualEnsembleGo to theAdd filestab of VirtualEnsemble.Click onAdd files and calculate lags....Your recordings will be added to the table at the bottom of the window. You can also remove files from the table using theRemovebuttons.Step 5: choose the video layoutGo to theRendertab of VirtualEnsemble.Choose theNumber of videosyou want in the mosaic.Change in which frame each video is showing. You can do this by dragging them around in the preview pane with the mouse. You can also change thePositionin the table at the bottom.Play around with theRow layout,No. rows/colsandBorder widthto make the mosaic look good.You will need to zoom in and move the videos. There are two ways to do this:By clicking and dragging in the preview pane. Instructions are written under the preview pane.Typing theZoom,X offsetandY offsetinto the table.Select anOutput file.Choose theStartandEndtimes of the output. PressingGrabwill copy the current time from preview slider.Add aTitleandSubtitle. Note the preview does not show these.Step 6 - option 1: use automatic audioVirtualEnsemble can automatically mix the audio, and does so if you don't select anAudio file (optional). The approach used is to ensure that each part has a similar overall volume and then mix them together.Optionally, you can change theVolumeof each track in the table. Note that this only affects the relative volume. This can be useful if, for example, you don't have as many people singing/playing a particular part.Step 6 - option 2: edit the audio yourselfIf you want to do some more serious auto editing:Go back to theAdd filestab.ClickOutput synchronised audio. This will output a flac audio file for each input that has been synchronised.These files will be saved in the same place as the original but with".timelag.flac"added to the filename.You can import these into an audio editing program (e.g.Audacitywhich is free) and edit them.You should avoid repositioning the audio(e.g. trimming the start).Once you have finished editing, output the audio into an audio file (preferable a lossless format like .wav or .flac).You can choose to use this audio file by selecting it as theAudio file (optional)in theRendertab.Step 7: Render the videoClickRenderon theRendertab. After some time (you can see progress in theOutputtab), your mosaic should be ready.Also...You cansaveorloadat any time using theFilemenu.You can add audio only files in the same way as adding videos, if needed.In theRendertab you can chooseHigh quality audio. This is the default and will encode the audio as vorbis. If you useVLC playeror similar this will work on Windows and Macs, but it doesn't seem to work on the default players. If you unclick, audio will be encoded in aac which is still very high quality.In theRendertab there are two more buttons:Replace audio in videocan be used just to change the audio if you have already produced the video, which is quicker than re-rendering the whole video, and useful to change the balance or similar. The result will be saved in a new file. Note this will not be synchronised if you have changed the start/end times since rendering the video.Encode audio onlywill mix the audio only and output a flac file. This is useful if you want to edit the automatic audio (e.g. add reverb or noise reduction). You can then input this audio by choosing it inAudio file (optional). The audio file will reflect the start/end times for the video, but may have some silence at the start so that it can be used with theReplace audio in videobutton whilst remaining synchronised.TheCopy video/sync audiotab provides different functionality. If you have recorded a video and at the same time recorded separate audio (e.g. on a high quality microphone) then this will automatically synchronise them.If something went wrong...It’s out of syncIf the performance is out of sync because the performers were not in time, then audio editing is the only option. SeeStep 6 - option 2above.VirtualEnsemble may have calculated the synchronisation incorrectly. In this case, you can adjust this by editing theCut/(add) secsin the table. The best way of doing this is probably to output the audio (seeStep 6 - option 2), load the files into an audio editor and try and work out the adjustment that is needed.The balance is wrongYou might be able to fix this with theVolumeoption in the table, but this will adjust the volume by the same amount over the whole video. If you need something more precise, then you will have to edit the audio yourself (seeStep 6 - option 2).There is no audioYour audio player may be to blame. Try usingVLC playeror unselectingHigh quality audioas described above.The program didn’t workSorry to hear this. Please do get in touch to say what went wrong (EmailVirtualEnsemble@gmail.com). Please include the output in theOutputtab and a copy of the file saved using through theFilemenu.