On twitter player card page, it describes the behavior on mobile as this:
When viewing a Tweet with a Player Card on a desktop, the URL you specify via twitter:player will be rendered in the timeline upon expand of the Tweet. (It will be shown automatically when the Tweet is pinned open on a user’s profile, or viewed on a Tweet permalink page.)
This makes sense as it means the video plays inline in the timeline. This is good!
However, on desktop browsers it describes behavior as:
On Twitter’s iPhone and Android native apps, a Player Card will appear in the Tweet detail view (not in the timeline) and initially appears as the image preview (specified via twitter:image) with a “play” icon over it. When tapped, the native app opens the URL specified by twitter:player in a simulated browser.
This behavior choice doesn’t make sense to me. This means the biggest tap target on mobile iOS twitter app is the video thumbnail, and when you tap it, instead of playing the video directly, it opens an embedded browser to the twitter:player URL we specify. The requirement by Twitter is that this URL is the “container” player and only has the video on it. This results in a poor experience far worse than desktop browsers, and very inferior to how native video is handled when you attached directly to a tweet.
If we are going through all the trouble to conform to Twitter’s requirements for how to markup our pages for optimal video presentation, I would have expected better experience all around.