mirror of
https://github.com/onyx-and-iris/vmrcli.git
synced 2025-04-20 04:53:48 +01:00
Compare commits
No commits in common. "f6437fcbe724ac1773eac208664d4e85d74a8f80" and "b95c40265cb4a6ee7a07d60388de5c98d271c5c7" have entirely different histories.
f6437fcbe7
...
b95c40265c
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,7 @@
|
|||||||
#ifndef __CDLL_H__
|
#ifndef __CDLL_H__
|
||||||
#define __CDLL_H__
|
#define __CDLL_H__
|
||||||
|
|
||||||
|
#include <windows.h>
|
||||||
#include "VoicemeeterRemote.h"
|
#include "VoicemeeterRemote.h"
|
||||||
|
|
||||||
long initialize_dll_interfaces(T_VBVMR_INTERFACE *iVMR);
|
long initialize_dll_interfaces(T_VBVMR_INTERFACE *iVMR);
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
void remove_name_in_path(char *szPath);
|
void remove_name_in_path(char *szPath);
|
||||||
int replace_multiple_space_with_one(char *s, size_t len);
|
int replace_multiple_space_with_one(char *s, size_t len);
|
||||||
char *kind_as_string(char *s, int kind, int n);
|
char *kind_as_string(char *s, enum kind kind, int n);
|
||||||
char *version_as_string(char *, long v, int n);
|
char *version_as_string(char *, long v, int n);
|
||||||
|
|
||||||
#endif /* __UTIL_H__ */
|
#endif /* __UTIL_H__ */
|
@ -6,7 +6,6 @@
|
|||||||
|
|
||||||
enum kind
|
enum kind
|
||||||
{
|
{
|
||||||
UNKNOWN = -1,
|
|
||||||
BASIC = 1,
|
BASIC = 1,
|
||||||
BANANA,
|
BANANA,
|
||||||
POTATO,
|
POTATO,
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <windows.h>
|
|
||||||
#include "cdll.h"
|
#include "cdll.h"
|
||||||
#include "util.h"
|
#include "util.h"
|
||||||
|
|
||||||
|
@ -70,9 +70,9 @@ int replace_multiple_space_with_one(char *s, size_t len)
|
|||||||
* @param n maximum number of characters to be written to the buffer
|
* @param n maximum number of characters to be written to the buffer
|
||||||
* @return char* The kind of Voicemeeter as a string
|
* @return char* The kind of Voicemeeter as a string
|
||||||
*/
|
*/
|
||||||
char *kind_as_string(char *s, int kind, int n)
|
char *kind_as_string(char *s, enum kind kind, int n)
|
||||||
{
|
{
|
||||||
static const char *kinds[] = {
|
char *kinds[] = {
|
||||||
"Basic",
|
"Basic",
|
||||||
"Banana",
|
"Banana",
|
||||||
"Potato",
|
"Potato",
|
||||||
|
32
src/vmrcli.c
32
src/vmrcli.c
@ -2,8 +2,6 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
#include <getopt.h>
|
#include <getopt.h>
|
||||||
#include <string.h>
|
|
||||||
#include <ctype.h>
|
|
||||||
#include "cdll.h"
|
#include "cdll.h"
|
||||||
#include "vmr.h"
|
#include "vmr.h"
|
||||||
#include "log.h"
|
#include "log.h"
|
||||||
@ -38,7 +36,7 @@ struct result
|
|||||||
|
|
||||||
void help(void);
|
void help(void);
|
||||||
enum kind set_kind(char *kval);
|
enum kind set_kind(char *kval);
|
||||||
int init_voicemeeter(T_VBVMR_INTERFACE *vmr, enum kind kind);
|
int init_voicemeeter(T_VBVMR_INTERFACE *vmr, int kind);
|
||||||
void interactive(T_VBVMR_INTERFACE *vmr);
|
void interactive(T_VBVMR_INTERFACE *vmr);
|
||||||
void parse_input(T_VBVMR_INTERFACE *vmr, char *input, int len);
|
void parse_input(T_VBVMR_INTERFACE *vmr, char *input, int len);
|
||||||
void parse_command(T_VBVMR_INTERFACE *vmr, char *command);
|
void parse_command(T_VBVMR_INTERFACE *vmr, char *command);
|
||||||
@ -48,10 +46,11 @@ bool vflag = false;
|
|||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
bool iflag = false,
|
bool iflag = false;
|
||||||
mflag = false,
|
bool mflag = false;
|
||||||
sflag = false;
|
bool sflag = false;
|
||||||
int opt;
|
int opt;
|
||||||
|
char *kvalue = "";
|
||||||
int dvalue;
|
int dvalue;
|
||||||
enum kind kind = BANANAX64;
|
enum kind kind = BANANAX64;
|
||||||
|
|
||||||
@ -71,12 +70,8 @@ int main(int argc, char *argv[])
|
|||||||
help();
|
help();
|
||||||
exit(EXIT_SUCCESS);
|
exit(EXIT_SUCCESS);
|
||||||
case 'k':
|
case 'k':
|
||||||
kind = set_kind(optarg);
|
kvalue = optarg;
|
||||||
if (kind == UNKNOWN)
|
kind = set_kind(kvalue);
|
||||||
{
|
|
||||||
log_fatal("Unknown Voicemeeter kind '%s'", optarg);
|
|
||||||
exit(EXIT_FAILURE);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case 'm':
|
case 'm':
|
||||||
mflag = true;
|
mflag = true;
|
||||||
@ -95,7 +90,7 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
log_warn(
|
log_error(
|
||||||
"-D arg out of range, expected value from 0 up to 5\n"
|
"-D arg out of range, expected value from 0 up to 5\n"
|
||||||
"Log level will default to LOG_WARN (3).\n");
|
"Log level will default to LOG_WARN (3).\n");
|
||||||
}
|
}
|
||||||
@ -198,7 +193,8 @@ enum kind set_kind(char *kval)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return UNKNOWN;
|
log_error("Unknown Voicemeeter kind '%s'\n", kval);
|
||||||
|
exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -210,18 +206,18 @@ enum kind set_kind(char *kval)
|
|||||||
* @param kind
|
* @param kind
|
||||||
* @return int
|
* @return int
|
||||||
*/
|
*/
|
||||||
int init_voicemeeter(T_VBVMR_INTERFACE *vmr, enum kind kind)
|
int init_voicemeeter(T_VBVMR_INTERFACE *vmr, int kind)
|
||||||
{
|
{
|
||||||
int rep = initialize_dll_interfaces(vmr);
|
int rep = initialize_dll_interfaces(vmr);
|
||||||
if (rep < 0)
|
if (rep < 0)
|
||||||
{
|
{
|
||||||
if (rep == -100)
|
if (rep == -100)
|
||||||
{
|
{
|
||||||
log_fatal("Voicemeeter is not installed");
|
log_error("Voicemeeter is not installed");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
log_fatal("Error loading Voicemeeter dll with code %d\n", rep);
|
log_error("Error loading Voicemeeter dll with code %d\n", rep);
|
||||||
}
|
}
|
||||||
return rep;
|
return rep;
|
||||||
}
|
}
|
||||||
@ -229,7 +225,7 @@ int init_voicemeeter(T_VBVMR_INTERFACE *vmr, enum kind kind)
|
|||||||
rep = login(vmr, kind);
|
rep = login(vmr, kind);
|
||||||
if (rep != 0)
|
if (rep != 0)
|
||||||
{
|
{
|
||||||
log_fatal("Error logging into Voicemeeter");
|
log_error("Error logging into Voicemeeter");
|
||||||
return rep;
|
return rep;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user