English Site >    
 

VVmpeg

VVmpeg은 많이 사용되는 FFmpeg을 윈도우 환경에서 DLL 형태로 사용하기 위한 간단한 래퍼 라이브러리이다. 기존의 FFmpeg이 exe 파일로 된 콘솔 프로그램으로만 제공되는데 비하여, VVmpeg은 FFmpeg의 기능을 DLL 파일 형태로 제공하므로 직접 작성한 프로그램에서 쉽게 호출하여 사용할 수 있다. 따라서, FFmpeg과 같은 기능을 GUI를 가지는 프로그램 형태로 구현하는 것도 가능하다.
 

VVmpeg 최신 배포 파일 다운로드(1.0.1 버전)

설치 방법 : 최신 배포 파일을 다운로드하여 원하는 디렉토리에 압축을 풀면 설치 완료

    

라이센스 - Copyright(C) 2008-2018, VVmpeg.net

VVmpeg은 FFmpeg(http://ffmpeg.org)을 수정하여 제작하였으며, FFmpeg의 라이선스는 LGPL을 따른다. LGPL 라이선스에 대한 것은 다운로드한 배포 파일에 포함된 lgpl-2.1.txt를 참고하면 된다. 수정된 VVmpeg의 소스는 http://www.vvmpeg.net을 통해서 다운로드 할 수 있다.

VVmpeg에 대한 저작권은 VVmpeg.net에 있으며, GNU LGPL(Lesser General Public License) 2.1을 따른다. 주요 내용은 다음과 같다.

- VVmpeg을 이용하여 소프트웨어를 배포하는 경우 저작권을 표시하여야 하며, LGPL을 준수한다는 내용을 언급하여야 한다.
- VVmpeg은 유용하게 사용될 수 있으리라는 희망에서 배포되고 있지만, 특정한 목적에 맞는 적합성 여부나 판매용으로 사용할 수 있으리라는 묵시적인 보증을 포함하여 어떠한 형태의 보증도 제공하지 않는다.
- VVmpeg의 소스 코드를 수정하는 경우 수정한 라이브러리의 소스 코드는 공개되어야 한다.
- VVmpeg에 응용프로그램을 링크시키는 경우(Static과 Dynamic Linking 모두) 해당 응용프로그램의 소스 코드를 공개할 필요는 없으나, 다만 사용자가 라이브러리 수정 후 동일한 실행 파일을 생성할 수 있도록 Static Linking시에는 응용 프로그램의 Object Code를 제공해야 한다.

기타 라이센스에 대한 좀더 자세한 내용은 다음 링크의 LGPL 사이트와 FFmpeg 라이센스 관련 내용을 참고하기 바란다.

http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
http://ffmpeg.mplayerhq.hu/legal.html


히스토리

2008년 4월 2일 첫번째 버전 시작
인코딩 관련 함수를 DLL 외부로 노출 되도록 수정한 형태의 DLL 파일 작성
LAME을 이용한 MP3 인코딩 기능 추가
LIBFAAC를 이용한 MP4 파일용 FAAC 인코딩 기능 추가
최초 FFMPEG 컴파일을 완료한 이후 MAKE 에서 사용되는 스크립트를 수정하여, 윈도우 운영체제에 맞는 DLL을 생성하는 방법으로 작업(최초 1회 전체 컴파일이 필요함)

2008년 4월 22일
http://s250790860.onlinehome.us/ 웹 사이트 시작

2008년 6월 25일
인코딩 과정에서 비디오 프레임을 카운팅 하기 위한 변수 추가
콜백 함수 포인터 추가
인코딩 과정에서 콜백 함수 호출 하는 기능 추가

2008년 7월 22일
라이브러리 빌드 방식 변경

2008년 7월 25일
http://www.vvmpeg.net/ 웹 사이트 시작

2008년 7월 28일
FFMPEG 소스 업데이트(7월 28일 기준 최신의 FFmpeg 소스 코드 적용)
동영상 정보를 취득하는 함수 GetMovieInfo2 추가(기존 GetMovieInfo 함수는 그대로 제공)

2009년 9월 9일
기존의 Shared dll 사용을 변경하여 VVmpeg.dll 파일 1개만 사용하도록 변경
샘플 프로그램을 Microsoft Visual Studio 2005 용으로 변경

2010년 11월 10일
예제 및 소스 코드에서 일부 파일이 잘못된 부분을 수정하여 다시 업로드

2010년 11월 17일
FFMPEG 소스 업데이트(11월 17일 기준 최신 FFmpeg 소스 코드 적용)
빌드 방식을 ubuntu 64비트 9.04버전을 사용, 리눅스 환경에서 크로스 컴파일 하는 방식으로 변경

2010년 11월 19일
ubuntu 9.04 버전에서 크로스 컴파일한 VVmpeg.dll 모듈 테스트
샘플 프로그램에 VVmpeg 모듈의 버전을 체크하는 기능 추가

2011년 1월 22일
2010년 11월 19일 버전 업로드 및 링크 수정 작업
영문 웹 사이트 제작

2011년 2월 10일
좀 더 안정성이 높은 정식 release 버전으로 소스 수정(ffmpeg 0.6.1 버전)
vvmpeg 자체 버전 반환 함수 추가(현재 버전 1.0.1)
지원 포맷 및 옵션 설명 파일 추가(Formats.txt, Help.txt)

2011년 2월 11일
1.0.1 버전 업로드 및 링크 수정 작업


사용 방법

기본적으로 FFmpeg 프로그램과 사용법은 동일하다.
FFmpeg에서 사용하는 함수외에 Export하는 함수들은 EncodeMovie, GetFormatInfo, GetModuleVersion, GetMovieInfo, GetMovieInfo2, GetVVmpegVersion 이며, 실제 인코딩 과정은 EncodeMovie 함수에서 담당한다.
EncodeMovie 함수의 인자로 "ffmpeg -i [입력파일명] [출력파일명]" 과 같이 명령어와, 콜백 함수의 포인터, 콜백 함수에서 사용하는 UserDefine값 등을 넘겨주면 된다.
관련 옵션들과 지원 포맷은 Help.txt 파일과 Format.txt 파일을 참고하면 된다.

VVmpeg에 대한 자세한 사용 방법은 다운로드에서 제공되는 샘플 프로그램을 참고하면 된다.

다운로드

소스 코드
2008년 6월 25일 버전, 2008년 7월 22일 버전, 2008년 7월 28일 버전, 2009년 9월 9일 버전, 2010년 11월 19일 버전, 1.0.1 버전(2011년 2월 10일)

배포 파일
2008년 7월 22일 버전, 2008년 7월 28일 버전, 2009년 9월 9일 버전, 2010년 11월 19일 버전, 1.0.1 버전(2011년 2월 10일)

샘플 프로그램
VVmpeg 샘플 프로그램


연락처

vvmpeg@gmail.com

- VVmpeg의 개선점이나, 버그 등을 보내주시면 수정하도록 하겠습니다.
- VVmpeg을 적용한 프로그램의 경우, 프로그램 이름과 간단한 설명, URL을 보내주시면 현재 페이지에 소개하도록 하겠습니다. 많은 활용 바랍니다.


사용 사례

- SOURCENEXT(일본) 사의 일부 제품에 적용되어 사용 중
- 아이비시스템즈(한국) 사의 koolCAM에 적용되어 사용 중
- innoheim 사의 liteCam에 적용되어 사용 중
- 기타 프로젝트에 일부 사용 중
 


최종 수정일(2011년 2월 11일)
 
Copyright(C) 2008-2018, http://www.vvmpeg.net, 해당 사이트의 모든 저작권은 VVmpeg.net에 있습니다.