user37755: To prevent lag, I need to create proxy files for each of my videos, but the built-in function is taking too long. Creating a separate file and swapping it in is too inconvenient.
I used the built-in method to create a proxy video, then restarted the editor without saving. I re-added the same video and noticed that the proxy file was recognised and used. This means that if a proxy file were to be encoded externally, Vegas Pro should recognise it.
How do I create proxy files myself with ffmpeg for example?
I discovered that the proxy file is an MPEG-4 Part II with codec ID "mp42", the "Commercial name" in the metadata being set to "XDCAM EX 35" and timestamps. It also appears to be stretched from whatever aspect ratio to 16:9 at 1280x720.
Knowing this, I composed the following ffmpeg command:
ffmpeg -i input -c:v mpeg2video -brand mp42 -metadata "Commerical name"="XDCAM EX 35" -metadata:s:v:0 "Commerical name"="XDCAM EX 35" -metadata "Encoded date"="UTC 2022-07-20 23:16:01" -metadata "Tagged date"="UTC 2022-07-20 23:16:01" -movflags use_metadata_tags -vf scale=1280:720 -an -f mp4 input.mp4.sfvp0

The editor did not recognise the file, as when I dragged the source in, I was still given the option to generate a proxy file. What am I missing?

user37755: Here's how I did it:
ffmpeg -i input -c:v mpeg2video -brand mp42 -vf scale=1280:720,select="gte(n\, 2)",tpad=start=2 -profile:v main -level:v 4.0 -colorspace:v "bt709" -color_primaries:v "bt709" -color_trc:v "bt709" -color_range:v "tv" -qscale:v 5 -video_format component -g 2 -an -f mp4 input.mp4.sfvp0

We configure ffmpeg as follows:

-c:v mpeg2video - MPEG2 codec
-brand mp42 - mp42 codec ID
-profile:v main -level:v 4.0 Main@High Profile
-colorspace:v "bt709" -color_primaries:v "bt709" -color_trc:v "bt709" -color_range:v "tv" BT.709 colour space
-video_format component - Component video format
-an - Don't include audio
-f mp4 - mp4 container

To synchronise the proxy file with the original, I used select="gte(n\, 2)",tpad=start=2.
You may also be able to modify the scale of the video so long as it conforms to the 16:9 aspect ratio, regardless of stretching and increase the quality of the proxy file with qscale:v.
Despite this, Vegas still tracks whether Proxy files were created before and does not recognise when this happens externally so these may not even be recognised in the first place.

37755: <p>To prevent lag, I need to create proxy files for each of my videos, but the built-in function is taking too long. Creating a separate file and swapping it in is too inconvenient.</p>
<p>I used the built-in method to create a proxy video, then restarted the editor without saving. I re-added the same video and noticed that the proxy file was recognised and used. This means that if a proxy file were to be encoded externally, Vegas Pro should recognise it.</p>
<p>How do I create proxy files myself with <code>ffmpeg</code> for example?</p>
<p>I discovered that the proxy file is an MPEG-4 Part II with codec ID &quot;mp42&quot;, the &quot;Commercial name&quot; in the metadata being set to &quot;XDCAM EX 35&quot; and timestamps. It also appears to be stretched from whatever aspect ratio to 16:9 at 1280x720.</p>
<p>Knowing this, I composed the following <code>ffmpeg</code> command:</p>
<pre><code>ffmpeg -i input -c:v mpeg2video -brand mp42 -metadata &quot;Commerical name&quot;=&quot;XDCAM EX 35&quot; -metadata:s:v:0 &quot;Commerical name&quot;=&quot;XDCAM EX 35&quot; -metadata &quot;Encoded date&quot;=&quot;UTC 2022-07-20 23:16:01&quot; -metadata &quot;Tagged date&quot;=&quot;UTC 2022-07-20 23:16:01&quot; -movflags use_metadata_tags -vf scale=1280:720 -an -f mp4 input.mp4.sfvp0
</code></pre>
<p>The editor did not recognise the file, as when I dragged the source in, I was still given the option to generate a proxy file. What am I missing?</p>
 37755: <p>Here's how I did it:</p>
<pre class="lang-sh prettyprint-override"><code>ffmpeg -i input -c:v mpeg2video -brand mp42 -vf scale=1280:720,select=&quot;gte(n\, 2)&quot;,tpad=start=2 -profile:v main -level:v 4.0 -colorspace:v &quot;bt709&quot; -color_primaries:v &quot;bt709&quot; -color_trc:v &quot;bt709&quot; -color_range:v &quot;tv&quot; -qscale:v 5 -video_format component -g 2 -an -f mp4 input.mp4.sfvp0
</code></pre>
<p>We configure ffmpeg as follows:</p>
<ul>
<li><code>-c:v mpeg2video</code> - <code>MPEG2</code> codec</li>
<li><code>-brand mp42</code> - <code>mp42</code> codec ID</li>
<li><code>-profile:v main -level:v 4.0</code> Main@High Profile</li>
<li><code>-colorspace:v &quot;bt709&quot; -color_primaries:v &quot;bt709&quot; -color_trc:v &quot;bt709&quot; -color_range:v &quot;tv&quot;</code> BT.709 colour space</li>
<li><code>-video_format component</code> - Component video format</li>
<li><code>-an</code> - Don't include audio</li>
<li><code>-f mp4</code> - <code>mp4</code> container</li>
</ul>
<p>To synchronise the proxy file with the original, I used <code>select=&quot;gte(n\, 2)&quot;,tpad=start=2</code>.</p>
<p>You may also be able to modify the scale of the video so long as it conforms to the 16:9 aspect ratio, regardless of stretching and increase the quality of the proxy file with <code>qscale:v</code>.</p>
<p>Despite this, Vegas still tracks whether Proxy files were created before and does not recognise when this happens externally so these may not even be recognised in the first place.</p>
