Brian,

Will the end user use canberra-gtk-play?  Or is this
only something that the library is intended to use?

Are new applications expected to link to libraries
within /usr/lib/libcanberra?  If not then why isn't 
this directory and its contents Project Private?

Why does it appear that the login and logout mechanisms
are different from each other?  The login is a desktop
file and the logout is a shell script.  Is this just a
quarky Gnome thing?

GTK+ is Uncommitted?  I thought that it was Committed.
In fact LSARC/2008/510 states that the GTK library is
Committed.

Thanks,

John

P.S.  I have Cc-ed LSARC-ext instead of just LSARC
      as this case is open.

On Tue, 2008-08-19 at 15:37, Brian Cameron wrote:
> Template Version: @(#)sac_nextcase 1.66 04/17/08 SMI
> This information is Copyright 2008 Sun Microsystems
> 1. Introduction
>     1.1. Project/Component Working Name:
>        libcanberra
>     1.2. Name of Document Author/Supplier:
>        Author:  Jerry Tan
>     1.3  Date of This Document:
>       19 August, 2008
> 4. Technical Description
> 1. Introduction
>   1.1. Project/Component Working Name:
> 
>        libcanberra
> 
>   1.2. Name of Document Author/Supplier:
>        Author:         Jerry Tan 
>        Sponsor:        
> 
>   1.3. Date of This Document:
> 
>        18/08/2008
> 
>   1.4. Name of Major Document Customer(s)/Consumer(s):
> 
>        1.4.1. The PAC or CPT you expect to review your project:
> 
>                Solaris PAC
> 
>        1.4.2. The ARC(s) you expect to review your project:
> 
>                LSARC
> 
>        1.4.3. The Director/VP who is "Sponsoring" this project:
> 
>                Robert O'Dea
> 
>        1.4.4. The name of your business unit:
> 
>                Software - OPG
> 
>   1.5. Email Aliases:
>            1.5.1. Responsible Manager:  leo.binchy at sun.com
>            1.5.2. Responsible Engineer: jerry.tan at sun.com
>            1.5.3. Interest List:        jds-dev at sun.com
> 
> 2. Project Summary
>   2.1. Project Description:
>    
>        libcanberra is a desktop event sound library.
>   
> 3. Business Summary
> 
>    Sound effects are an important part of the usability of modern desktops. 
>    In the past, GNOME events have been managed by ESD, and managed by 
> libgnome.
>    The GNOME community has long been interested in deprecating the usage 
>    of both ESD and libgnome, so this library is intended to be the 
> replacement.
>    
>    The previous solution had a number of problems: a minimal set of defined 
>    sound events, no support for theming, and poor integration into 
> applications.
>    libcanberra has been introduced to resolve these problems. 
> 
> 4. Technical Description:
> 
>    4.1. Details:
>    
>    Similar to the XDG Icon Naming Specification and the XDG Icon Theme
>    Specification, the FreeDesktop.org community has been working to unify
>    event sounds on desktop, so they have created the XDG Sound Theme
>    Specification and the XDG Sound Name Specification.  The intent is that
>    these two new specifications will be established as the future standard for
>    sound event theming for free desktops.
> 
>    The libcanberra library is a very small and lean implementation of these
>    specifications.  It is also very powerful and provides a more rich set of
>    interfaces.
>    
>    An event sound is triggered via libcanberra by calling the 
> ca_context_play()
>    function on a previously created ca_context object. The ca_context_play() 
>    takes a list of key-value pairs that describe the event sound to generate 
> as 
>    closely as possible. The most important property is CA_PROP_EVENT_ID which
>    defines the XDG sound name for the sound to play. 
> 
>    Here is a code sample:
> 
>    ca_context *c = NULL;
>    /* Create a context for the event sounds for your application */
>    ca_context_create(&c);  
>    /* Set a few application-global properties */
>    ca_context_change_props(c,
>         CA_PROP_APPLICATION_NAME, "An example",
>         CA_PROP_APPLICATION_ID, "org.freedesktop.libcanberra.Test",
>         CA_PROP_APPLICATION_ICON_NAME, "libcanberra-test",
>         NULL);
> 
>    /* ... */
> 
>    /* Trigger an event sound */
>    ca_context_play(c, 0,
>         CA_PROP_EVENT_ID, "button-pressed", /* The XDG sound name */
>         CA_PROP_MEDIA_NAME, "The user pressed the button foobar", 
>         CA_PROP_EVENT_MOUSE_X, "555",
>         CA_PROP_EVENT_MOUSE_Y, "666",
>         CA_PROP_WINDOW_NAME, "Foobar Dialog",
>         CA_PROP_WINDOW_ICON_NAME, "libcanberra-test-foobar-dialog",
>         CA_PROP_WINDOW_X11_DISPLAY, ":0",
>         CA_PROP_WINDOW_X11_XID, "4711",
>         NULL);
> 
>    /* ... */
> 
>    ca_context_destroy(&c);
> 
>    To simplify libcanberra usage from a GTK+ program, GTK+ bindings are 
>    provided by the libcanberra-gtk library.
> 
>    The libcanberra GTK+ module library is used so that sounds associated with
>    GTK+ widget events are played.  In other words, by making sure that all 
> GTK+
>    based programs load this module, they will automatically support sound 
> event
>    theming according to the FreeDesktop specifications.
> 
>    libcanberra supports ogg-vorbis for default system sounds since ogg-vorbis
>    is a good free, compressed standard for desktop audio.
> 
>    4.2. Interfaces:
>    
>    Exported Interfaces
>                
>    Interface                              Classification  Comments
>    ---------------                        --------------  
> ---------------------
>    SUNWlibcanberra                        Uncommitted     the package 
>    SUNWlibcanberra-devel                  Uncommitted     the dev package 
> 
>    /usr/bin/canberra-gtk-play             Volatile        tool to play event
>                                                           sounds
>    /usr/lib/libcanberra-gtk.so.0.0.0      Volatile        libcanberra library
>    /usr/lib/libcanberra.so.0.0.0          Volatile        libcanberra-gtk
>                                                           library
>    /usr/lib/gtk-2.0/modules/              Volatile        libcanberra GTK+
>      libcanberra-gtk-module.so                            module
>    /usr/lib/libcanberra/                  Volatile        Plugin directory
>    /usr/lib/libcanberra/sunaudio.so       Volatile        SunAudio back-end
>                                                           plugin.
>    /usr/lib/pkgconfig/libcanberra-gtk.pc  Volatile        libcanberra
>    /usr/lib/pkgconfig/libcanberra.pc      Volatile        pkg-config files
> 
>    /usr/include/canberra-gtk.h            Volatile        libcanberra-gtk
>                                                           header file
>    /usr/include/canberra.h                Volatile        libcanberra header
>                                                           file
>    /usr/share/gnome/autostart             Volatile        login sound
>       /libcanberra-login-sound.desktop
>    /usr/share/gnome/shutdown              Volatile        logout sound
>       /libcanberra-logout-sound.sh
> 
>    Imported Interfaces
>     
>    Interface                    Classification          Comments
>    ---------                    --------------          --------
>    OGG/Vorbis                   Volatile                LSARC/2008/510
>    GTK+                         Uncommitted             LSARC/2008/510
>    SATA (Sun Audio)             Committed               PSARC/2001/226
> 
>    4.3. Doc Impact:
>         Man page is needed.
> 
>    4.4. Packaging & Delivery:
>         
>         SUNWlibcanberra        - the package for libcanberra
>         SUNWlibcanberra-devel  - the dev package for libcanberra
> 
>    4.5. Dependencies:
>         
> 
>    4.6. L10N Impact:
>         The Desktop team is working with the G11N to evaluate and provide 
>         I18N/L10N support 
> 
>    4.7 Security Impact:
> 
>        None.
>        
>    5. Reference Documents:
> 
>        http://0pointer.de/blog/projects/sixfold-announcement.html
>        http://0pointer.de/public/sound-theme-spec.html
>        http://0pointer.de/public/sound-naming-spec.html
>       
> 
> 6. Resources and Schedule
>     6.4. Steering Committee requested information
>       6.4.1. Consolidation C-team Name:
>               GNOME
>     6.5. ARC review type: FastTrack
>     6.6. ARC Exposure: open
> 


Reply via email to