src/seconv/IMPLEMENTATION.md
A modern, well-structured command-line utility for subtitle conversion with:
Modern CLI Framework
/ parameter support converted to modern -- syntaxCommand Structure
convert command - Main conversion functionality with all specified parametersformats command - Lists all available subtitle formats/?, /help, or --helpAll Specified Parameters Supported
--inputfolder, --outputfolder, --outputfilename, --overwrite--encoding, --fps, --targetfps, --resolution--assa-style-file, --ebuheaderfile, --pac-codepage, etc.--FixCommonErrors, --RemoveTextForHI, --SplitLongLines, etc.Clean Architecture
SeConv/
├── Commands/ # CLI command handlers
├── Core/ # Business logic and LibSE integration
├── Helpers/ # Utility classes
└── Program.cs # Entry point
To complete the implementation, integrate with the LibSE library:
In LibSEIntegration.cs:
GetAvailableFormats() using LibSE's format registryLoadSubtitle() to load subtitle filesSaveSubtitle() to save in target formatApplyOperations() for all processing operationsIn SubtitleConverter.cs:
LibSEIntegration to load, process, and save subtitlesTesting:
# Show help
dotnet run --project SeConv/SeConv.csproj -- --help
# List formats
dotnet run --project SeConv/SeConv.csproj -- formats
# Convert subtitles
dotnet run --project SeConv/SeConv.csproj -- convert *.srt sami
# Convert with options
dotnet run --project SeConv/SeConv.csproj -- convert *.srt subrip --encoding:utf-8 --FixCommonErrors --RemoveTextForHI
# Legacy syntax support
dotnet run --project SeConv/SeConv.csproj -- /convert *.srt sami /encoding:utf-8
/ syntax automatically converted to -- syntax