컴퓨터와 잡동사니 자료

VLC.DotNet + FFmpeg 동영상 칼컷실험기.

K66Google 2020. 12. 28. 12:23

'칼컷실험기'는 VideoRedo와 Smart Cutter의 칼컷 기능을 따라해본 프로그램이다. 

넷프레임워크 4.5.1 기반이며, C#으로 작성되었다. 사용된 외부 플러그인은 VLC.DotNet과 VLC 플러그인, FFmpeg이다.

어디까지나 기능을 '따라한' 프로그램이므로, 두 프로그램에서 정상적으로 불러올 수 있는 동영상이면 해당 프로그램을 쓰거나, LoselessCut(링크)을 쓰는 걸 권장한다.

 

* v1.13 (Source 포함)

Google Drive (클릭)

 

압축 풀고 test_vlc\bin\Debug\test_vlc.exe 실행.

 

 

* 빠른 설명 (H264 .mp4 파일 기준)

1. 프로그램을 실행한다.

 

2. 찾아보기... 로 동영상 경로를 지정한다.

 

3. VLC 열기 버튼을 클릭한다. 그럼 동영상이 자동으로 재생된다.

 

4. 재생/일시정지 버튼으로 일시정지 시킨다.

 

5. '자유 이동' 에 시간을 입력하고 이동 버튼을 누른다. 동영상이 해당 시간으로 이동된다.

 

6. '현재 위치를 프레임 번호로 환산' 을 클릭한다. 그럼 프레임 번호가 갱신된다.

 

7. 프레임 번호 밑의 - , + 버튼을 눌러서 동영상을 프레임 단위로 탐색한다. 자르기를 시작할 시간에 프레임 번호를 맞추고 '자르기 시작 시간'을 클릭한다.

 

8. 같은 방법으로 자르기를 종료할 시간에 프레임 번호를 맞추고 '자르기 종료 시간'을 클릭한다.

 

9. 최종 파일명을 지정하고, 칼컷 실시 버튼을 클릭한다.

 

10. Complete 폴더에 나온 결과물을 확인한다.

 

 

* 유의사항

간혹 동영상 연결부위의 소리가 미세하게 끊기는 경우가 있다. 해당 문제는 소리 부분을 주의깊게 들어야 확인이 가능하다.

 

 

* 버전 변동 기록

v1.13

- 영상의 마지막 시간대를 자르기 종료시간에 넣어주는 버튼 추가.
- Complete 폴더 열기 버튼 추가.

- 동영상 정보 값이 비정상적으로 불러오는 문제 수정.

- 하드웨어 가속 / 코덱에 nvenc 사용은 기본값으로 미사용하도록 변경.

 

v1.12

제작자 컴퓨터가 아닌 가상머신, 다른 컴퓨터에서 실행이 안되는 문제 수정.

(이래도 안되면 VLC 32bit 버전을 설치하고 시도해보세요.)

 

v1.11 

티스토리 첫 배포.

동영상 파일이 아닌 파일을 불러올 시 어떤 커맨드 조작도 불가능하도록 설정.

자르기 시작값과 가장 가까운 키프레임값을 식별하는 기능 추가.

자르기 시작시간/종료시간 밑에 프레임 번호도 출력되도록 함. (자르기 시작/종료 시간 버튼 클릭시에만 작동)

 

v1.1

한글파일명 동영상이 키프레임을 제대로 분석하지 못하는 문제 수정.

h264 이외 비디오 코덱 동영상도 부족하게나마 컷팅 지원하도록 수정.

키프레임 시간보다 종료 시간이 빠르면 칼컷 기능을 지원하지 않도록 수정.

 

v1.0

최초 버전 할당. 칼컷 기능 구현 및 fps 수정 기능 구현.

처음 토막이 너무 작게 잘리면 영상 트랙이 생성되지 않는 문제 수정.

최종파일명에 한글이 지원되지 않는 문제 수정.

자르기 시간을 올바르게 입력해야만 키프레임 시간 획득 / 칼컷 실시가 가능하도록 수정.