Changeset 0aebd65691ffa6427f13500adc65f5fc1fd8f8d0

Show
Ignore:
Timestamp:
27/03/08 07:20:32 (7 months ago)
Author:
Jean-Baptiste Kempf <jb@videolan.org>
git-committer:
Jean-Baptiste Kempf <jb@videolan.org> 1206598832 -0700
git-parent:

[83a70bc8bd87420e8a4e8be713ac048ab218b09c]

git-author:
Dylan <dyudaken@gmail.com> 1206361610 +0200
Message:

Add Hotkey to cycle through audio devices

Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • include/vlc_keys.h

    rc3a591a r0aebd65  
    335335#define ACTIONID_ZOOM_ORIGINAL         94 
    336336#define ACTIONID_ZOOM_DOUBLE           95 
    337  
     337/* Cycle Through Audio Devices */ 
     338#define ACTIONID_AUDIODEVICE_CYCLE     96 
    338339#endif 
  • modules/control/hotkeys.c

    rc3a591a r0aebd65  
    505505                                 list2.p_list->p_values[i].psz_string ); 
    506506            } 
     507            else if( i_action == ACTIONID_AUDIODEVICE_CYCLE && p_vout) 
     508            { 
     509                vlc_value_t val, list, list2; 
     510                int i_count, i; 
     511                aout_instance_t *p_aout = vlc_object_find( p_intf, VLC_OBJECT_AOUT, FIND_ANYWHERE ); 
     512                var_Get( p_aout, "audio-device", &val ); 
     513                var_Change( p_aout, "audio-device", VLC_VAR_GETCHOICES,&list, &list2 ); 
     514                i_count = list.p_list->i_count; 
     515                if( i_count <= 1 ) 
     516                { 
     517                    continue; 
     518                } 
     519                for( i = 1; i < i_count; i ) 
     520                { 
     521                    if( val.i_int == list.p_list->p_values[i].i_int ) 
     522                    { 
     523                        break; 
     524                    } 
     525                } 
     526                if( i == i_count ) 
     527                { 
     528                    msg_Warn( p_aout, 
     529                              "invalid current audio device, selecting 0" ); 
     530                    var_Set( p_aout, "audio-device", 
     531                             list.p_list->p_values[1] ); 
     532                    i = 1; 
     533            
     534                } 
     535                else if( i == i_count -1 ) 
     536                { 
     537                    var_Set( p_aout, "audio-device", 
     538                             list.p_list->p_values[0] ); 
     539                    i = 0; 
     540            
     541                } 
     542                else 
     543                { 
     544                    var_Set( p_aout, "audio-device", 
     545                             list.p_list->p_values[i1] ); 
     546                    i; 
     547         
     548                } 
     549                vout_OSDMessage( VLC_OBJECT(p_input),  
     550                                 DEFAULT_CHAN, 
     551                                 _("Audio Device: %s"), 
     552                                 list2.p_list->p_values[i].psz_string ); 
     553        
     554            } 
    507555            else if( i_action == ACTIONID_SUBTITLE_TRACK ) 
    508556            { 
  • src/libvlc-module.c

    rbd040d3 r0aebd65  
    13571357        "Selecting current widget performs the associated action.") 
    13581358 
     1359#define AUDI_DEVICE_CYCLE_KEY_TEXT N_("Cycle through audio devices") 
     1360#define AUDI_DEVICE_CYCLE_KEY_LONGTEXT N_("Cycle through available audio devices") 
    13591361const char vlc_usage[] = N_( 
    13601362    "Usage: %s [options] [stream] ..." 
     
    21932195#   define KEY_MENU_DOWN          KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_DOWN 
    21942196#   define KEY_MENU_SELECT        KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_ENTER 
     2197#   define KEY_AUDIODEVICE_CYCLE  KEY_MODIFIER_ALT|'a' 
    21952198#endif 
    21962199 
     
    22732276    add_key( "key-audio-track", KEY_AUDIO_TRACK, NULL, AUDIO_TRACK_KEY_TEXT, 
    22742277             AUDIO_TRACK_KEY_LONGTEXT, VLC_FALSE ); 
     2278    add_key( "key-audiodevice-cycle", KEY_STOP, NULL, AUDI_DEVICE_CYCLE_KEY_TEXT, 
     2279             AUDI_DEVICE_CYCLE_KEY_LONGTEXT, VLC_FALSE ); 
    22752280    add_key( "key-subtitle-track", KEY_SUBTITLE_TRACK, NULL, 
    22762281             SUBTITLE_TRACK_KEY_TEXT, SUBTITLE_TRACK_KEY_LONGTEXT, VLC_FALSE ); 
     
    26062611    { "key-menu-down", ACTIONID_MENU_DOWN, 0, 0, 0, 0 }, 
    26072612    { "key-menu-select", ACTIONID_MENU_SELECT, 0, 0, 0, 0 }, 
     2613    { "key-audiodevice-cycle", ACTIONID_AUDIODEVICE_CYCLE, 0, 0, 0, 0 }, 
    26082614    { NULL, 0, 0, 0, 0, 0 } 
    26092615};