これは私のプログラムの概要です。イメージを含むフォルダを選択します。プログラムは、そのフォルダ内のすべての画像(拡張子.JPG)をインポートします。次に、これらのイメージをMP4にエクスポートします。このプログラムでは、私は上記の画像をエクスポートするための目に見えるタイムラインは必要ありません。Cでイメージをエクスポートするビデオ#
私は普遍的な持続時間を設定できたいと思っています。可能であれば、画像にケンバーンズ効果を持たせたいと考えています。ここで画像は単純に5%〜10% (この部分は毎回変更する必要はありません)。今のように、これは私のコードです:私はこれまで、いくつかのライブラリを見てきた
private void btnOpen_Click(object sender, EventArgs e)
{
openFolder.Description = "Open a folder containing pictures for the slideshow!";
if (openFolder.ShowDialog() == DialogResult.OK)
{
var folderPath = openFolder.SelectedPath;
MessageBox.Show(folderPath);
var fileArray = Directory.GetFiles(folderPath, "*.JPG");
float duration = 4;
float startpos = 0;
foreach (var file in fileArray)
{
var filePath = [email protected]"{folderPath}\{file}";
MessageBox.Show(filePath);
//add image to "timeline"
startpos += 4;
}
}
else
{
MessageBox.Show("Next time, select a folder and click open!", "Selection Cancelled", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void btnExport_Click(object sender, EventArgs e)
{
if (presetList.SelectedIndex == -1)
MessageBox.Show("Please select a preset!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
else
{
if (presetList.SelectedItem.ToString() == "720p, 30fps")
{
//export code here
}
else if (presetList.SelectedItem.ToString() == "720p, 60fps")
{
//export code here
}
else if (presetList.SelectedItem.ToString() == "1080p, 30fps")
{
//export code here
}
else if (presetList.SelectedItem.ToString() == "1080p, 60fps")
{
//export code here
}
}
}
、それらのどれも私のニーズに合うように思えませんし、それらのすべては、途方もなく高価であるように見えます。
https://stackoverflow.com/questions/9744026/image-sequence-to-video-streamの重複? –