Well, I had to face the cold hard truth that Quicktime is dead. Unfortuately, most of m Guitar SightReader Toolbox app relies on The MBS Quicktime plugin.
This did all sorts of wonderful things: Playback of files at different speeds while maintaining the pitch, giving a VU meter so you could check the recording input volume, drawing a wave pattern of a file via a method.
I have since been migrating my Mac version to AVFoundation - which is going well (I don’t quite know how to create the VU meter yet, or change the input device).
However, my windows version with the Quicktime plugin needs some new sound engine. It would also be great not to make my uses go thru the horror of installing QT before they can use my software.
I’ve tried portaudio. It can record, it can give input volumes (for the VUmeter and wave drawing), it can choose input devices.
The only buzz kill is playing back files at different speed rates and keeping the same pitch. I’ve used OpenAL which can also record - but does not give an input volume or playback with rates.
I’ve also tried the Windows MCI audio example. This played great with some cool controls - not sure about getting the input volume or recording.
Since movieplayer lost a lot of mojo when xojo ditched editable movie and rate, what are our alternatives? IS there another library we can use that can do things like:
- export a section of an audio file to disk.
- Playback files at different rates while retaining the pitch
- Get the input device for making a VU meter
- choose the input source
Has anybody else found audio libraries that they use? What would you advise?
For a VB6 version I used the windows media player controls - and it could playback using rate and holding the same pitch… Does anybody know how to declare that and get it’s extended features?
Then, a combination of PortAudio, Windows media player would be great for playback and recording. Saving a section of audio is elusive tho
I found a media player in the MBS examples which even has rate and pitch - however the rate changes the pitch whenever you change it.
Is there a command that will keep the same pitch when that happens?
(I should make mention that I bought the comple MBS plugins for Xojo)
You’ll have to find a pitch/time processor algorithm. I use Dirac but I had to license it, takes some money. I link it into my PortAudioMBS routines, works very well.
We have PortAudio covered in MBS Plugins.
If you are on Mac only, I’d suggest checking AVAudioNote* classes in our plugins.
I heartily recommend the Active-X suite over at http://multimediasoft.com. The most thorough audio library I’ve ever used. Independent pitch and time is just a fraction of what it can do.
Hi Christian - I have your plugins and on the mac I am using AVFoundation. This gets me off Quicktime and allows it to work in Cocoa and for El Capitan.
The question is for windows. I know that the windows media player has a enhancement that plays back audio at different speeds while retaining the pitch, It’s easy to access in VB.NET…you can access these enhancements, I know because I used it when I was programming in VB.Net.
Has anybody got some declares for accessing it in Xojo?
the .Net name for the windows media control is
If it’s AxWindowsMediaPlayer then it’s an Active-X control, which means you can add it directly in Xojo the same way you do in Vb.net.
Threw this together in about 2 minutes.
one of the AVFoundation examples shows how to add a rate property to MoviePlayer.
On Mac via AVFoundation and on Windows via MediaPlayer. Try it.
You sir are the bomb! I added another button which triggered:
this slowed the track down to half speed!
I use the MBSportaudio to record.
I use this setting to change the rate
I also use this somehow to read the track volume at different points and draw a wave diagram into a canvas!
No need now to use or install quicktime for anything!
Life is wonderful!