Q.Twitter API で 動画ツイート 1件取得してHTML上で表示させるにはどうすれば良いですか?
・返り値のvariants配列内にある「.mp4」URLを、videoタグで指定すれば良い?
・返り値のvariants配列の中で、「.mp4」「.m3u8」の順番が異なることがあるのはなぜ?
・返り値のvariants配列内に「.mp4」が複数ある理由は? サイズ違い? サイズは固定?(例えば常に「1280x720」は存在している?)


試したこと
リンク先のベアラートークンで、下記の通り$obj取得

$obj = json_decode( $json );

$obj内容抜粋

public 'variants' => 
  array (size=4)
    0 => 
      object(stdClass)[50]
        public 'bitrate' => int 2176000
        public 'content_type' => string 'video/mp4' (length=9)
        public 'url' => string 'https://video.twimg.com/ext_tw_video/xxxx/pu/vid/1280x720/●●●●.mp4' (length=92)
    1 => 
      object(stdClass)[51]
        public 'content_type' => string 'application/x-mpegURL' (length=21)
        public 'url' => string 'https://video.twimg.com/ext_tw_video/xxxx/pu/pl/▲▲▲▲.m3u8' (length=83)
    2 => 
      object(stdClass)[52]
        public 'bitrate' => int 256000
        public 'content_type' => string 'video/mp4' (length=9)
        public 'url' => string 'https://video.twimg.com/ext_tw_video/xxxx/pu/vid/320x180/■■■■L.mp4' (length=91)
    3 => 

videoタグ指定

<video src="<?php echo (省略->video_info->variants[0]->url);?>"

上記で表示されたのですが、動画ツイートによっては、array[0]に▲▲▲▲.m3u8が来て、array[1]に●●●●.mp4が格納されていることがあり、その場合は、variants[0]では動画表示されません。
このvariants配列はどういう仕様なのでしょうか?