Changeset 6cf973e6fb09b9033440754f9b3813f1804c94e0

Show
Ignore:
Timestamp:
03/14/08 14:19:00 (6 months ago)
Author:
Rafaël Carré <funman@videolan.org>
git-committer:
Rafaël Carré <funman@videolan.org> 1205500740 +0100
git-parent:

[13a418add41dc3d518c693024d2b8018c0452dc5]

git-author:
Rafaël Carré <funman@videolan.org> 1205500740 +0100
Message:

Display live stats in ncurses interface.

Activate it with hotkey 'S' ('s' is stop)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • modules/gui/ncurses.c

    r7326fad r6cf973e  
    142142    BOX_BROWSE, 
    143143    BOX_META, 
    144     BOX_OBJECTS 
     144    BOX_OBJECTS, 
     145    BOX_STATS 
    145146}; 
    146147enum 
     
    812813    } 
    813814    else if( p_sys->i_box_type == BOX_HELP || p_sys->i_box_type == BOX_INFO || 
    814              p_sys->i_box_type == BOX_META || p_sys->i_box_type == BOX_OBJECTS ) 
     815             p_sys->i_box_type == BOX_META || p_sys->i_box_type == BOX_STATS || 
     816             p_sys->i_box_type == BOX_OBJECTS ) 
    815817    { 
    816818        switch( i_key ) 
     
    10771079                p_sys->i_box_type = BOX_OBJECTS; 
    10781080            return 1; 
     1081        case 'S': 
     1082            if( p_sys->i_box_type == BOX_STATS ) 
     1083                p_sys->i_box_type = BOX_NONE; 
     1084            else 
     1085                p_sys->i_box_type = BOX_STATS; 
     1086            return 1; 
    10791087        case 'c': 
    10801088            p_sys->b_color = !p_sys->b_color; 
     
    16361644        MainBoxWrite( p_intf, l++, 1, _("     B           Show/Hide filebrowser") ); 
    16371645        MainBoxWrite( p_intf, l++, 1, _("     x           Show/Hide objects box") ); 
     1646        MainBoxWrite( p_intf, l++, 1, _("     S           Show/Hide statistics box" ) ); 
    16381647        MainBoxWrite( p_intf, l++, 1, _("     c           Switch color on/off") ); 
    16391648        MainBoxWrite( p_intf, l++, 1, _("     Esc         Close Add/Search entry") ); 
     
    19821991            y += p_sys->i_box_lines; 
    19831992    } 
     1993    else if( p_sys->i_box_type == BOX_STATS ) 
     1994    { 
     1995        DrawBox( p_sys->w, y++, 0, h, COLS, _(" Stats "), p_sys->b_color ); 
     1996 
     1997        if( p_input ) 
     1998        { 
     1999            input_item_t *p_item = input_GetItem( p_input ); 
     2000            assert( p_item ); 
     2001            vlc_mutex_lock( &p_item->lock ); 
     2002            vlc_mutex_lock( &p_item->p_stats->lock ); 
     2003 
     2004            /* Input */ 
     2005            if( p_sys->b_color ) wcolor_set( p_sys->w, C_CATEGORY, NULL ); 
     2006            mvnprintw( y++, 1, COLS-2, _("+-[Incoming]")); 
     2007            if( p_sys->b_color ) wcolor_set( p_sys->w, C_DEFAULT, NULL ); 
     2008            mvnprintw( y++, 1, COLS-2, _("| input bytes read : %8.0f kB"), 
     2009                    (float)(p_item->p_stats->i_read_bytes)/1000 ); 
     2010            mvnprintw( y++, 1, COLS-2, _("| input bitrate    :   %6.0f kb/s"), 
     2011                    (float)(p_item->p_stats->f_input_bitrate)*8000 ); 
     2012            mvnprintw( y++, 1, COLS-2,_("| demux bytes read : %8.0f kB"), 
     2013                    (float)(p_item->p_stats->i_demux_read_bytes)/1000 ); 
     2014            mvnprintw( y++, 1, COLS-2,_("| demux bitrate    :   %6.0f kb/s"), 
     2015                    (float)(p_item->p_stats->f_demux_bitrate)*8000 ); 
     2016            mvnprintw( y++, 1, COLS-2,"|"); 
     2017            /* Video */ 
     2018            if( p_sys->b_color ) wcolor_set( p_sys->w, C_CATEGORY, NULL ); 
     2019            mvnprintw( y++, 1, COLS-2,_("+-[Video Decoding]")); 
     2020            if( p_sys->b_color ) wcolor_set( p_sys->w, C_DEFAULT, NULL ); 
     2021            mvnprintw( y++, 1, COLS-2,_("| video decoded    :    %5i"), 
     2022                    p_item->p_stats->i_decoded_video ); 
     2023            mvnprintw( y++, 1, COLS-2,_("| frames displayed :    %5i"), 
     2024                    p_item->p_stats->i_displayed_pictures ); 
     2025            mvnprintw( y++, 1, COLS-2,_("| frames lost      :    %5i"), 
     2026                    p_item->p_stats->i_lost_pictures ); 
     2027            mvnprintw( y++, 1, COLS-2,"|"); 
     2028            /* Audio*/ 
     2029            if( p_sys->b_color ) wcolor_set( p_sys->w, C_CATEGORY, NULL ); 
     2030            mvnprintw( y++, 1, COLS-2,_("+-[Audio Decoding]")); 
     2031            if( p_sys->b_color ) wcolor_set( p_sys->w, C_DEFAULT, NULL ); 
     2032            mvnprintw( y++, 1, COLS-2,_("| audio decoded    :    %5i"), 
     2033                    p_item->p_stats->i_decoded_audio ); 
     2034            mvnprintw( y++, 1, COLS-2,_("| buffers played   :    %5i"), 
     2035                    p_item->p_stats->i_played_abuffers ); 
     2036            mvnprintw( y++, 1, COLS-2,_("| buffers lost     :    %5i"), 
     2037                    p_item->p_stats->i_lost_abuffers ); 
     2038            mvnprintw( y++, 1, COLS-2,"|"); 
     2039            /* Sout */ 
     2040            if( p_sys->b_color ) wcolor_set( p_sys->w, C_CATEGORY, NULL ); 
     2041            mvnprintw( y++, 1, COLS-2,_("+-[Streaming]")); 
     2042            if( p_sys->b_color ) wcolor_set( p_sys->w, C_DEFAULT, NULL ); 
     2043            mvnprintw( y++, 1, COLS-2,_("| packets sent     :    %5i"), p_item->p_stats->i_sent_packets ); 
     2044            mvnprintw( y++, 1, COLS-2,_("| bytes sent       : %8.0f kB"), 
     2045                    (float)(p_item->p_stats->i_sent_bytes)/1000 ); 
     2046            mvnprintw( y++, 1, COLS-2,_("| sending bitrate  :   %6.0f kb/s"), 
     2047                    (float)(p_item->p_stats->f_send_bitrate*8)*1000 ); 
     2048            if( p_sys->b_color ) wcolor_set( p_sys->w, C_DEFAULT, NULL ); 
     2049 
     2050            vlc_mutex_unlock( &p_item->p_stats->lock ); 
     2051            vlc_mutex_unlock( &p_item->lock ); 
     2052        } 
     2053    } 
    19842054    else if( p_sys->i_box_type == BOX_PLAYLIST || 
    19852055               p_sys->i_box_type == BOX_SEARCH ||