There are 2 ways to play in slow motion, first, you can set IsSlowMotion = true anytime *after* MediaOpened fires. For example:
async void player_MediaOpened(object sender, RoutedEventArgs e)
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
player.IsSlowMotion = true;
The second way is to change the default playbackrate (this must be done before MediaOpened fires)
player.DefaultPlaybackRate = player.SlowMotionPlaybackRate;
Note: You can change the slow motion rate by setting SlowMotionPlaybackRate. By default, this is .25 (1 is the normal playback rate)
To record video in slow motion you need video editing software. I don't have any recommendations on which one however.