[Player-dev] CR-Client: ICT (Internet Connection Test) improvement work
Bob Clark bobclark at real.comLooks good, Daniel. --Bob At 01:19 PM 10/16/2006, Daniel Yek wrote: >Modified by: dyek at real.com >Date: 10/16/2006 >Project: Helix Player > >Synopsis: This check-in adds and polishes numerous ICT functionalities and >fixes bugs. > >Overview: >Introduced a pipe connecting the POSIX/UNIX signal handler to GTK+ >I/O Channel so that the POSIX signal handler can avoid unsafe function >calls. This solved the "instability" bug experienced when there is no >Internet connection. > >Implemented functionality to select the fastest from multiple perftest >sites. Currently, there are 2 perftest sites, one USA-based, the other >UK-based. > >Now, the implementation can handle the case where slow download is still >going on when it timed out. In USA, this duration could have been 1 second, >even for 14.4 kbps modem connection, and an accurate bandwidth measurement >could still be obtained. However, this implementation handles TCP connection >timeout by capping it to 3 seconds per download and implement perftest >site-selection, so we can't actually set the duration of ICT >(Internet Connection Test) to 1 sec. >The duration is currently set to 10 seconds so that the test can work >better for more oversea users. > >The implementation has been subjected to a lot of simulated tests during >development and it was working well. >Error handling is much improved. TCP/IP stack (or/and name resolver) is >warmed up before bandwidth tests are started; >that improved selection of perftest site significantly. > > >Files Modified: >player/app/gtk/ict_wget.c - Contains the bulk of the work. >player/app/gtk/ict.cpp - added "Undefined" bandwidth text; handle timeout > callback better. > >player/app/gtk/ict.h - Remove an unused function parameter. >player/app/gtk/ict_wget.h - Added some function prototypes. >player/app/gtk/ict_interface.c - Changes in label text. >player/app/gtk/res/ict.glade - Changed label text. > >player/app/gtk/setup.cpp - Connect window delete_event callback. >player/app/gtk/prefsdialog.cpp - Minor change in callback function prototype. > > >Image Size and Heap Use impact (Client -Only): >None. > >Platforms and Profiles Affected: >Linux > >Distribution Libraries Affected: >None. > >Distribution library impact and planned action: >None. > >Platforms and Profiles Build Verified: >Profile: helix_client_all_define >Platform: Fedora Core 5 > >Platforms and Profiles Functionality verified: >Profile: helix_client_all_define >Platform: Fedora Core 5 > >Branch: HEAD > >Copyright assignment: I am a RealNetworks employee. > > > > > >-- >Daniel Yek > > > >_______________________________________________ >Player-dev mailing list >Player-dev at helixcommunity.org >http://lists.helixcommunity.org/mailman/listinfo/player-dev