﻿================================================================================

    SithCodec						v1.1.0

================================================================================

							by JCarter426

================================================================================
    TABLE OF CONTENTS
================================================================================

1.  Introduction
2.  Running Sith Codec
3.  Commands
4.  Batch Files
5.  Copyright
6.  Donations
7.  Contact



================================================================================
1.  INTRODUCTION
================================================================================

The audio files of Star Wars: Knights of the Old Republic and Star Wars: Knights
of the Old Republic II – The Sith Lords (KOTOR) contain extra headers of what
seem to be superfluous data that obfuscate access to the original audio outside
of the video games. Most audio software will refuse to open the files, or
interpret the extra bytes as audio data, leading to glitches. It has also been
observed anecdotally that files lacking an appropriate header may fail to
playback in certain releases of the games.

SithCodec is an application that can automatically detect and remove an
extraneous header from a KOTOR audio file, or alternatively prepend a KOTOR
header to a standard audio file and allow for the introduction of new audio
content to these games.



================================================================================
2.  RUNNING SITHCODEC
================================================================================

- SithCodec requires Windows (32-bit or 64-bit).

- Make sure to extract SithCodec to a folder where you have read & write
  permission.
  
- The code is not signed (because code signing costs an extortionate amount of
  money) so your firewall may warn you about running an unrecognized
  application.



================================================================================
3.  COMMANDS
================================================================================

Commands in SithCodec are executed by combining keywords into certain command
sequences that the application recognizes. Input may be passed as command-line
arguments when SithCodec is launched, or entered manually through a command-
line interface if the application is launched without any command-line
arguments.

Keywords may be entered in short form (dash followed by a single letter) or long
form (double dash followed by a full word).

SithCodec keywords are not case sensitive, but - depending on your operating
system - other data that you input may be, such as the names of files.


--------------------------------------------------------------------------------
Help Screen
--------------------------------------------------------------------------------

Entering -h or --help will display the help screen, showing a list of all
keywords and their function.

    -d, --decode                decode audio
    -e, --encode                encode audio
    -f, --format                set output audio format
    -m, --music                 streammusic format
    -s, --sfx                   streamsounds format
    -v, --vo                    streamwaves/streamvoice format
    -a, --all                   all files
    -l, --list                  list files & formats
    -i, --in                    input path
    -o, --out                   output path
    -h, --help                  display this menu
    -c, --commands              display list of commands
    -x, --examples              display example commands
    -q, --quit                  exit application


--------------------------------------------------------------------------------
Commands Screen
--------------------------------------------------------------------------------

Entering -c or --commands will display a screen with the list of all valid
commands.

    -d -i=[input path]
    -d -i=[input path] -o=[output path]
    -d -a
    -d -a -i=[input path]
    -d -a -o=[output path]
    -d -a -i=[input path] -o=[output path]
    -e -f -[format] -i=[input path]
    -e -f -[format] -i=[input path] -o=[output path]
    -e -a -f -[format]
    -e -a -f -[format] -i=[input path]
    -e -a -f -[format] -o=[output path]
    -e -a -f -[format] -i=[input path] -o=[output path]
    -l
    -l -i=[input path]
    -l -o=[output path]
    -l -i=[input path] -o=[output path]


--------------------------------------------------------------------------------
Examples Screen
--------------------------------------------------------------------------------

Entering -x or --examples will display some example commands.

Encode all files in SFX format from the input path, to the output path:
    -e --all -f --sfx- -i=in_folder -o=out_folder
	
Decode a file, outputting to a new file:
    -d -i=oldfile.old -o=newfile.new
	
Decode a file without specifying output, possibly overwriting the original:
    -d -i=file.wav

List all files & formats in a given directory, printing to the console:
    -l -i=my_folder
	
List all files & formats in the current directory, printing to a file:
    -l -o=file.txt



================================================================================
4.  BATCH FILES
================================================================================

SithCodec comes with batch files that are set up with commands for some common
operations.

decode.bat
This file will decode all files located in a folder called "in" (no matter what
their format) and save the new files in a folder called "decoded".

encode_music.bat
This file will encode all files located in a folder called "in" and save the new
files in a folder called "music".

encode_sfx.bat
This file will encode all files located in a folder called "in" and save the new
files in a folder called "sfx".

encode_vo.bat
This file will encode all files located in a folder called "in" and save the new
files in a folder called "vo".


================================================================================
5.  COPYRIGHT
================================================================================

SithCodec is free software: you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version.

SithCodec is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with
SithCodec. If not, see <https://www.gnu.org/licenses/>.

All trademarks (including logos and icons) are used for identification purposes
only and are the property of their respective owners.

Star Wars and related items are trademarks and/or copyrights of Lucasfilm Ltd.
SithCodec is not affiliated with or endorsed by Lucasfilm Ltd., their
subsidiaries, associates, or employees, or any Star Wars license holder.



================================================================================
6.  DONATIONS
================================================================================

If you enjoy my mods and would like to show your support in a monetary manner,
you may do so via PayPal with the donation link below.

http://www.paypal.me/carterunited

For various legal and ethical reasons, this is entirely optional and is not a
requirement to downloading or using any of my mods. I also do not create
specific mods for hire.

I make mods as a hobby and will most likely do so regardless of any donations or
lack thereof, but modding does take up a lot of my time and every bit helps.



================================================================================
7.  CONTACT
================================================================================

Questions? Problems? Suggestions? Something else?

Email me at kotor.hexATgmailDOTcom or PM me on Deadly Stream or wherever else
you can find me.