in reply to Optional and default parameters for a subroutine

I have a subroutine named 'StartCapture' in which all parameters could be optional. If the user pass arguments to this subroutine it will be same as in the example specified below. If some arguments are not passed during function call then default values must be taken for those arguments ONLY.
That's what your code does already. (update/note: but see also friedo's post on the \%filterHash change).
Also, how to access the values of multi level hashes when receiving the arguments in subroutine 'StartCapture'
my $value = $args{twigs}{filter};
for example. See perldata and perlreftut.