Total Movie Converter X는 웹 서버의 비디오 변환기
Windows
2000/2003/Vista
7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total Movie Converter X는 AVI, MP4, WMV, MPEG, MOV, FLV, MKV 및 15가지 이상의 비디오 형식을 변환하는 서버 측 SDK입니다 — 서버에 외부 코덱 팩이나 미디어 프레임워크 없이. 헤드리스로 실행됩니다: GUI도, 대화 상자도, 팝업도 없습니다. Total Movie Converter X는 명령줄 바이너리와 ActiveX/COM 인터페이스를 모두 제공하므로, ASP, PHP, .NET, Python, Ruby, Java 및 기타 모든 COM 인식 백엔드에 손쉽게 통합됩니다. 지원되는 비디오 형식 전체 목록:
프로그램은 비디오를 즉시 처리합니다. 중간 AVI 또는 MPEG 파일이 필요하지 않습니다.
높은 변환 속도와 일괄 변환으로 단순하고 지루하지 않은 프로세스를 제공합니다. 무료로 사용해 보시고(30일 평가판, 제한 없음) 그만한 가치가 있는지 직접 확인해 보세요.
현재 지원되는 파일 형식 변환 일부:
|
|
|
string src = @"C:\test\Source.avi";
string dest = @"C:\test\Dest.mp4";
var cnv = new MovieConverterX();
cnv.Convert(src, dest, "-cMP4 -vb 2000 -log c:\\test\\Movie.log");
if (!string.IsNullOrEmpty(cnv.ErrorMessage))
throw new Exception(cnv.ErrorMessage);
public static class Function1
{
[FunctionName("Function1")]
public static async Task Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
StringBuilder sbLogs = new StringBuilder();
sbLogs.AppendLine("started...");
try
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
var assemblyDirectoryPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
assemblyDirectoryPath = assemblyDirectoryPath.Substring(0, assemblyDirectoryPath.Length - 4);
var executablePath = $@"{assemblyDirectoryPath}\Converter\MovieConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.avi";
var outPath = Path.GetTempFileName() + ".mp4";
startInfo.FileName = executablePath;
if (File.Exists(outPath))
{
File.Delete(outPath);
}
if (File.Exists(executablePath) && File.Exists(srcPath))
{
sbLogs.AppendLine("files exists...");
}
else
sbLogs.AppendLine("EXE & source files NOT exists...");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = $"{srcPath} {outPath}";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}");
}
int sleepCounter = 10;
while(!File.Exists(outPath) && sleepCounter > 0)
{
System.Threading.Thread.Sleep(1000);
sbLogs.AppendLine("sleep...");
sleepCounter--;
}
if (File.Exists(outPath))
sbLogs.AppendLine("Conversion complete successfully.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("MovieConverter.MovieConverterX")
C.Convert "c:\source.avi", "c:\dest.mp4", "-cMP4 -log c:\Movie.log"
Response.Write C.ErrorMessage
set C = nothing
$src="C:\\test\\test.avi";
$dest="C:\\test\\test.mp4";
if (file_exists($dest)) unlink($dest);
$c= new COM("MovieConverter.MovieConverterX");
$c->convert($src,$dest, "-c mp4 -vb 2000 -log c:\\test\\Movie.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('MovieConverter.MovieConverterX')
src = "C:\\test\\test.avi"
dest = "C:\\test\\test.mp4"
c.convert(src, dest, "-c MP4 -log c:\\test\\Movie.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("MovieConverter.MovieConverterX")
src = "C:\\test\\test.avi"
dest = "C:\\test\\test.mp4"
c.convert(src, dest, "-c MP4 -log c:\\test\\Movie.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('MovieConverter.MovieConverterX');
c.Convert('c:\test\source.avi', 'c:\test\dest.mp4', '-cMP4 -log c:\test\Movie.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("MovieConverter.MovieConverterX");
c.Convert("C:\\test\\source.avi", "C:\\test\\dest.mp4", "-c MP4");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.avi"; my $dest = "C:\\test\\test.mp4"; my $c = CreateObject Win32::OLE 'MovieConverter.MovieConverterX'; $c->convert($src, $dest, "-c mp4 -log c:\\test\\Movie.log"); print $c->ErrorMessage if -e $dest;
"우리는 H.265의 최신 MP4부터 오래된 AVI까지 모든 형식의 사용자 업로드 비디오를 수집하며, 플레이어를 위해 단일 MP4/H.264 베이스라인이 필요합니다. Total Movie Converter X는 인코더 박스에서 Windows 서비스로 실행되며, 큐는 -list 파일을 통해 이를 공급합니다. 5년 동안 운영했지만 예상치 못한 일은 없었습니다. 1080p 소스의 경우 우리 하드웨어에서 처리량은 실시간의 약 3배로, SLA에 충분합니다."
Daniel R.
Senior Backend Developer at a video-streaming platform
"우리 LMS는 강사로부터 상상할 수 있는 모든 형식의 코스 녹화를 받습니다: Mac에서 온 MOV, 오래된 Windows 화면 녹화기에서 온 WMV, 휴대폰에서 온 MP4. Total Movie Converter X는 플레이어에 도달하기 전에 모든 것을 단일 MP4 H.264 프로파일로 정규화합니다. .NET 래퍼는 기존 파이프라인에 연결되며, -log 출력은 파일당 깔끔한 한 줄로 Splunk로 보내기 쉽습니다."
Petra M.
DevOps Engineer at a corporate training company
"카메라 공급업체는 독점 AVI 변형, 공급업체별 MP4 박스, 그리고 가끔 레거시 DVR에서 온 FLV를 우리에게 보냅니다. Total Movie Converter X는 이 모든 것을 처리하고 대시보드 플레이어용 H.264 MP4를 제공합니다. -rotate로 잘못 정렬된 카메라 영상을 회전시키는 것은 매일 사용하는 기능입니다. 대안을 평가할 때 Windows Server Core에서의 헤드리스 작동이 결정적인 요인이었습니다."
Hiroshi K.
CTO at a video-surveillance SaaS
"Total Movie Converter X를 로열티 무료 라이선스로 우리 홈비디오 아카이빙 제품에 번들로 제공했습니다. 일회성 프로젝트별 요금은 FFmpeg 기반 상용 래퍼들이 요구하는 금액의 일부였습니다. 우리 인스톨러가 ActiveX를 배포하고 등록하면, 우리 앱이 직접 호출하고, 최종 사용자는 우리 UI만 봅니다. 32비트 ActiveX 제한으로 며칠간 파이프라인 재작업이 필요했지만, 우회 방법에 대해 물었을 때 지원이 신속하게 응답했습니다."
Annika L.
Independent Software Vendor
"우리는 증거 처리 파이프라인의 일부로 바디캠과 대시캠 영상을 처리합니다. 소스 파일은 공급업체별 AVI 및 MP4 변형으로 들어오며, 단일 아카이브용 MP4 H.264 프로파일로 트랜스코딩합니다. Total Movie Converter X는 실행 간에 결정적이며, 이는 증거 보관 사슬에 중요합니다. CLI는 안정적이며, 동일한 입력과 플래그가 주어지면 출력은 비트 단위로 동일합니다. 5년간 무인 야간 변환을 했지만 변환기 탓으로 돌릴 수 있는 실패는 없었습니다."
Tomasz W.
Lead .NET Developer at a digital-evidence platform
new COM("MovieConverter.MovieConverterX"), .NET에서 new MovieConverterX(), Python에서 win32com.client.Dispatch, Ruby에서 WIN32OLE.new. 또한 MovieConverterX.exe 명령줄 바이너리는 모든 프로세스, 스케줄러 또는 셸 스크립트에서 호출할 수 있습니다.-c <format>, 비디오 비트레이트에는 -vb <kbps>, 프레임 레이트에는 -fps <rate>, 출력 해상도에는 -resize <WxH>를 사용합니다. 오디오 비트레이트는 -ab로 제어합니다. 회전은 -rotate 90|180|270입니다. 이 제어 세트는 스트리밍, 아카이브 및 감시 파이프라인을 위한 트랜스코딩, 재인코딩 및 표준화 워크플로를 다룹니다.-list queue.txt를 받아들이고 파일 경로를 한 줄씩 읽습니다. 각 변환은 순차적으로 실행되어 파일 사이에 메모리를 해제하므로, 단일 프로세스로 누수 없이 수천 개의 입력을 처리할 수 있습니다. 출력 경로에는 %filename%과 같은 자리 표시자가 있는 템플릿을 사용할 수 있으며, -log 플래그는 로그 집계기에 수집하기에 적합한 파일별 구조화된 줄을 작성합니다.무료 평가판을 다운로드하고 몇 분 만에 파일을 변환하세요.
신용카드나 이메일이 필요하지 않습니다.