How do I use Proxies in the VSE correctly?
This is a great question and actually has a simple answer. Both steps are equally necessary and have their respective purpose:

a) Sequencer: Generating Proxies

The first step is to generate proxies at one or more resolutions. In the sequencer, select the sequence in question, scroll down in the properties pane to the right to the Proxy / Timecode section.


Tick the box in front of the title Proxy / Timecode to enable the sequencer to use any available proxy that may exist for this clip. This doesn't do anything other than telling the sequencer "hey, if there's a proxy on disk at the resolution requested and enabled below, please use it!". At this stage no proxy resolution has been enabled, only the conceptual usage of a proxy if it was enabled on this clip (and the corresponding proxy sequence found on disk).
Ignore the next two boxes (Proxy Custom Directory and Proxy Custom File), they're there to override the default location of proxies, which is, relative to the location of the original sequence on disk, always set to BL_proxy/images/&lt;res&gt;, where res is the resolution of the specific proxy. Blender offers to render at 25%, 50%, 75% and 100% respectively.
The next four check-boxes enable the concrete version(s) of proxies to render as well as to use, if available. Select the resolution you wish to generate.[*]
Rendering the proxy: In the Video Sequence Editor select Strip -&gt; Rebuild Proxy and Timecode Indices while you still have your sequence/clip selected. To the right in the menu bar of the VSE you should now see a progress indicator showing the state of the proxy generation. If you now look into the folder where you have your original sequence (or movie clip) you should see a folder called BL_proxy appear (see above).


This done, the proxy/all proxies have been generated and are activated for the sequence in its preferences. Note that you can untick the proxy check-boxes in the sequence's properties pane to disable the usage (or (re-)generation) of them temporarily - this will not delete the proxy sequence on disk.

b) Preview Window: Enabling &amp; Choosing the Proxy to Use

With our clip now being equipped with one or more generated proxies we can ask our preview window to use a specific one and it will do so if a proxy for the given resolution exists and is activated for the clip. Note that this setting is preview-window-specific, meaning we can have more than one preview-window with them using different proxies.

To ask a preview window to use a specific proxy, go to the the Properties pane on the right hand side of it and under Proxy render size select the proxy resolution you would like to use from the clip (or any in the timeline as you scrub through). This will tell the preview window to not use the original resolution (clip/image sequence on disk) but the chosen proxy resolution that we generated for the clip.



The order in which you perform the two steps is irrelevant. However, both are necessary to have (a) and use (b) a proxy for a given sequence.

I hope this helps and clarifies how proxies work in Blender!

NB: This is valid for Blender 2.69 - some details might be different or missing in later or earlier versions. Feel free to comment and I'll update.



[*] As of Blender 2.69 there is a minor bug (for me). If I select more than one proxy here and generate them in the next step, the proxies are all rendered at the smallest of all selected resolutions. I.e. if 75 and 25 are selected and then rendered, the 75 proxy will have the physical resolution of 75% of the original image's dimensions but will be pixelated as if the 25% proxy was just upscaled to 75%.

The solution to this is to simply generate the proxies one by one. I.e. selecting only one resolution in the properties of the sequence pane in the sequence editor and then generating it helping Blender in not getting confused when having multiple resolutions selected simultaneously. Important to note here is that, once all desired proxies are generated, they all have to be enabled/ticked again to tell VSE to actually use them.