Windows 서버에서 MP3, WAV, FLAC, OGG, AAC 등 25가지 이상의 형식 변환 — 코덱 팩 불필요.
Windows
2000/2003/Vista
7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total Audio Converter X는 MP3, WAV, FLAC, OGG, OPUS, AAC, WMA 및 25가지 이상의 다른 오디오 형식을 변환하는 서버 측 SDK입니다 — 서버에 외부 코덱 팩이나 미디어 프레임워크가 필요하지 않습니다. 헤드리스로 실행됩니다: GUI, 대화상자, 팝업이 없습니다. Total Audio Converter X는 명령줄 바이너리와 ActiveX/COM 인터페이스를 모두 제공하므로 ASP, PHP, .NET, Python, Ruby, Java 및 기타 모든 COM 호환 백엔드에 쉽게 통합됩니다. 지원되는 오디오 형식의 전체 목록은 다음과 같습니다:
이 프로그램은 ID3 태그와 CUE 파일을 지원합니다. 오디오 트랙을 즉석에서 변환합니다. 중간 WAV 파일이 필요하지 않습니다.
높은 변환 속도와 일괄 변환은 단순하고 지루하지 않은 프로세스를 제공합니다. 이 외에도 Total Audio Converter X는 모든 작업이 완료되면 선택한 미디어 유형의 모든 파일을 재생해 드립니다. 무료로 사용해 보시고(30일 체험 기간, 제한 없음) 그만한 가치가 있다는 것을 확인해 보세요.
현재 지원되는 파일 형식 변환의 일부:
|
|
|
string src = @"C:\test\Source.wav";
string dest = @"C:\test\Dest.mp3";
var cnv = new AudioConverterX();
cnv.Convert(src, dest, "-cMP3 -br 192 -log c:\\test\\Audio.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\AudioConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.wav";
var outPath = Path.GetTempFileName() + ".mp3";
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("AudioConverter.AudioConverterX")
C.Convert "c:\source.wav", "c:\dest.mp3", "-cMP3 -log c:\Audio.log"
Response.Write C.ErrorMessage
set C = nothing
$src="C:\\test\\test.wav";
$dest="C:\\test\\test.mp3";
if (file_exists($dest)) unlink($dest);
$c= new COM("AudioConverter.AudioConverterX");
$c->convert($src,$dest, "-c mp3 -br 192 -log c:\\test\\Audio.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('AudioConverter.AudioConverterX')
src = "C:\\test\\test.wav"
dest = "C:\\test\\test.mp3"
c.convert(src, dest, "-c MP3 -log c:\\test\\Audio.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("AudioConverter.AudioConverterX")
src = "C:\\test\\test.wav"
dest = "C:\\test\\test.mp3"
c.convert(src, dest, "-c MP3 -log c:\\test\\Audio.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('AudioConverter.AudioConverterX');
c.Convert('c:\test\source.wav', 'c:\test\dest.mp3', '-cMP3 -log c:\test\Audio.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("AudioConverter.AudioConverterX");
c.Convert("C:\\test\\source.wav", "C:\\test\\dest.mp3", "-c MP3");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.wav"; my $dest = "C:\\test\\test.mp3"; my $c = CreateObject Win32::OLE 'AudioConverter.AudioConverterX'; $c->convert($src, $dest, "-c mp3 -log c:\\test\\Audio.log"); print $c->ErrorMessage if -e $dest;
"저희는 매주 약 50,000개의 팟캐스트 업로드를 처리합니다. Total Audio Converter X는 파이프라인의 정규화 단계를 처리합니다: 크리에이터로부터 들어오는 WAV와 FLAC는 배포용 128 kbps MP3와 저대역폭 재생용 64 kbps 모노 변형으로 트랜스코딩됩니다. 플래그 세트는 외울 수 있을 만큼 작고, 바이너리는 빠르며(저희 하드웨어에서 실시간의 약 8배), 3년 동안 코덱 종속성을 업데이트할 필요가 없었습니다."
Akira N.
Senior Backend Developer at a podcast platform
"저희 오디오북 인제스트 파이프라인은 원시 내레이터 WAV를 스트리밍용 AAC와 다운로드용 MP3로 만듭니다. Total Audio Converter X는 인코딩 박스에서 Windows 서비스로 실행됩니다; -list 큐 파일을 통해 일괄 처리를 공급합니다. 챕터 파일을 하나의 연속 트랙으로 연결하는 -ca 플래그는 자체 연결 단계를 작성하지 않아도 됩니다. 4년간의 프로덕션 사용 동안 안정적이고 예측 가능했습니다."
Sara T.
DevOps Engineer at an audiobook publisher
"방송국은 CD 품질의 WAV에서 오래된 RealAudio 아카이브에 이르기까지 모든 종류의 혼합 소스 자료를 업로드합니다. Total Audio Converter X는 전체 입력 매트릭스를 처리하고 스트리밍 인프라를 위한 일관된 MP3 출력을 제공합니다. 오디오 CD를 직접 리핑할 수 있다는 사실은 예상하지 못한 보너스이며, 별도의 도구 없이 제품의 레거시 라이브러리 디지털화 측면에 사용합니다."
Yusuf E.
CTO at a media SaaS for radio stations
"Total Audio Converter X를 로열티 프리 라이선스로 저희 음악 관리 제품에 번들로 포함시켰습니다. 일회성 프로젝트당 수수료는 FFmpeg 기반 상용 래퍼가 요구하는 것의 일부에 불과했습니다. 저희 설치 프로그램은 ActiveX를 제공하고 등록하며, 저희 앱이 직접 호출하고, 최종 사용자는 저희 UI만 봅니다. 32비트 ActiveX 제한으로 파이프라인 재작업에 며칠을 소비했지만, 해결 방법에 대해 문의했을 때 지원이 신속했습니다."
Linnea J.
Independent Software Vendor
"음성 콘텐츠 정규화 단계에 견고합니다. 저희는 전화 품질의 녹음을 받아 ASR로 보내기 전에 22 kHz 모노 MP3로 다운믹싱합니다. Total Audio Converter X는 APE 및 MPC와 같이 정말 이상한 형식을 포함하여 고객이 던지는 모든 엣지 케이스를 처리합니다. CLI는 안정적이며 출력은 실행마다 비트 단위로 동일하므로 결정적인 파이프라인에 필요한 것입니다."
Marcus W.
Lead .NET Developer at a transcription service
Total Audio Converter X에는 웹 서버, 스케줄러 및 백엔드 오디오 파이프라인용으로 빌드된 콘솔 바이너리 AudioConverterX.exe가 포함되어 있습니다 — GUI 없음, 대화 상자 없음, 사용자 상호 작용 없음. 플래그 세트는 데스크톱 AudioConverter.exe를 미러링합니다. 전체 참조는 명령줄 문서를 참조하세요. 아래의 예제는 SDK 고객들이 가장 자주 묻는 사례를 다룹니다.
가장 단순한 호출 — 하나의 소스, 하나의 대상, 하나의 대상 코덱.
AudioConverterX.exe "C:\music\track.flac" "C:\out\track.mp3" -cMP3
폴더 내 모든 FLAC를 처리하고 형제 출력 디렉터리에 MP3를 떨어뜨립니다. 경로나 마스크에 공백이 포함된 경우 따옴표가 중요합니다.
AudioConverterX.exe "C:\music\*.flac" "C:\out\" -cMP3
마스크를 *.wav, *.ogg, *.ape 등으로 바꾸고 대상을 -cAAC, -cOGG, -cFLAC, -cWMA, -cMP4, -cMPC로 변경하여 모든 소스/대상 쌍을 혼합하세요.
음악 라이브러리는 거의 평평하지 않습니다. -Recurse는 하위 디렉터리를 탐색합니다. -kfs는 모든 트랙을 하나의 버킷에 넣는 대신 출력 측에서 동일한 아티스트/앨범 트리를 다시 만듭니다.
AudioConverterX.exe "C:\music\*.flac" "C:\out\" -cMP3 -Recurse -kfs
손실 대상은 명시적인 비트레이트가 필요합니다. 리샘플링은 대상 장치나 스트림이 고정 레이트를 기대할 때 유용합니다(CD는 44.1 kHz, 비디오는 48 kHz, 음성은 22.05 kHz).
AudioConverterX.exe "C:\music\*.wav" "C:\out\" -cMP3 -br 320 -sr 44100
팟캐스트 등급 오디오를 위해 -br을 128로 떨어뜨리거나, 아카이브 품질 MP3를 위해 320으로 올리세요.
오디오북, 강의, 받아쓰기, IVR 안내문에는 스테레오가 필요하지 않습니다. 모노를 강제하면 파일이 절반으로 줄어들고 전화 등급 재생에서 위상 문제를 피할 수 있습니다.
AudioConverterX.exe "C:\lectures\*.wav" "C:\out\" -cMP3 -ch Mono -br 96 -sr 22050
음악 대상에는 -ch Stereo, -ch JointStereo 또는 -ch DualChannels를 사용하세요.
WMA는 두 가지 인코딩 모드를 지원합니다: 고정 비트레이트(예측 가능한 파일 크기) 및 가변 비트레이트(예측 가능한 품질). VBR의 경우 -wq 품질 노브가 1에서 100까지 실행됩니다.
AudioConverterX.exe "C:\music\*.flac" "C:\out\" -cWMA -wm VBR -wq 90
CBR 모드의 경우 대신 -wm CBR -br 192를 사용하세요.
오디오북 챕터, DJ 세트 또는 단일 파일 앨범 배포의 경우, -ca는 소스 파일을 소스 순서대로 하나의 출력 트랙으로 연결합니다.
AudioConverterX.exe "C:\music\AcmeAlbum\*.wav" "C:\out\AcmeAlbum.mp3" -cMP3 -ca -br 256
스크립트에서 CD 리퍼를 구동하세요: 드라이브 문자를 선택하고, 대상 형식을 선택하고, FreeDB가 아티스트/앨범/트랙 이름을 채우게 하고, 트랙 이름 템플릿을 적용합니다.
AudioConverterX.exe "C:\rips\" -c ripcd -cd F -df flac -freedb -ctt "<track:2>. <title>"
지원되는 형식으로 직접 리핑하려면 -df flac을 mp3, wav, ogg, aac, mpc, ape 또는 wma로 바꾸세요.
워커 프로세스가 큐 파일을 작성하고 변환기가 이를 사용하는 경우, 명령줄에 파일 경로를 박아 넣고 싶지 않을 것입니다. -list는 한 줄에 하나씩 파일 마스크를 읽습니다. -log는 오류와 진행 상황을 디스크로 리디렉션하므로 무인 실행이 흔적을 남깁니다.
AudioConverterX.exe -list "C:\queues\encode.txt" "C:\out\" -cMP3 -br 192 -log "C:\logs\audioconv.log"
저장소 마이그레이션의 경우 — 예를 들어, WAV 아카이브를 절반 크기의 FLAC로 교체 — -do는 대상이 성공적으로 작성되면 각 소스 파일을 삭제합니다.
AudioConverterX.exe "C:\archive\*.wav" "C:\archive\" -cFLAC -Recurse -kfs -do
먼저 작은 테스트 일괄 처리를 실행하세요: -do는 되돌릴 수 없으며, 전체 라이브러리를 가리키기 전에 출력 디렉터리와 대상 형식이 정확히 예상한 것인지 확인해야 합니다.
new COM("AudioConverter.AudioConverterX"), .NET에서는 new AudioConverterX(), Python에서는 win32com.client.Dispatch, Ruby에서는 WIN32OLE.new. 또는 AudioConverterX.exe 명령줄 바이너리를 모든 프로세스, 스케줄러 또는 셸 스크립트에서 호출할 수 있습니다.-br <kbps>, 샘플 레이트의 경우 -sr <Hz>, 채널 매핑의 경우 -ch <Mono|Stereo|JointStereo|DualChannels>를 사용합니다. WMA는 품질을 위한 -wq와 함께 -wm CBR|VBR를 통해 CBR과 VBR을 모두 지원합니다. MP3 LAME 사전 설정은 -lame을 통해 사용할 수 있습니다. 이 제어 세트는 팟캐스트, 오디오북, 음성 콘텐츠 및 음악 트랜스코딩 워크플로를 다룹니다.-ctt 플래그는 트랙 이름 템플릿을 제어합니다. 실제 CD가 여전히 도착하는 레거시 미디어 디지털화 워크플로에 유용합니다.무료 평가판을 다운로드하고 몇 분 만에 파일을 변환하세요.
신용카드나 이메일이 필요하지 않습니다.