iAdd feature for times of playing a vtv file. - vtv-tools - virtual terminal video tools Err bitreich.org 70
hgit clone git://bitreich.org/vtv-tools git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/vtv-tools URL:git://bitreich.org/vtv-tools git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/vtv-tools bitreich.org 70
1Log /scm/vtv-tools/log.gph bitreich.org 70
1Files /scm/vtv-tools/files.gph bitreich.org 70
1Refs /scm/vtv-tools/refs.gph bitreich.org 70
1Tags /scm/vtv-tools/tag bitreich.org 70
1README /scm/vtv-tools/file/README.md.gph bitreich.org 70
1LICENSE /scm/vtv-tools/file/LICENSE.gph bitreich.org 70
i--- Err bitreich.org 70
1commit 9e02589616cb962968de2b2dbca952b449cc1b1d /scm/vtv-tools/commit/9e02589616cb962968de2b2dbca952b449cc1b1d.gph bitreich.org 70
1parent 270447f8aa7f318640c5dc7df3c759912d3bc37b /scm/vtv-tools/commit/270447f8aa7f318640c5dc7df3c759912d3bc37b.gph bitreich.org 70
hAuthor: Christoph Lohmann <20h@r-36.net> URL:mailto:20h@r-36.net bitreich.org 70
iDate: Sat, 10 Aug 2024 09:30:40 +0200 Err bitreich.org 70
i Err bitreich.org 70
iAdd feature for times of playing a vtv file. Err bitreich.org 70
i Err bitreich.org 70
iDiffstat: Err bitreich.org 70
i M man/vtv-player.1 | 4 +++- Err bitreich.org 70
i M src/vtv-player.c | 14 +++++++++++--- Err bitreich.org 70
i M src/vtv-viewer.c | 1 + Err bitreich.org 70
i Err bitreich.org 70
i3 files changed, 15 insertions(+), 4 deletions(-) Err bitreich.org 70
i--- Err bitreich.org 70
1diff --git a/man/vtv-player.1 b/man/vtv-player.1 /scm/vtv-tools/file/man/vtv-player.1.gph bitreich.org 70
i@@ -22,8 +22,10 @@ Plays a VTV file in the terminal. Loops until manually terminated. Err bitreich.org 70
i .Bl -tag -width Ds Err bitreich.org 70
i .It Fl r Ar fps Err bitreich.org 70
i Show this many frames per second. Defaults to 20. Err bitreich.org 70
i-.It Fl h Ar lines Err bitreich.org 70
i+.It Fl h Ar frameheight Err bitreich.org 70
i The number of lines in a frame. Defaults to 25. Err bitreich.org 70
i+.It Fl t Ar times Err bitreich.org 70
i+The number of times the vtv will be played. Default indefinite. Err bitreich.org 70
i .El Err bitreich.org 70
i . Err bitreich.org 70
i .Sh FORMAT Err bitreich.org 70
1diff --git a/src/vtv-player.c b/src/vtv-player.c /scm/vtv-tools/file/src/vtv-player.c.gph bitreich.org 70
i@@ -29,17 +29,21 @@ void sigint(int unused) { Err bitreich.org 70
i int main(int argc, char* argv[]) { Err bitreich.org 70
i int fps = 20; Err bitreich.org 70
i int frame_lines = 25; Err bitreich.org 70
i+ int times = -1; Err bitreich.org 70
i const char *vtv_file; Err bitreich.org 70
i struct vtv* vtv; Err bitreich.org 70
i Err bitreich.org 70
i while (1) { Err bitreich.org 70
i- switch (getopt(argc, argv, "r:h:")) { Err bitreich.org 70
i+ switch (getopt(argc, argv, "r:h:t:")) { Err bitreich.org 70
i case 'r': Err bitreich.org 70
i fps = atoi(optarg); Err bitreich.org 70
i break; Err bitreich.org 70
i case 'h': Err bitreich.org 70
i frame_lines = atoi(optarg); Err bitreich.org 70
i break; Err bitreich.org 70
i+ case 't': Err bitreich.org 70
i+ times = atoi(optarg); Err bitreich.org 70
i+ break; Err bitreich.org 70
i case -1: Err bitreich.org 70
i if (optind == argc-1) { Err bitreich.org 70
i vtv_file = argv[optind]; Err bitreich.org 70
i@@ -47,7 +51,7 @@ int main(int argc, char* argv[]) { Err bitreich.org 70
i } Err bitreich.org 70
i // fallthrough Err bitreich.org 70
i default: Err bitreich.org 70
i- fprintf(stderr, "Usage: %s [-r INT] [-h INT] FILE\n", argv[0]); Err bitreich.org 70
i+ fprintf(stderr, "Usage: %s [-r fps] [-h frameheight] [-t times] FILE\n", argv[0]); Err bitreich.org 70
i exit(1); Err bitreich.org 70
i } Err bitreich.org 70
i } Err bitreich.org 70
i@@ -67,13 +71,17 @@ int main(int argc, char* argv[]) { Err bitreich.org 70
i int frame = 0; Err bitreich.org 70
i signal(SIGINT, sigint); Err bitreich.org 70
i Err bitreich.org 70
i- while (1) { Err bitreich.org 70
i+ for (int i = times; i != 0; i--) { Err bitreich.org 70
i useconds_t nap = 1000000.0 / fps; Err bitreich.org 70
i frame = (frame+1) % num_frames; Err bitreich.org 70
i home(); Err bitreich.org 70
i vtv_show_frame(vtv, stdout, frame, frame_lines, Err bitreich.org 70
i "\033[0m MISSING LINE"); Err bitreich.org 70
i usleep(nap); Err bitreich.org 70
i+ if (i < 0) Err bitreich.org 70
i+ i = -1; Err bitreich.org 70
i } Err bitreich.org 70
i def(); Err bitreich.org 70
i+ reset(); Err bitreich.org 70
i } Err bitreich.org 70
i+ Err bitreich.org 70
1diff --git a/src/vtv-viewer.c b/src/vtv-viewer.c /scm/vtv-tools/file/src/vtv-viewer.c.gph bitreich.org 70
i@@ -116,3 +116,4 @@ int main(int argc, char** argv) { Err bitreich.org 70
i vtv_free(vtv); Err bitreich.org 70
i return ret; Err bitreich.org 70
i } Err bitreich.org 70
i+ Err bitreich.org 70
.
Response:
text/plain