projects
/
hls.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3ebd663
)
Prevent recurring output unless requested
master
author
volpol
<volpol@packet-gain.de>
Wed, 9 Sep 2020 09:38:52 +0000
(11:38 +0200)
committer
volpol
<volpol@packet-gain.de>
Wed, 9 Sep 2020 18:24:30 +0000
(20:24 +0200)
curly.c
patch
|
blob
|
history
itemq.c
patch
|
blob
|
history
diff --git
a/curly.c
b/curly.c
index 9d13ab9d91a4930f3bc40feb74d0af1c47523b6a..ffa3d5e0eba9eb652ddbb84a53db427ed11e090f 100644
(file)
--- a/
curly.c
+++ b/
curly.c
@@
-295,6
+295,8
@@
void curly_stream_cleanup(void) {
sch = NULL;
}
sch = NULL;
}
+//TODO: make it a callback instead
+extern void report_xfer(double size, double abps, time_t start);
int curly_stream(const char *from_url, unsigned long duration) {
CURLcode cc = CURLE_COULDNT_CONNECT;
int curly_stream(const char *from_url, unsigned long duration) {
CURLcode cc = CURLE_COULDNT_CONNECT;
@@
-362,7
+364,7
@@
if (0 && bw_hint)
FAKED:
if (CURLE_OK == cc)
FAKED:
if (CURLE_OK == cc)
-
printf("%8.0f bytes @ %4.2f KB/s (%lu real seconds)\n", size, abps / 1000.0, time(NULL)-
st);
+
report_xfer(size, abps,
st);
err = 0;
CS_OUT:
err = 0;
CS_OUT:
diff --git
a/itemq.c
b/itemq.c
index 331173b9831d51c73b5513b553305c666333fd4c..bfedf667c8a08b9d6347775f2ede53d4db682db4 100644
(file)
--- a/
itemq.c
+++ b/
itemq.c
@@
-32,6
+32,7
@@
static struct {
int refresh_interval;
const char *cap_base;
const char *master_url;
int refresh_interval;
const char *cap_base;
const char *master_url;
+ int verbose;
} config = {
// .refresh_interval = 20,
.cap_base = "QVC",
} config = {
// .refresh_interval = 20,
.cap_base = "QVC",
@@
-194,23
+195,19
@@
void emulate_stream(void) {
if (!live) {
in_game = 0;
} else {
if (!live) {
in_game = 0;
} else {
- puts("Ran out of steam...");
- //printf("Ran out of steam, sleeping for %lu\n", sleep_dur);
- //DPRINT("sleeping\n");
- //force_refresh = 1;
- //sleep(sleep_dur);
- sleep(1);
+ if (config.verbose) puts("Ran out of steam...");
+ usleep(1000);
}
return;
}
}
do {
}
return;
}
}
do {
- printf("Streaming %s (%lu)\n", curr->url, curr->duration);
+
if(config.verbose)
printf("Streaming %s (%lu)\n", curr->url, curr->duration);
#if 1
err = curly_stream(curr->url, curr->duration);
#ifdef USE_CAPTURE
#if 1
err = curly_stream(curr->url, curr->duration);
#ifdef USE_CAPTURE
- printf ("Ringbuffer is %lu%% filled\n", ring_usage() * 100 / ring_capacity());
+
if (config.verbose)
printf ("Ringbuffer is %lu%% filled\n", ring_usage() * 100 / ring_capacity());
#endif
#else
err = -1; curly_fake_stream();
#endif
#else
err = -1; curly_fake_stream();
@@
-291,7
+288,7
@@
int reload_m3u8(void *src, const char *urlbase) {
}
if (M_X_TARGETDURATION == m){
m3u8_get_property(P_DURATION, v, &tgt);
}
if (M_X_TARGETDURATION == m){
m3u8_get_property(P_DURATION, v, &tgt);
- printf ("Target duration: %lu\n", tgt);
+
if (config.verbose)
printf ("Target duration: %lu\n", tgt);
}
if (M_URL != m) continue;
}
if (M_URL != m) continue;
@@
-342,12
+339,12
@@
int reload_m3u8(void *src, const char *urlbase) {
}
}
}
}
- printf ("Estimated duration: %lu\n", est);
+
if (config.verbose)
printf ("Estimated duration: %lu\n", est);
if (!config.refresh_interval) {
refresh_interval = tgt > est ? est : tgt;
if (refresh_interval > 2 ) refresh_interval--;
}
if (!config.refresh_interval) {
refresh_interval = tgt > est ? est : tgt;
if (refresh_interval > 2 ) refresh_interval--;
}
- printf ("Using refresh int: %d\n", refresh_interval);
+
if (config.verbose)
printf ("Using refresh int: %d\n", refresh_interval);
return 0;
}
return 0;
}
@@
-407,11
+404,12
@@
static void cap_isr(void){
}
#endif
}
#endif
+#define DEFAULT_OPTS "r:dvi:a:u:"
void parse_config (int argc, char *argv[]){
#ifdef USE_CAPTURE
void parse_config (int argc, char *argv[]){
#ifdef USE_CAPTURE
- const char *ostr =
"r:c:di:a:u
:";
+ const char *ostr =
DEFAULT_OPTS"c
:";
#else
#else
- const char *ostr =
"r:di:a:u:"
;
+ const char *ostr =
DEFAULT_OPTS
;
#endif
int opt;
#endif
int opt;
@@
-425,6
+423,9
@@
void parse_config (int argc, char *argv[]){
config.cap_base = optarg;
break;
#endif
config.cap_base = optarg;
break;
#endif
+ case 'v':
+ config.verbose = 1;
+ break;
case 'd':
config.disable_bwhint = 1;
break;
case 'd':
config.disable_bwhint = 1;
break;
@@
-452,6
+453,11
@@
void parse_config (int argc, char *argv[]){
printf ("Master URL: %s\n",config.master_url);
}
printf ("Master URL: %s\n",config.master_url);
}
+void report_xfer(double size, double abps, time_t start){
+ if (config.verbose)
+ printf("%8.0f bytes @ %4.2f KB/s (%lu real seconds)\n", size, abps / 1000.0, time(NULL)-start);
+}
+
int main(int argc, char *argv[]) {
time_t last, now;
int main(int argc, char *argv[]) {
time_t last, now;
@@
-489,7
+495,7
@@
int main(int argc, char *argv[]) {
while (in_game) {
now = time(NULL);
if (live && (force_refresh || now-last>=refresh_interval)) {
while (in_game) {
now = time(NULL);
if (live && (force_refresh || now-last>=refresh_interval)) {
- printf ("Refreshing M3U8 after %d real seconds (forced:%s)\n",(int)(last?now-last:0), force_refresh ? "yes" : "no");
+
if (config.verbose)
printf ("Refreshing M3U8 after %d real seconds (forced:%s)\n",(int)(last?now-last:0), force_refresh ? "yes" : "no");
force_refresh = 0;
#ifdef USE_MEMFILE
MFILE *f = mopen(NULL, 0, "w+");
force_refresh = 0;
#ifdef USE_MEMFILE
MFILE *f = mopen(NULL, 0, "w+");