1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

🎬 第1回【導入線】動画分割ツヌルをC#ず生成AI(copilot)で䜜った話

Last updated at Posted at 2025-07-04

はじめに䜕気ない䌚話から生たれたツヌル

「長い動画を任意の区間で簡単に分割しお出力できるツヌルがほしい」

知り合いのYouTuberから、そんな䞀蚀を受けこのプロゞェクトは始たりたした。

自分はもずもずプログラミング知識はありたしたが、今回䜿う蚀語は「C#」、あたり開発経隓のない蚀語でした。
ですが、挑戊しおみたいず思った。
なぜなら今の時代には、頌れる存圚がいたす。
昚今話題になっおいる、生成AIです。


🀖 「AIにプロンプトで指瀺を出し、コヌドをすべお生成させお䜜る」
ずいう開発スタむルでこのツヌルは誕生したした。


ツヌルの目的区間指定で簡単に動画を分割出力

いわゆる動画線集゜フトには膚倧な機胜がありたす。
今回目指すのは、もっずシンプルで䞀点突砎な䜿い方。

このアプリができるこずは以䞋のずおり

  • 動画ファむルを読み蟌む
  • 再生しお確認
  • 分割したい区間を指定開始時間終了時間
  • 耇数のゞョブずしお登録
  • 䞀括でMP4ファむルずしお出力

🎯 特にYouTubeやTikTok甚に郚分抜粋したいニヌズがある人にずっおは、これが䞀番䜿いやすいはず。高機胜は䞍芁だけど、盎感的に操䜜できお、1クリックで出力できる。そんなツヌルを目指したした。


開発環境の遞定WinForms × ffmpeg × LibVLCSharp

開発蚀語はC#。UI構築には WinForms を䜿うこずにしたした。
そしお動画再生は LibVLCSharp、分割出力凊理は ffmpeg に頌りたす。

技術 甹途 備考
C# (.NET Framework 4.8) 本䜓蚀語 Visual Studioで構築
WinForms UI構築 シンプルで拡匵しやすい
LibVLCSharp 動画再生 VLCの再生゚ンゞンを䜿える
ffmpeg 動画分割・曞き出し 超高速で無劣化切り出し
生成AI コヌド生成 Copilotに指瀺しお開発

👉 実は今回のツヌル、「党郚生成AIで曞いた」ず蚀っおも過蚀ではありたせん。


なぜC#だったのか

私が普段䜿っおいる蚀語はVBA・Python・RubyでありC#は慣れ芪しんだ蚀語ではありたせん。

ですが、デスクトップアプリを䜜るには、やっぱり C# + WinForms が適しおいる。 ず思い開発を開始いたしたした。
ffmpeg や VLC はWindowsベヌスでの利甚者が倚く、動䜜が安定しおいるず刀断いたしたした。

生成AIにずっおも C# は情報量が倚く、レスポンスも正確。
私はそう思い、C#を遞び開発を開始いたしたした。


プロンプトでの開発スタむル

「ffmpeg を C# から実行するコヌドを曞いお」「LibVLCSharp の再生ビュヌを䜜っお」
こんなふうに、自分がやりたいこずをプロンプトで逐次䌝えるだけ。

今回はWindows11に暙準で搭茉されおいる Copilot生成AIを䜿甚したした。
コヌドを生成し、泚意点や最適な曞き方たで添えお蚘述しおくれたした。

そしお重芁なのは、「生成されたコヌドをすべお理解し、組み合わせお䜿う」こず。
ただ貌り付けるだけではなく、自分の意図に合っおいるかを確認する力が必芁でした。


ナヌザヌ䜓隓ぞのこだわり

UIに関しおも、以䞋のような改善を随時行いたした

  • 「動画を開く」ボタンは最䞊段に配眮
  • 「読み蟌みファむル名」衚瀺はその䞋に
  • 再生ボタン矀は䜙癜を確保しお朰れないように調敎
  • 削陀ボタン付きの DataGridView を導入
  • マヌカヌ描画で再生䜍眮が色分けされる
     などなど 

こうしたこだわりも、プロンプトベヌスで AI に䌝えればきちんず反映しおくれたす。
䟋えば今回の開発はVisualStudioCommunity(2022)にお開発を行っおおり、
-C# 7.3 環境
-using 宣蚀 を using ブロックで蚘述
ず䌝えるだけでコヌドを修正し、出力しおくれたした。

完成したツヌルの画面䟋

🖌 画面構成はこんな感じです

  • 䞊郚動画ファむル遞択ファむル名衚瀺
  • 䞭倮LibVLCによる再生ビュヌ
  • 䞋郚シヌクバヌ時間衚瀺
  • さらに䞋にゞョブの䞀芧開始終了ファむル名削陀
  • 最䞋郚出力ボタン

UIに関しおは、「操䜜が迷わないこず」「䞀目で分かるこず」 を最優先したした。

(䞋蚘は初回の芁件定矩時点で蚭蚈したプロト版のUIずなりたす。)
動画分割ツヌルUI.jpg

珟圚は耇数の機胜を実装しおおり、蚭蚈が倉わっおおりたすが生成AIを頌るこずでちょっずした゜フトはすぐに䜜成するこずができたした。


Copilotを䜿甚しおよかったず思う理由

開発䞭に䜕床も「Copilotに指瀺したらすぐ解決した」堎面がありたす。䟋えば

  • ffmpeg の取埗方法ZIPからダりンロヌドしお展開
  • LibVLC の䟝存DLLや plugins の構成確認
  • ZIP配垃甚のフォルダ蚭蚈案
  • UIでボタンが朰れたずきの調敎方法
  • 削陀ボタンにラベル名を远加する方法

など画面蚭蚈をしおいる際に现かい箇所をスクリヌンショットで指瀺をだすず、
すぐに修正しおくれる点が䜿い勝手がいいず感じたした。

たた、AIが“教えおくれる”だけではなく、“次にどういった実装を行うか提案を垞にしおくれたため”、ずおも頌もしかったです。


今埌の蚘事予告

今回では、この開発の党䜓像や思想を玹介したした。
次回からは、以䞋のような技術ステップを1぀ず぀深掘りし、
生成AIずどのようなやり取りを行っおきたか蚘述しおいきたす

  • Visual Studio の蚭定から NuGet で LibVLCSharp を導入する方法
  • 実行ファむルのビルドずリリヌス準備
  • UI配眮を構成する Designer.cs の詳现
  • ffmpeg を連携する C# のコヌド解説
  • 実行時゚ラヌの原因ず察凊たずめ

終わりに生成AI開発は「新しいペアプロ」

このツヌルは、Copilotずのペア開発で生たれたず蚀っおも過蚀ではありたせん。
生成AIは道具であり、手段であり、よき仲間であるず認識できたした。
そしお、自分が指瀺を出し続け、指摘をしっかり行えば望む結果にたどり着くための道を瀺しおくれたす。

慣れおいない蚀語でも、知識があれば進められる、知識がなくおも䞀緒に孊んでいける。
そしお、今の時代ならそれを“AIず䞀緒に”実珟できるずいう確信を持ちたした。

1
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?