Module |
Status |
Description |
cf-main.tcl |
Modified |
Starts itv |
ui-main.tcl |
Modified |
The user interface of the channel selection window, plus channel list functions |
This module includes the user interface of the channel selection window.
ui-windows.tcl |
Modified |
Includes part of the user interface of the TV/video window. |
tv-window.tcl |
New |
Creates part of the user interface of the TV/video window created in ui-windows.tcl |
brightness.tcl |
New |
Brightness settings interface in the TV window |
volume.tcl |
New |
Volume interface in the TV window |
audio.tcl |
New |
Audio control functions for interface between itv and itv-audio |
profile.tcl |
New |
Module for reading/writing user settings to file itv.ini |
shortcut.tcl |
New |
Creates and manages the channel list on the TV window |
confbus.tcl |
|
? |
cf-network.tcl |
Modified |
Procedures for opening connections on different kinds of networks |
cf-tm.tcl |
|
? (tm means title-maker) |
cf-util.tcl |
Modified |
Collection of various utility procedures |
entry.tcl |
|
Default bindings for entry widgets
(entry widget is the same as a text box control in other
environments) |
tkerror.tcl |
Modified |
Procedures for showing error messages |
ui-ctrlmenu.tcl |
Modified |
Contains the vic
channel control dialog window (which was removed in itv) and some
utility procedures (in use by itv). |
ui-extout.tcl |
|
External output control functions |
ui-h261_play.tcl |
|
Routines for playing H.261 video.
|
ui-resource.tcl |
|
Fonts. Various default settings with [option add]. |
ui-srclist.tcl |
|
Source list window. Not in use (?) |
ui-stats.tcl |
|
Statistics. May not be in use. |
ui-switcher.tcl |
|
Handles the video switcher abstraction. Generic objects
are registered as swithable with a method to call back when switching
occurs. By using a generic callback mechanism, this code is shared
between the on screen windows and external video outputs. |
ui-unix.tcl |
|
proc run_resource_dialog (user settings) for unix |
ui-vdd.tcl |
|
Several routines initialized by vdd_main.
|
ui-win32.tcl |
|
proc run_resource_dialog (user settings) for Win32 |
vw.tcl |
|
VideoWindow object used to implement video widgets in Tcl.
|
Procedure |
Status |
Description |
session { args } |
|
Evaluates "$V(session) $args"
|
build.bar { w } |
Modified |
Builds the widgets for the bottom bar frame (.bar) of the channel list |
itv_help
|
New |
Builds and shows a help window
|
lookup_visual |
|
Look through the list of available visuals, and choose
the best one that the program supports
|
init_visual { w } |
Modified |
Initialize the visual, colormap, and dither global variables
based on X resources, available visuals, etc. |
init_color |
|
Initialize the colormodel
|
shorttime { seconds } |
New |
Formats $seconds in human readable format
|
init_channel_details { w } |
New |
Creates widgets for showing channel details (description, time, WWW) at the bottom of
the channel list |
show_channel_details { w channel_index }
|
New |
Shows channel details in $w.details for channel of index $channel_index
after a channel has been selected
|
show_www
|
New |
Runs netscape to open the WWW page for the selected channel
|
init_gui |
Modified |
Build the user-interface of the channel window. Does not build
everything, but calls other procs.
|
add_active { src } |
|
Sets active($src)=1 and creates stamp grid if necessary.
Called by really_activate.
|
rm_active { src } |
|
deactivates a source by unsetting active($src),
and destroys the stamp grid if necessary. Called by deactivate in ui-main.cc.
|
periodic_update |
Modified |
Updates the channel preview picture once in a second
|
set_rate_vars |
|
Not in use
|
select_thumbnail { w src } |
|
Called when use clicks on thumbnail video window.
|
update_source_info { src } |
|
Updates arrays src_info, src_nickname, and src_name with source channel data
|
adjust_voff { win d } |
|
Hack to get rid of ugly borer when displaying CIF sized
images in a NTSC sized windows
|
attach_renderer { src w } | |
Create a renderer for window $w and attach it to $src. Called by
decoder_changed, change_format, attach_window in ui-main.tcl. Calls
"[$src handler] attach $target". Sets win_target($w) to [new assistor
$fmt].
|
detach_renderer { src w } |
|
Calls "[$src handler] detach $win_target($w)", unsets and deletes
win_target($w)
|
attach_window { src w } |
|
Bind a source to a window so that the video stream from source
$src appears in widget $w. Sets win_src($w) and appends to
win_list($src). Calls attach_renderer. attach_window is called for
both the stamp video window (by build.src) and the big TV window.
|
detach_window { src w } |
|
Opposite to attach_window
|
window_highlight { w color } |
|
Sets the background color of $w and its children to $color
|
set_background { w color } |
|
Sets the background color of $w to $color
|
build.src { w src color } |
Modified |
Creates a preview picture for $src in the channel window $w. Calls attach_window to attach source to the preview picture.
|
bump |
|
Increases V(curcol) or if V(ncol) is met, sets V(curcol) to 0 and increases V(currow). Called by redecorate.
|
redecorate { n } |
|
Arranges the sources for the active channel.
|
create_decoder { src } |
|
Creates a decodor source $src and sets it to $src's handler.
|
activate { src } |
Modified |
Add a src to the active senders list. Make a postage stamp window.
Calls "create_decoder $src". Sets V(itv_src) to $src.
Sets pending call to "really_activate $src".
Called by Source::activate in source.cc.
|
really_activate { src } |
Modified |
Happens 1 second after activate.
Calls "add_active $src", "build.src $w $src 1". Sets
last_open_channel_src to $src.
|
update_decoder { src } |
|
Calls set_rate_vars and update_source_info.
|
change_format { src } |
|
Calls detach_renderers and then attach_renderer for $src, and a number
of other procs too. Calls "extout_attach_src $src [extout_detach_src $src]" (not in ui-main.tcl).
|
decoder_changed { d }
|
|
Called when the video stream state changes in a way that would
affect the choice of renderer.
|
detach_renderers { src }
|
|
Calls detach_renderer for each window in win_list($src).
|
change_name { src }
|
Modified |
Apparently called when the name of $src has changed.
Sets window names by using windowname in ui-windows.tcl
(which doesn't change the name because it's fixed to "Internet TV".
|
deactivate { src }
|
Modified |
Remove a src from the active senders list. Calls destroy_userwin and detach_window.
|
update_rate src
|
|
Sets statistics to arrays ftext btext ltext fpshat bpshat lhat shat, indexed by $src.
|
update_src { src }
|
|
Happens once in a second, calls update_rate and update_source_info.
|
info_text { src }
|
|
Returns an info string for $src.
|
init_channel_list
|
New |
Initializes controls on the channel list window
|
itv_adios
|
Modified |
Quits audio and video. Calls adios.
|
close_channel
|
New |
Closes the channel being viewed.
Calls quit_TV, "srctab delete $V(itv_src)",
and deletes V(data-net), V(ctrl-net), and V(session).
Sets V(channel-open) to 0.
|
open_new_channel { address }
|
New |
Opens a channel at $address.
Calls close_channel, init_network, init_late. Sets running to 1.
|
select_channel { y }
|
New |
User clicked a channel in the list -> select it
|
PacketHandler* Source::activate (source.cc) calls
"activate $src" (ui-main.tcl) to open a source.
activate creates a decoder with "create_decoder $src".
After waiting for idle, "really_activate $src" (ui-main.cc) is called.
really_activate quits from itself if there is already one source active,
that is, only one source can be active at a time.
really_activate calls "add_active $src" to set active($src)=1 and to create
some widgets if this is the first source to activate in this channel.
After this, really_activate creates user interface widgets for the
video stamp, and calls "build.src $V(grid).$src $src 1". Then it calls
"update_decoder $src".
build.src calls attach_window (ui-main.tcl)
to bind the source to the stamp video window.
attach_window calls attach_renderer to create
a renderer and attach it to $src, and it also calls
"[$src handler] attach $target" to do that.
Procedure |
Status |
Description |
destroy_userwin { w } |
|
Destroy a viewing window but remember where it was
and what size it was
|
resize { vw w h } |
|
Resize a video window. Calls detach_renderer and attach_renderer in
ui-main.tcl.
|
viewing_window { w } |
|
True if w is a top-level viewing window (name starts as ".vw")
|
window_set_slow { w } |
|
Slows (or stops?) video
|
reallocate_renderer { w } |
|
Delete and create a new renderer on window $w without
changing anything else
|
create_video_widget { w width height } |
|
Create a video widget (as implemented in vw.cc) and initialize all the
global state associated with a window.
|
stop_video { videowidget } |
New |
Checks if the video is still running, and stops it by calling detach_window.
|
quit_TV { videowidget } |
New |
Closes the TV window. Calls stop_TV. Unsets TVWindow.
|
stop_TV { videowidget } |
New |
Stops video and audio in the TV window.
Doesn't close the window. Calls stop_video.
|
open_window { src } |
Modified |
Opens a TV window for viewing video.
Creates a new window if none exists by calling create_TV_window,
uses TVWindow otherwise.
Calls attach_window to bind the source to the window.
|
create_TV_window { src } |
Modified |
Create a new window for viewing video. Creates widgets.
Calls init_tv_gui in tv-window.tcl.
Calls attach_window to bind the source to the window.
|
configure_tv { videoctrl width height } |
New |
Used to catch the configure event and resize the TV window.
|
configure_tv { videoctrl width height } |
Modified |
Used to catch the configure event and resize the TV window. Calls proc resize in ui-windows.tcl.
|
windowname { w name } |
Modified |
Names a window "Internet TV". Parameter "name" is ignored.
|
window_switch { w src } |
|
Changes the source of a TV window
|
window_set_switched { w } |
|
Calls switcher_enable / switcher_disable according to win_is_switched($w)
|
window_set_timed { w } |
|
Calls switcher_set_timer / switcher_cancel_timer according to win_is_timed($w)
|
Variable |
Status |
Description |
V |
Modified |
Array of settings:
V(class) "Vic"
V(app) "itv"
V(media) "video"
V(channel-open) New in ITV, 0 or 1, not needed ?
Unset by close_channel.
V(session) Session object
V(sessionType) One of rtp, rtpv2, vat, vic, nv, ivs
V(grid) ".top.grid" (frame) if
there are active sources
V(colorModel) ?
V(colormap) ?
V(curcol) ?
V(ncol) ?
V(currow) ?
V(itv_src) Active video source (new in ITV)
Set by activate in ui-main.tcl
V(ctrl-net) Set in net_open_xxx in cf-network.tcl
to point to a network object
V(data-net) Set in net_open_xxx in cf-network.tcl
to point to a network object
V(useHardwareDecode)
V(audio-addr) New in ITV: Address of audio stream.
Set by select_channel_advertid.
Unset if there is no audio.
V(audio-port) New in ITV: Port of audio stream.
V(capwin)
V(cb)
V(confname)
V(dither)
V(encoder)
V(encrypt)
V(gamma) Gamma (brightness) correction
(see brightness.tcl)
V(grabber)
V(muteNewSources)
V(optionsMenu)
V(visual)
V(TVWindow) New in ITV
Points to the currently open TV window.
Set by create_TV_window,
unset by quit_TV in ui-windows.tcl.
V(show-preview) New in ITV - Set to 1 to show the
video stamp window in the channel list
|
www_page |
New |
URL for the selected channel. 0 or "" if there is no URL. |
active($src) |
|
1 if $src is active, doesn't exist if it isn't.
Set by add_active, unset by rm_active in ui-main.tcl.
[array size active] gives the number of active sources.
|
running |
New |
1 if itv is running. Set by open_new_channel. Unset by close_channel.
|
src_info($src), src_nickname($src), src_name($src) |
|
Source channel information, set by update_source_info in ui-main.tcl
|
win_target($w) |
|
Set by attach_renderer to [new assistor $fmt] Unset by detach_renderer
|
win_is_slow($w) |
|
?
|
win_use_hw($w) |
|
Use hardware decode
|
win_list($src) |
|
List of TV windows by source. "win_list $src" may contain
the video stamp widget and the TV window video widget in list form.
Set by attach_window, unset by detach_window in ui-main.tcl.
|
win_is_switched($w) |
|
?
|
win_is_timed($w) |
|
?
|
win_src($w) |
|
Source for window $w. Set by attach_window, unset by detach_window in ui-main.tcl.
|
last_open_channel_src |
New |
Channel source that was last opened. Set by really_activate.
|
ftext btext ltext fpshat bpshat lhat shat (all arrays indexed by $src) |
|
Apparently statistics for sources.
Not really needed in ITV, but referred to in the code.
Set by update_rate, unset by deactivate in ui-main.tcl.
|
itv_debug
| New |
If this has value 1, itv prints a LOT of debug messages. Itv-audio
also creates file .itv-audio-debug to current
directory. Controlled by -i command line flag (see
main.cc).
|
audio_running |
New |
Has value 1, if itv-audio is running
|
audio_command_sock |
New |
Socket, through which commands are send to itv-audio
|
audio_channel_list |
New |
hash, key is channel name, value is multicast address
|
video_channel_list |
New |
hash, key is channel name, value is multicast address
|
media_channel_list |
New |
array, value is "audiovideo" if this session sends both and
either "audio" or "video" in other cases
|
channel_id_list |
New |
array, value is the name of the channel
|