custom post type loop

There may be cleaner ways to do it, but I think this will work:

  <?php
    $args  = array('post_type' => 'music-playlist');
    $query = new WP_Query($args);

    $cntr = 0;

    while( $query -> have_posts() ) : $query -> the_post(); $cntr++; ?>

      <section class="row-wrap">
        <div class="row-inner">

          <?php if ($cntr % 2 == 1) { // first or third items, poster-content first ?>

            <div class="poster-content">
              <h1><?php echo(types_render_field('playlist-name', array('raw' => true) )); ?></h1>
              <p><?php echo(types_render_field('description', array('raw' => true) )); ?></p>
            </div>

            <img class="poster" src="https://wordpress.stackexchange.com/questions/205527/<?php echo(types_render_field("artwork', array('raw' => true) )); ?>"> 

          <?php } else { // second or fourth, img first ?>

            <img class="poster" src="https://wordpress.stackexchange.com/questions/205527/<?php echo(types_render_field("artwork', array('raw' => true) )); ?>"> 

            <div class="poster-content">
              <h1><?php echo(types_render_field('playlist-name', array('raw' => true) )); ?></h1>
              <p><?php echo(types_render_field('description', array('raw' => true) )); ?></p>
            </div>

          <?php } ?>
        </div>
      </section>
    <?php endwhile; 
  ?>

It uses the $cntr variable to track which post it’s on, and shows the image or the div depending on its even or odd – if ($cntr % 2 == 1)