MP4 file Video Rendering Issues - Chrome Browser

plex-web

#1

I have an mp4 file that does not play properly using Plex Web Player 3.41.2 on Chrome Version 66.0.3359.117 (Official Build) (64-bit)/ Windows 10.
The first few seconds play OK, then the video becomes torn / blocky for the remainder of the file. The audio Is OK.

The same problem also occurs using app.plex.tv version 3.47.1. I have disabled all Chrome Extensions and tried using Incognito mode with the same problem.

It does play fine on Roku , Windows media Player and Plex via MS Edge on the same Windows 10 PC. So, it is somewhat similar to this other thread < https://forums.plex.tv/discussion/314041/>, but is specific to one particular file.

However, I can get the file to play properly on Chrome if I disable Direct Stream. I also noted that this file has mov.text streams. If enabled, the subtitles continue rendering properly even though the primary video is stuck in the torn/blocky display.

If needed, I can provide a 5 second version of the problematic file. It ends just as the rendering stalls and doesn’t get to the torn / blocky stage.

The File Info and Debug log are for the full version of the file.

File info:

<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="2" librarySectionTitle="TV Shows" librarySectionUUID="13b79678-38e6-4b76-9e8f-29c8993b851c" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1523550076">
<Video ratingKey="18452" key="/library/metadata/18452" parentRatingKey="18324" grandparentRatingKey="1378" guid="com.plexapp.agents.thetvdb://277165/5/5?lang='en"' librarySectionTitle="TV Shows" librarySectionID="2" librarySectionKey="/library/sections/2"type="episode" title="Facial Recognition" grandparentKey="/library/metadata/1378" parentKey="/library/metadata/18324" grandparentTitle="Silicon Valley" parentTitle="Season 5" contentRating="TV-MA" summary="Overshadowed by Jared in an on-camera interview, Richard’s confidence wavers further when Laurie and Monica force him to work with Eklow, a new artificial-intelligence company. Gilfoyle worries about the prospect of introducing AI into Pied Piper. Dinesh makes Jared self-conscious ahead of a second interview. Gavin questions his future beyond Hooli." index="5" parentIndex="5" year="2018" thumb="/library/metadata/18452/thumb/1524491050" art="/library/metadata/1378/art/1524491051" parentThumb="/library/metadata/18324/thumb/1524491051"grandparentThumb="/library/metadata/1378/thumb/1524491051" grandparentArt="/library/metadata/1378/art/1524491051" grandparentTheme="/library/metadata/1378/theme/1524491051" duration="1834208" originallyAvailableAt="2018-04-22" addedAt="1524491010"updatedAt="1524491050">
<Media videoResolution="480" id="15912" duration="1834208" bitrate="753" width="720" height="480" aspectRatio="1.78" audioChannels="2" audioCodec="aac" videoCodec="h264" container="mp4" videoFrameRate="24p" optimizedForStreaming="1" audioProfile="lc"has64bitOffsets="0" videoProfile="high">
<Part accessible="1" exists="1" id="15958" key="/library/parts/15958/1524482936/file.mp4" duration="1834208" file="D:\Storage\Media Library\TV Shows\Silicon Valley\Season 5\Silicon.Valley.S05E05.mp4" size="172546359" audioProfile="lc" container="mp4"has64bitOffsets="0" optimizedForStreaming="1" videoProfile="high">
<Stream id="20909" streamType="1" default="1" codec="h264" index="0" bitrate="558" language="English" languageCode="eng" anamorphic="1" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" colorPrimaries="bt709" colorRange="tv" colorSpace="bt709"colorTrc="bt709" frameRate="23.976" hasScalingMatrix="0" height="480" level="30" pixelAspectRatio="237:200" profile="high" refFrames="5" streamIdentifier="1" width="720"/>
<Stream id="20910" streamType="2" selected="1" default="1" codec="aac" index="1" channels="2" bitrate="195" language="English" languageCode="eng" audioChannelLayout="stereo" profile="lc" samplingRate="48000" streamIdentifier="2"/>
<Stream id="20911" streamType="3" default="1" codec="mov_text" index="2" bitrate="0" language="English" languageCode="eng" streamIdentifier="3"/>
<Stream id="20912" streamType="3" codec="mov_text" index="3" bitrate="0" language="English" languageCode="eng" streamIdentifier="4"/>
</Part>
</Media>
<Director id="16626" filter="director=16626" tag="Gillian Robespierre"/>
<Writer id="49367" filter="writer=49367" tag="Graham Wagner"/>
<Field locked="1" name="title"/>
<Field locked="1" name="titleSort"/>
<Extras size="0"></Extras>
</Video>
</MediaContainer>

Debug Log - this seems to be the interesting part where things fall apart….

{
    "type": "log:message",
    "level": 1,
    "message": "[Player] A critical HTML media error occurred: 3 (Decode); the player cannot recover",
    "time": "2018-04-23T15:13:47.927Z"
  },
  {
    "type": "log:message",
    "level": 1,
    "message": "[Player] Direct Play failed, but server can transcode. Attempting to fallback to either Direct Stream or transcode...",
    "time": "2018-04-23T15:13:47.927Z"
  },
  {
    "type": "log:message",
    "level": 4,
    "message": "[MediaElement] Releasing media element to pool. type: video",
    "time": "2018-04-23T15:13:47.930Z"
  },
  {
    "type": "log:message",
    "level": 2,
    "message": "[MDE] Augmented profile: {
  \"directPlay\": {
    \"mp4\": {
      \"mimeType\": \"video/mp4; codecs=\\\"avc1.42E01E\\\"\",
      \"video\": {
        \"codecs\": {
          \"h264\": {}
        },
        \"maxWidth\": 1920,
        \"maxHeight\": 1280,
        \"maxFrameRate\": 60
      },
      \"audio\": {
        \"codecs\": {
          \"aac\": {}
        }
      }
    },
    \"mkv\": {
      \"mimeType\": \"video/webm\",
      \"video\": {
        \"codecs\": {
          \"vp8\": {}
        },
        \"maxWidth\": 1920,
        \"maxHeight\": 1280,
        \"maxFrameRate\": 60
      },
      \"audio\": {
        \"codecs\": {
          \"vorbis\": {}
        }
      }
    },
    \"ogg\": {
      \"mimeType\": \"video/ogg\",
      \"video\": {
        \"maxWidth\": 1920,
        \"maxHeight\": 1280,
        \"maxFrameRate\": 60
      }
    },
    \"mpegts\": {
      \"protocol\": \"hls\",
      \"video\": {
        \"maxWidth\": 1920,
        \"maxHeight\": 1280,
        \"maxFrameRate\": 60
      }
    },
    \"flv\": {
      \"video\": {
        \"maxWidth\": 1920,
        \"maxHeight\": 1280,
        \"maxFrameRate\": 60
      }
    }
  },
  \"directStream\": {
    \"video\": {
      \"codecs\": {
        \"h264\": {}
      },
      \"maxWidth\": 1920,
      \"maxHeight\": 1280,
      \"maxBitDepth\": 8
    },
    \"audio\": {
      \"codecs\": {
        \"aac\": {}
      },
      \"maxBitrate\": 192,
      \"maxChannels\": 2
    }
  }
}",
    "time": "2018-04-23T15:13:47.934Z"
  },
  {
    "type": "log:message",
    "level": 2,
    "message": "[MDE] Starting analysis of 480 (mp4, h264, aac, 30, high)",
    "time": "2018-04-23T15:13:47.934Z"
  },
  {
    "type": "log:message",
    "level": 4,
    "message": "[MDE] Analyzing direct play",
    "time": "2018-04-23T15:13:47.934Z"
  },
  {
    "type": "log:message",
    "level": 1,
    "message": "[MDE] Direct play failed; option is disabled",
    "time": "2018-04-23T15:13:47.934Z"
  },
  {
    "type": "log:message",
    "level": 4,
    "message": "[MDE] Analyzing video direct stream",
    "time": "2018-04-23T15:13:47.934Z"
  },
  {
    "type": "log:message",
    "level": 4,
    "message": "[MDE] Analyzing audio direct stream",
    "time": "2018-04-23T15:13:47.934Z"
  },
  {
    "type": "log:message",
    "level": 1,
    "message": "[MDE] Invalid profile property; bitrate: 195 > 192",
    "time": "2018-04-23T15:13:47.934Z"
  },
  {
    "type": "log:message",
    "level": 4,
    "message": "[MDE] Analyzing playability",
    "time": "2018-04-23T15:13:47.934Z"
  },
  {
    "type": "log:message",
    "level": 2,
    "message": "canPlay: true",
    "time": "2018-04-23T15:13:47.935Z"
  },
  {
    "type": "log:message",
    "level": 2,
    "message": "canDirectPlay: false",
    "time": "2018-04-23T15:13:47.935Z"
  },
  {
    "type": "log:message",
    "level": 2,
    "message": "canDirectStreamVideo: true",
    "time": "2018-04-23T15:13:47.935Z"
  },
  {
    "type": "log:message",
    "level": 2,
    "message": "canDirectStreamAudio: false",
    "time": "2018-04-23T15:13:47.935Z"
  },
![](/uploads/default/original/3X/0/2/029cd51101c5bf0dae5c652f548b2387211793af.png "")


Gerald