Если вы не против делать это вручную, это довольно легко. Я столкнулся с той же проблемой и хотел, чтобы они были где-то предсказуемыми, чтобы я мог отправлять ссылки на видео по электронной почте. В конце концов, мое решение в итоге заключалось в том, чтобы вручную кодировать функциональность. Это немного сложно, но не слишком сложно.
Во-первых, вам нужно установить Expression Encoder 4 .
Затем вам нужно добавить следующие ссылки в ваш проект:
Microsoft.Expression.Encoder
Microsoft.Expression.Encoder.Api2
Microsoft.Expression.Encoder.Types
Microsoft.Expression.Encoder.Utilities
Далее необходимо добавить следующие операторы включения:
using Microsoft.Expression.Encoder.Profiles;
using Microsoft.Expression.Encoder.ScreenCapture;
Затем вы можете использовать [TestInitialize] и [TestCleanup], чтобы определить правильное поведение. Эти методы будут выполняться в начале и конце каждого теста соответственно. Это можно сделать примерно так:
[TestInitialize]
public void startVideoCapture()
{
screenCapJob.CaptureRectangle = RectangleSelectionUtilities.GetScreenRect(0);
screenCapJob.CaptureMouseCursor = true;
screenCapJob.ShowFlashingBoundary = false;
screenCapJob.OutputScreenCaptureFileName = "path you want to save to";
screenCapJob.Start();
}
[TestCleanup]
public void stopVideoCapture()
{
screenCapJob.Stop();
}
Очевидно, этот код нуждается в некоторой обработке ошибок и крайних случаев, но он должен помочь вам начать.
Вы также должны знать, что бесплатная версия Expression Encoder 4 ограничивает вас 10 минутами для каждого видеофайла, поэтому вы можете захотеть создать таймер, который начнет новое видео для вас, когда оно достигнет 10 минут.