<7!DOCTYPE html> AudioCopy: Free your Sounds.
AudioCopy. Free your Sounds.
Developers How it works Welcome

April 18, 2014

AudioCopy 2.2.4 beta SDK is now available! This allows more flexiable ways of integrating AudioCopy and paste. We have also better documented the headers and improved the Example app.

Download AudioCopy 2.2.4 beta SDK (arm64 and x86_64 included!) (XCode4 compatible xibs included) Download AudioCopy 2.0.1 SDK (XCode4 compatible xibs included)

AudioCopy 2.0 Improvements

  • Retina display support.
  • Modern, standard look and feel (goodbye woodgrain).
  • Fully resizable user interface.
  • Launch full screen, in a popover, or window.
  • Limitless history, organized by app.
  • Preview general pasteboard or audio from the history.
  • Delete sounds from the history.
  • Automatic inclusion in compatible apps list.
  • Delegate methods (from ACP 1.x) are now optional.
  • Removed all 3rd party libraries (ASINetworking).
  • Compatible apps now ordered by recent & popular apps.

Benefits to Developers

  • Provide access to users’ sound library.
  • Users can view extended sound info, audition clipboard.
  • Provide compatibility with hundreds of other apps.
  • Compatible with Intua pasteboard, general pasteboard.
  • Increase your app exposure with Compatible Apps list.
  • Easiest way to add inter-app copy & paste!

Easy Integration

Install

  1. This is optional, but we recommend you turn on iOS 7 InterApp audio in your app. This allows the library to launch the AudioCopy app smoothly in the background and will help with more efficient audio previews in the future.
  2. If you already have a previous version of AudioCopy in your app remove it and all the resources.
  3. Next drag the AudioCopy2 folder into your project. Make sure to add ../AudioCopy2 to your Framework Search Path build setting so your project can find the headers.
  4. Add other missing frameworks (AVFoundation.framework, MobileCoreServices.framework, AudioTookbox.framework, SystemConfiguration.framework, libstdc++.dylib) if they aren't there already.
  5. Add a custom launch url scheme to your app's Info.plist. To do this, click on the last line in the Info.plist and then click the "+" sign off to the right to add a new line. Select "URL Types" for the new item. Once that's added, click the grey arrow next to "URL Types" to show "Item 0". Set your URL identifier to a unique string - something like com.yourcompany.yourappname.

That's it, you're done installing. Next, you can write a few lines of code to copy and paste audio.

Usage — AudioCopy

The simplest case is handled in SimpleExample:

#import "AudioCopy/AudioCopyViewController.h"

- (IBAction)audioCopyPressed:(id)sender {
    // Copy path
    NSString *fileToCopy = [[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"testaudio-stereo.wav"];

    // Create the AudioCopyViewController
    AudioCopyViewController *audioCopyController = [[AudioCopyViewController alloc] initWithPath:fileToCopy];

    // Present modally
    [self presentViewController:audioCopyController animated:YES completion:nil];
    [audioCopyController release];
}

The view controller will take care of all the preview, copying and other workflows.

Usage — AudioPaste

#import "AudioCopy/AudioPasteViewController.h"

- (IBAction)audioPastePressed:(id)sender {
    // Paste path.
    // To create a new file, this should be a directory.
    // To let the user choose to overwrite or append, this should be an existing file.
    NSString *docsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    
    // Create the AudioPasteViewController
    AudioPasteViewController *audioPasteController = [[AudioPasteViewController alloc] initWithPath:docsPath];
    audioPasteController.delegate = self;

    // Present modally
    [self presentViewController:audioPasteController animated:YES completion:nil];
    [audioPasteController release];
}

This will walk users through the paste workflow. By default, this includes pasting to a new file, loop pasting, pasting over existing files, and appending to existing files. For basic copy and paste, that's it!

If you want to use optional, advanced features like multi-destination pasting, UIPopoverControllers, or get delegate callbacks as progress is made, the various methods are listed below or demonstrated in the Example app.

Compatible Apps List

By using AudioCopy and Paste as above you will automatically be added to CompatibleApps list. We will order this list by usage with a bonus given to apps that have recently added support for AudioCopy2. We will also include new apps in our newsletters from time to time.

AudioCopy App

After iOS7 launches, we will release the AudioCopy app. This free app will help users manage their history of sounds. When this app is installed, AudioPaste will allow users to select audio files from their copy history. We will try to provide this app as soon as possible to interested developers.

AudioCopy 1.x Compatiblity

We have worked hard to make AudioCopy 2.0 fully backwards compatible with AudioCopy 1.x.

Take a look at AudioPasteViewController.h

//acp 1.x methods that are now optional
-(void)dismissAudioPasteUI;
-(void)getPasteToArrayForAudioPaste:(NSMutableArray*)pasteToArray index:(int*)index channels:(int)channels;
-(UInt64)getCurrentPacketForAudioPaste;
-(double)getCurrentPositionInSecondsForAudioPaste;
-(void)didSucceedForAudioPaste:(int)channels index:(int)index tempo:(int)tempo packetPosition:(int)packetpos;
-(void)setDataForAudioPaste:(int)channels index:(int)index;
//acp 2.0 optional method
- (void)didPaste:(id)player atPath:(NSString *)path itemNamed:(NSString*)name withMetaData:(NSDictionary*)meta;

For details of these 1.x methods please refer to the 1.x SDK for now. Future versions of this readme, will have more detailed descriptions of these methods. Watch this space!

Thank You

Thanks for your support. With your help we can make iOS a fantastic music platform.