본문 바로가기

TIP

[FFPROBE] 동영상 길이 확인 - C#, Winform

반응형

  영상을 이미지로 변환시킬 때 변환시킬 영상의 시작 시간과 끝 시간에 대해 예외처리를 할 일이 있어서 동영상 길이를 확인할 수 있는 방법을 찾아야 했다. 'NReco.VideoInfo'라는 라이브러리를 알게 되었고 이를 이용해서 성공적인 예외처리를 할 수 있었다.


NReco.VideoInfo 설치

NuGet 패키지 관리

NReco.VideoInfo 설치

 

사용

FFProbe ffProbe = new FFProbe();
var videoInfo = ffProbe.GetMediaInfo("동영상 경로");
double videoDuration = Math.Floor(videoInfo.Duration.TotalSeconds);

  위의 코드에서 Math.floor를 이용해서 동영상 길이를 버림하는 이유는 가끔 소수점이 나오는 경우가 있기 때문이다. 아마 프레임때문에 소수점이 나오는 듯 하다.

 

활용

  해당 영상은 약 16초짜리 영상이었고 동영상을 자르기 하는 시작시간은 1시간부터로 설정해놓았다. 이때 당연히 영상길이보다 자르는 시작시간이 더 크기 때문에 제대로 동작을 할 수 없다. 이러한 상황에 예외처리를 하기 위해 'NReco.VideoInfo'를 사용했다.

반응형