zoukankan      html  css  js  c++  java
  • System Sounds: Alerts and Sound Effects

    #include <AudioToolbox/AudioToolbox.h>
    #include <CoreFoundation/CoreFoundation.h>
     
    // Define a callback to be called when the sound is finished
    // playing. Useful when you need to free memory after playing.
    static void MyCompletionCallback (
        SystemSoundID  mySSID,
        void * myURLRef
    ) {
            AudioServicesDisposeSystemSoundID (mySSID);
            CFRelease (myURLRef);
            CFRunLoopStop (CFRunLoopGetCurrent());
    }
     
    int main (int argc, const char * argv[]) {
        // Set up the pieces needed to play a sound.
        SystemSoundID    mySSID;
        CFURLRef        myURLRef;
        myURLRef = CFURLCreateWithFileSystemPath (
            kCFAllocatorDefault,
            CFSTR ("../../ComedyHorns.aif"),
            kCFURLPOSIXPathStyle,
            FALSE
        );
     
        // create a system sound ID to represent the sound file
        OSStatus error = AudioServicesCreateSystemSoundID (myURLRef, &mySSID);
     
        // Register the sound completion callback.
        // Again, useful when you need to free memory after playing.
        AudioServicesAddSystemSoundCompletion (
            mySSID,
            NULL,
            NULL,
            MyCompletionCallback,
            (void *) myURLRef
        );
     
        // Play the sound file.
        AudioServicesPlaySystemSound (mySSID);
     
        // Invoke a run loop on the current thread to keep the application
        // running long enough for the sound to play; the sound completion
        // callback later stops this run loop.
        CFRunLoopRun ();
        return 0;
    }
    
  • 相关阅读:
    Java_适配器模式
    linux常用命令整理
    (转)使用隐藏的iframe 隐藏form提交,仿AJax无刷新提交,可以实现无刷新上传文件
    mysql添加并返回主键
    学习RMI
    关于bcprov-jdk16
    JavaScript在页面中的引用方法
    通过CFX发布WebService(一)
    字符串和json数据的转换
    MD5 加密与解密
  • 原文地址:https://www.cnblogs.com/ioriwellings/p/4118545.html
Copyright © 2011-2022 走看看