looping though custom post types and only return results in a given taxonomy

Check the documentation here:

http://codex.wordpress.org/Function_Reference/WP_Query#Taxonomy_Parameters

You’ll want to add this to your wp_query:

'smash-palace' => 'smash-palace'

In other words, your new query would look something like:

$loop = new WP_Query( array( 'post_type' => 'videos', 'artists' => 'smash-palace', 'post_child' => 0, 'posts_per_page' => 5 ) );

EDIT: I answered this question under the assumption that “Smash Palace” isn’t actually a separate taxonomy, but a term within your existing “Artists” taxonomy. If “Smash Palace” is actually a separate taxonomy, then the following should work:

$args = array (
   'tax_query' => array (
      array (
         'post_type' => 'videos',
         'taxonomy' => 'smash-palace',
         'field' => 'slug',
         'terms' => 'slug-of-your-term'
      )
   )
);

$query = new WP_Query( $args );

if( $query->have_posts() ) {
   while ( $query->have_posts() ) : $query->the_post();
      // output your stuff
   endwhile;
}

One thing I noticed: if you do not define “terms” in the tax_query array, you may get unexpected results (or none at all).

You can query multiple terms at once like this:

$args = array (
   'tax_query' => array (
      ...
      'terms' => array ( 'slug-of-term-one', 'slug-of-term-two' )
   )
)

I hope that helps — let me know if I understood your question correctly.