The user of a view shouldn't be accessing the markup. Can the viewfinder provide a method setStreamSource(...) and the play method can be called in the view whenever a new source is set.