Drupal 8 Development - How to Loop Through Field Formatter Elements
You define N #theme render arrays, if you want to be able to control the output in a single template, you need to define only one #theme element and pass it either two array of values or an array of arrays with a uri and filename key each.

$element[0] = array(
  '#theme' =&gt; 'video_file_display',
);
foreach ($items as $delta =&gt; $item) {
  $element[0]['#items'][] = array(
    'uri' =&gt; file_create_url($item-&gt;entity-&gt;get('uri')-&gt;value),
    'filename' =&gt; $item-&gt;entity-&gt;get('filename')-&gt;value,
  );
}