Here are the relevant portions of two files. The first one plays just fine, the second one will only play sound, no video on my DMP-BD87. Of course, both files play just fine using XBMC as a frontend:

This file plays fine

Duration: 00:47:52.27, start: 0.000000, bitrate: 3777 kb/s
Stream #0:0(eng): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 3668 kb/s, 29.97 fps, 29.97 tbr, 2997 tbn, 2997 tbc

This file does not show video, only plays sound

Duration: 00:46:47.51, start: 0.000000, bitrate: 1834 kb/s
Stream #0:0(und): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 1725 kb/s, 29.97 fps, 29.97 tbr, 2997 tbn, 2997 tbc

I'm sure it's got to do with the "Stream #0:0(und)" but I don't know how to fix it.