Media proxies are a cool and very helpful mecanics to improve the performances of a scene. They are everywhere, in VSE of course but in places such as the camera backgrounds.
The thing is at the moment they are a bit tricky to use because the proxy quality can be controlled from the place where the clip is used but the activation of the proxy itself has to be explicitely enabled - per clip - in the Movie Clip Editor. It can be a fastidious process, a workflow in itself, and improving this is quite a big topic.
But in the mean time I think there’s something can be done in a more affortable time dev way by helping the user to understand what is happening when she doesn’t get her expected result when changing a proxy setting.
Indeed when we set a clip to use a specific proxy value (25% for instance) and this clip proxy has not been explicitly generated in the Clip Editor then we get a pink rectangle instead of a lower resolution of our media… And we may not know why. And sometimes we have this pink feedback but the proxy is (or should have been) generated, which is even more confusing because we have no idea on the issue. … And that can be the start of a long and lonely adventure…
So what I suggest here is to introduce a set of built-in images clearly mentionning the cause of the issue to be used instead of the pink rectangle. Hence when a proxy is missing we could see on the image a text saying “Missing proxy”. When a file is not found, “Missing Media”. When the file is fond but it cannot be read, “Invalid media”… And so on.
We implemented that in the in-house software we used before switching to Blender and it provided pretty good results. Here are the images we had:
I think this is a really good idea. Except the Ubisoft Animation Studio logo that’s sneakily put in the corner
Implementation wise it can be more tricky, though, as it probably requires passing more information about the nature of a failure to different parts of the code (instead of just returning NULL). Still I think it’s worth the effort, as it’ll certainly improve user experience.
Currently if proxy is not found, we do “fallback” full resolution render, which may or may not be desirable depending on circumstances. Refusing to provide output or substituting it with info graphics is sensible, but in case of proxies a little bit aggresive I would say. We could throw warning message instead with explanation of situation and how to resolve it.
Similar problem is “fix” for case where we stopped supporting recursive scene rendering from VSE. Instead of producing pink output, that may look like glitch I insisted on producing rather blank output with error message being shown. Here the “invalid media” image would be more appropriate.
@sybren Well, it’s not the UAS logo (we currently don’t have our own one), it is the logo of our previous 2D/3D tool. But you are right, I should have removed it or put a Blender logo instead (which at the end is what I would recommend instead of no logo at all since thanks to it the user clearly understand that the shown image is coming from the application).
We could throw warning message instead with explanation of situation and how to resolve it
Warning messages are great and helpful. In some cases though having also - or even only - an error image with the right information on it has some advantages. Whereas the warning message is sent once (or at least not often in order not to be intrusive) the error images can stay longuer, they do not prevent the user to work in the scene and they stay as a reminder. For example when a media is missing because the file is used offline it can be ok to work with the file and seing the Media Not Found image instead of the actual clip or texture, and everything will be fine again when the user goes online again.