[Scummvm-cvs-logs] CVS: tools Makefile,1.52,1.53 compress.c,1.7,1.8 compress.h,1.2,1.3 compress_saga.c,1.4,1.5 compress_san.cpp,1.40,1.41 compress_scumm_bun.cpp,1.25,1.26 compress_scumm_sou.c,1.5,1.6 compress_simon.c,1.5,1.6 compress_sword1.c,1.5,1.6 compress_sword2.c,1.4,1.5
Torbjörn Andersson
eriktorbjorn at users.sourceforge.net
Thu Jun 9 05:43:59 CEST 2005
Update of /cvsroot/scummvm/tools
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9477
Modified Files:
Makefile compress.c compress.h compress_saga.c
compress_san.cpp compress_scumm_bun.cpp compress_scumm_sou.c
compress_simon.c compress_sword1.c compress_sword2.c
Log Message:
Applied patch #1217438 to allow setting encoder params in the BUN and SAN
compressing tools.
Index: Makefile
===================================================================
RCS file: /cvsroot/scummvm/tools/Makefile,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -d -r1.52 -r1.53
--- Makefile 17 May 2005 23:35:17 -0000 1.52
+++ Makefile 9 Jun 2005 12:38:44 -0000 1.53
@@ -37,7 +37,7 @@
all: $(TARGETS)
-compress_san$(EXEEXT): compress_san.o util.o
+compress_san$(EXEEXT): compress_san.o compress.o util.o
$(CXX) $(LDFLAGS) -o $@ $+ -lz
descumm$(EXEEXT): descumm-tool.o descumm.o descumm6.o descumm-common.o util.o
@@ -55,7 +55,7 @@
compress_scumm_sou$(EXEEXT): compress_scumm_sou.o compress.o util.o
$(CC) $(LDFLAGS) -o $@ $+
-compress_scumm_bun$(EXEEXT): compress_scumm_bun.o util.o
+compress_scumm_bun$(EXEEXT): compress_scumm_bun.o compress.o util.o
$(CXX) $(LDFLAGS) -o $@ $+
extract_loom_tg16$(EXEEXT): extract_loom_tg16.o
Index: compress.c
===================================================================
RCS file: /cvsroot/scummvm/tools/compress.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- compress.c 7 Feb 2005 13:38:32 -0000 1.7
+++ compress.c 9 Jun 2005 12:38:44 -0000 1.8
@@ -290,7 +290,7 @@
encodeAudio(outName, true, real_samplerate, tempEncoded, compMode);
}
-void process_mp3_parms(int argc, char *argv[], int i) {
+int process_mp3_parms(int argc, char *argv[], int i) {
for (; i < argc; i++) {
if (strcmp(argv[i], "--vbr") == 0) {
encparms.abr=0;
@@ -331,19 +331,20 @@
} else if (strcmp(argv[i], "--silent") == 0) {
encparms.silent = 1;
} else if (strcmp(argv[i], "--help") == 0) {
- showhelp(argv[0]);
+ return 0;
} else if (argv[i][0] == '-') {
- showhelp(argv[0]);
+ return 0;
} else {
break;
}
}
if (i != (argc - 1)) {
- showhelp(argv[0]);
+ return 0;
}
+ return 1;
}
-void process_ogg_parms(int argc, char *argv[], int i) {
+int process_ogg_parms(int argc, char *argv[], int i) {
for (; i < argc; i++) {
if (strcmp(argv[i], "-b") == 0) {
oggparms.nominalBitr = atoi(argv[i + 1]);
@@ -365,23 +366,24 @@
oggparms.silent = 1;
}
else if (strcmp(argv[i], "--help") == 0) {
- showhelp(argv[0]);
+ return 0;
}
else if (argv[i][0] == '-') {
- showhelp(argv[0]);
+ return 0;
}
else
break;
}
if (i != argc - 1)
- showhelp(argv[0]);
+ return 0;
+ return 1;
}
-void process_flac_parms(int argc, char *argv[], int i){
+int process_flac_parms(int argc, char *argv[], int i){
flacparms.argv = &argv[i];
flacparms.numArgs = argc - 1 - i;
if (i >= argc)
- showhelp(argv[0]);
+ return 0;
+ return 1;
}
-
Index: compress.h
===================================================================
RCS file: /cvsroot/scummvm/tools/compress.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- compress.h 1 Jan 2005 10:33:29 -0000 1.2
+++ compress.h 9 Jun 2005 12:38:44 -0000 1.3
@@ -24,6 +24,9 @@
#include "util.h"
+#if defined(__cplusplus)
+extern "C" {
+#endif
/* These are the defaults parameters for the Lame invocation */
#define minBitrDef 24
@@ -48,19 +51,18 @@
const extern char *tempEncoded;
-extern void process_mp3_parms(int argc, char *argv[], int i);
-extern void process_ogg_parms(int argc, char *argv[], int i);
-extern void process_flac_parms(int argc, char *argv[], int i);
+extern int process_mp3_parms(int argc, char *argv[], int i);
+extern int process_ogg_parms(int argc, char *argv[], int i);
+extern int process_flac_parms(int argc, char *argv[], int i);
extern void extractAndEncodeVOC(const char *outName, FILE *input, CompressMode compMode);
extern void extractAndEncodeWAV(const char *outName, FILE *input, CompressMode compMode);
extern void encodeAudio(const char *inname, bool rawInput, int rawSamplerate, const char *outname, CompressMode compmode);
extern void setRawAudioType(bool isLittleEndian, bool isStereo, uint8 bitsPerSample);
-/*
- * Stuff which is in compress_scumm_sou.c / compress_simon.c / compress_sword2.c
- */
-extern void showhelp(char *exename);
+#if defined(__cplusplus)
+}
+#endif
#endif
Index: compress_saga.c
===================================================================
RCS file: /cvsroot/scummvm/tools/compress_saga.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- compress_saga.c 1 Jan 2005 10:33:29 -0000 1.4
+++ compress_saga.c 9 Jun 2005 12:38:44 -0000 1.5
@@ -221,15 +221,18 @@
switch (gCompMode) {
case kMP3Mode:
tempEncoded = TEMP_MP3;
- process_mp3_parms(argc, argv, i);
+ if (!process_mp3_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
case kVorbisMode:
tempEncoded = TEMP_OGG;
- process_ogg_parms(argc, argv, i);
+ if (!process_ogg_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
case kFlacMode:
tempEncoded = TEMP_FLAC;
- process_flac_parms(argc, argv, i);
+ if (!process_flac_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
}
Index: compress_san.cpp
===================================================================
RCS file: /cvsroot/scummvm/tools/compress_san.cpp,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -d -r1.40 -r1.41
--- compress_san.cpp 5 Jun 2005 18:26:25 -0000 1.40
+++ compress_san.cpp 9 Jun 2005 12:38:44 -0000 1.41
@@ -19,7 +19,7 @@
*
*/
-#include "util.h"
+#include "compress.h"
#include "zlib.h"
inline uint16 READ_LE_UINT16(const void *ptr) {
@@ -44,7 +44,7 @@
}
void showhelp(char *exename) {
- printf("\nUsage: %s <inputfile> <inputdir> <outputdir> [--ogg]\n", exename);
+ printf("\nUsage: %s <inputfile> <inputdir> <outputdir> [--ogg] [encoder params]\n", exename);
exit(2);
}
@@ -85,28 +85,19 @@
void encodeWaveWithOgg(char *filename) {
char fbuf[2048];
- bool err = false;
-
- sprintf(fbuf, "oggenc -q 0 %s.wav", filename);
- err = system(fbuf) != 0;
- if (err) {
- printf("Got error from encoder. (check your parameters)\n");
- printf("Encoder Commandline: %s\n", fbuf );
- exit(-1);
- }
+ char fbuf2[2048];
+ sprintf(fbuf, "\"%s\".wav", filename);
+ sprintf(fbuf2, "\"%s\".ogg", filename);
+ encodeAudio(fbuf, false, -1, fbuf2, kVorbisMode);
}
void encodeWaveWithLame(char *filename) {
char fbuf[2048];
- bool err = false;
+ char fbuf2[2048];
- sprintf(fbuf, "lame --vbr-new -V 9 -quiet -t \"%s\".wav \"%s\".mp3", filename, filename);
- err = system(fbuf) != 0;
- if (err) {
- printf("Got error from encoder. (check your parameters)\n");
- printf("Encoder Commandline: %s\n", fbuf );
- exit(-1);
- }
+ sprintf(fbuf, "\"%s\".wav", filename);
+ sprintf(fbuf2, "\"%s\".mp3", filename);
+ encodeAudio(fbuf, false, -1, fbuf2, kMP3Mode);
}
void writeWaveHeader(int s_size) {
@@ -662,8 +653,38 @@
strcpy(inputDir, argv[2]);
strcpy(outputDir, argv[3]);
- if ((argc == 5) && (strcmp(argv[4], "--ogg") == 0)) {
- _oggMode = true;
+ if (argc > 4) {
+ int i = 4;
+
+ if (strcmp(argv[i], "--ogg") == 0) {
+ _oggMode = true;
+ i++;
+ }
+
+ if (argc > i) {
+ // HACK: The functions in compress.c expect the last
+ // argument to be a filename. As we don't expect one,
+ // we simply add a dummy argument to the list.
+ char **args = (char **)malloc((argc + 1) * sizeof(char *));
+ char dummyName[] = "dummy";
+ int j;
+
+ for (j = 0; j < argc; j++)
+ args[j] = argv[j];
+ args[j] = dummyName;
+
+ int result;
+
+ if (_oggMode)
+ result = process_ogg_parms(argc + 1, args, i);
+ else
+ result = process_mp3_parms(argc + 1, args, i);
+
+ if (!result)
+ showhelp(argv[0]);
+
+ free(args);
+ }
}
char *index = strrchr(inputFilename, '.');
Index: compress_scumm_bun.cpp
===================================================================
RCS file: /cvsroot/scummvm/tools/compress_scumm_bun.cpp,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- compress_scumm_bun.cpp 5 Jun 2005 18:26:25 -0000 1.25
+++ compress_scumm_bun.cpp 9 Jun 2005 12:38:44 -0000 1.26
@@ -19,7 +19,7 @@
*
*/
-#include "util.h"
+#include "compress.h"
inline uint16 READ_LE_UINT16(const void *ptr) {
const byte *b = (const byte *)ptr;
@@ -655,7 +655,7 @@
}
void showhelp(char *exename) {
- printf("\nUsage: %s <inputfile> <inputdir> <outputdir> [--ogg]\n", exename);
+ printf("\nUsage: %s <inputfile> <inputdir> <outputdir> [--ogg] [encoder params]\n", exename);
exit(2);
}
@@ -673,28 +673,19 @@
void encodeWaveWithOgg(char *filename) {
char fbuf[2048];
- bool err = false;
-
- sprintf(fbuf, "oggenc -q 0 \"%s\".wav", filename);
- err = system(fbuf) != 0;
- if (err) {
- printf("Got error from encoder. (check your parameters)\n");
- printf("Encoder Commandline: %s\n", fbuf );
- exit(-1);
- }
+ char fbuf2[2048];
+ sprintf(fbuf, "\"%s\".wav", filename);
+ sprintf(fbuf2, "\"%s\".ogg", filename);
+ encodeAudio(fbuf, false, -1, fbuf2, kVorbisMode);
}
void encodeWaveWithLame(char *filename) {
char fbuf[2048];
- bool err = false;
+ char fbuf2[2048];
- sprintf(fbuf, "lame --vbr-new -V 9 -quiet -t \"%s\".wav \"%s\".mp3", filename, filename);
- err = system(fbuf) != 0;
- if (err) {
- printf("Got error from encoder. (check your parameters)\n");
- printf("Encoder Commandline: %s\n", fbuf );
- exit(-1);
- }
+ sprintf(fbuf, "\"%s\".wav", filename);
+ sprintf(fbuf2, "\"%s\".wav", filename);
+ encodeAudio(fbuf, false, -1, fbuf2, kMP3Mode);
}
void writeWaveHeader(int s_size, int rate, int chan) {
@@ -1103,8 +1094,38 @@
strcpy(inputDir, argv[2]);
strcpy(outputDir, argv[3]);
- if ((argc == 5) && (strcmp(argv[4], "--ogg") == 0)) {
- _oggMode = true;
+ if (argc > 4) {
+ i = 4;
+
+ if (strcmp(argv[i], "--ogg") == 0) {
+ _oggMode = true;
+ i++;
+ }
+
+ if (argc > i) {
+ // HACK: The functions in compress.c expect the last
+ // argument to be a filename. As we don't expect one,
+ // we simply add a dummy argument to the list.
+ char **args = (char **)malloc((argc + 1) * sizeof(char *));
+ char dummyName[] = "dummy";
+ int j;
+
+ for (j = 0; j < argc; j++)
+ args[j] = argv[j];
+ args[j] = dummyName;
+
+ int result;
+
+ if (_oggMode)
+ result = process_ogg_parms(argc + 1, args, i);
+ else
+ result = process_mp3_parms(argc + 1, args, i);
+
+ if (!result)
+ showhelp(argv[0]);
+
+ free(args);
+ }
}
char *index = strrchr(inputFilename, '.');
Index: compress_scumm_sou.c
===================================================================
RCS file: /cvsroot/scummvm/tools/compress_scumm_sou.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- compress_scumm_sou.c 2 Mar 2005 04:02:49 -0000 1.5
+++ compress_scumm_sou.c 9 Jun 2005 12:38:44 -0000 1.6
@@ -206,17 +206,20 @@
case kMP3Mode:
outputName = OUTPUT_MP3;
tempEncoded = TEMP_MP3;
- process_mp3_parms(argc, argv, i);
+ if (!process_mp3_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
case kVorbisMode:
outputName = OUTPUT_OGG;
tempEncoded = TEMP_OGG;
- process_ogg_parms(argc, argv, i);
+ if (!process_ogg_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
case kFlacMode:
outputName = OUTPUT_FLAC;
tempEncoded = TEMP_FLAC;
- process_flac_parms(argc, argv, i);
+ if (!process_flac_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
}
Index: compress_simon.c
===================================================================
RCS file: /cvsroot/scummvm/tools/compress_simon.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- compress_simon.c 29 Mar 2005 21:16:13 -0000 1.5
+++ compress_simon.c 9 Jun 2005 12:38:44 -0000 1.6
@@ -332,15 +332,18 @@
switch (gCompMode) {
case kMP3Mode:
tempEncoded = TEMP_MP3;
- process_mp3_parms(argc, argv, i);
+ if (!process_mp3_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
case kVorbisMode:
tempEncoded = TEMP_OGG;
- process_ogg_parms(argc, argv, i);
+ if (!process_ogg_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
case kFlacMode:
tempEncoded = TEMP_FLAC;
- process_flac_parms(argc, argv, i);
+ if (!process_flac_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
}
Index: compress_sword1.c
===================================================================
RCS file: /cvsroot/scummvm/tools/compress_sword1.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- compress_sword1.c 7 Feb 2005 13:38:37 -0000 1.5
+++ compress_sword1.c 9 Jun 2005 12:38:44 -0000 1.6
@@ -527,17 +527,20 @@
/* As we don't expect one, we simply add a dummy argument to the list. */
char **args;
int cnt;
+ int result;
char dummyName[] = "dummy";
args = (char **)malloc((argc + 1) * sizeof(char *));
for (cnt = 0; cnt < argc; cnt++)
args[cnt] = argv[cnt];
args[argc] = dummyName;
- if (mode == kMP3Mode)
- process_mp3_parms(argc + 1, args, i);
+ if (mode == kMP3Mode)
+ result = process_mp3_parms(argc + 1, args, i);
else if (mode == kVorbisMode)
- process_ogg_parms(argc + 1, args, i);
+ result = process_ogg_parms(argc + 1, args, i);
else
error("Unknown encoding method");
+ if (!result)
+ showhelp(argv[0]);
free(args);
}
Index: compress_sword2.c
===================================================================
RCS file: /cvsroot/scummvm/tools/compress_sword2.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- compress_sword2.c 1 Jan 2005 10:33:29 -0000 1.4
+++ compress_sword2.c 9 Jun 2005 12:38:44 -0000 1.5
@@ -122,15 +122,18 @@
switch (gCompMode) {
case kMP3Mode:
tempEncoded = TEMP_MP3;
- process_mp3_parms(argc, argv, i);
+ if (!process_mp3_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
case kVorbisMode:
tempEncoded = TEMP_OGG;
- process_ogg_parms(argc, argv, i);
+ if (!process_ogg_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
case kFlacMode:
tempEncoded = TEMP_FLAC;
- process_flac_parms(argc, argv, i);
+ if (!process_flac_parms(argc, argv, i))
+ showhelp(argv[0]);
break;
}
More information about the Scummvm-git-logs
mailing list