aboutsummaryrefslogtreecommitdiffstats
path: root/src/dabplus-enc.cpp
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2016-03-04 21:02:15 +0100
committerMatthias P. Braendli <matthias.braendli@mpb.li>2016-03-04 21:02:15 +0100
commit61b5ba527efef75565336dfa87f0a2432dd5f50b (patch)
tree611f00a2b1a9b9f1e6a5a4b71eff3f5a027485bd /src/dabplus-enc.cpp
parent891bb2592944aa2be2d81e1583e73e632e70537f (diff)
downloadODR-AudioEnc-61b5ba527efef75565336dfa87f0a2432dd5f50b.tar.gz
ODR-AudioEnc-61b5ba527efef75565336dfa87f0a2432dd5f50b.tar.bz2
ODR-AudioEnc-61b5ba527efef75565336dfa87f0a2432dd5f50b.zip
Add -L option to give arbitrary options to VLC
Diffstat (limited to 'src/dabplus-enc.cpp')
-rw-r--r--src/dabplus-enc.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/dabplus-enc.cpp b/src/dabplus-enc.cpp
index d0130fd..0f34d65 100644
--- a/src/dabplus-enc.cpp
+++ b/src/dabplus-enc.cpp
@@ -103,6 +103,8 @@ void usage(const char* name) {
" much too loud.\n"
" -V Increase the VLC verbosity by one (can be given \n"
" multiple times)\n"
+ " -L OPTION Give an additional options to VLC (can be given\n"
+ " multiple times)\n"
" -w, --write-icy-text=filename Write the ICY Text into the file, so that mot-encoder can read it.\n"
#else
" The VLC input was disabled at compile-time\n"
@@ -255,6 +257,7 @@ int main(int argc, char *argv[])
std::string vlc_icytext_file = "";
std::string vlc_gain = "";
std::string vlc_cache = "";
+ std::vector<std::string> vlc_additional_opts;
unsigned verbosity = 0;
// For the file output
@@ -312,6 +315,7 @@ int main(int argc, char *argv[])
{"vlc-cache", required_argument, 0, 'C'},
{"vlc-gain", required_argument, 0, 'g'},
{"vlc-uri", required_argument, 0, 'v'},
+ {"vlc-opt", required_argument, 0, 'L'},
{"write-icy-text", required_argument, 0, 'w'},
{"aaclc", no_argument, 0, 0 },
{"afterburner", no_argument, 0, 'a'},
@@ -346,7 +350,7 @@ int main(int argc, char *argv[])
int index;
while(ch != -1) {
- ch = getopt_long(argc, argv, "aAhDlVb:c:f:i:j:k:o:r:d:p:P:s:v:w:g:C:", longopts, &index);
+ ch = getopt_long(argc, argv, "aAhDlVb:c:f:i:j:k:L:o:r:d:p:P:s:v:w:g:C:", longopts, &index);
switch (ch) {
case 0: // AAC-LC
aot = AOT_DABPLUS_AAC_LC;
@@ -437,6 +441,9 @@ int main(int argc, char *argv[])
case 'C':
vlc_cache = optarg;
break;
+ case 'L':
+ vlc_additional_opts.push_back(optarg);
+ break;
#else
case 'v':
case 'w':
@@ -608,8 +615,8 @@ int main(int argc, char *argv[])
JackInput jack_in(jack_name, channels, sample_rate, queue);
#endif
#if HAVE_VLC
- VLCInputDirect vlc_in_direct(vlc_uri, sample_rate, channels, verbosity, vlc_gain, vlc_cache);
- VLCInputThreaded vlc_in_threaded(vlc_uri, sample_rate, channels, verbosity, vlc_gain, vlc_cache, queue);
+ VLCInputDirect vlc_in_direct(vlc_uri, sample_rate, channels, verbosity, vlc_gain, vlc_cache, vlc_additional_opts);
+ VLCInputThreaded vlc_in_threaded(vlc_uri, sample_rate, channels, verbosity, vlc_gain, vlc_cache, vlc_additional_opts, queue);
#endif
if (infile) {