npv:osd:ascii only mode for the timer
[nyanmp.git] / npv / main.c
blob3fdfa2fd27e9f270bb183f09cefc269ab5c664ff
1 #ifndef NPV_MAIN_C
2 #define NPV_MAIN_C
3 /*
4 * code protected with a GNU affero GPLv3 license
5 * copyright (C) 2020 Sylvain BERTRAND
6 */
7 /*
8 * this is not a library, then we could not care less about memory management
9 * and/or similar cleanup: we have a virtual machine with a garbage collector,
10 * it is linux.
12 #include <stdbool.h>
13 #include <locale.h>
14 #include <stdio.h>
15 #include <stdint.h>
16 #include <string.h>
17 #include <signal.h>
18 #include <pthread.h>
19 #include <errno.h>
20 #include <stdlib.h>
21 #include <unistd.h>
22 #include <fcntl.h>
23 #include <termios.h> /* used while waiting for the osd */
24 #include <sys/epoll.h>
25 #include <sys/signalfd.h>
26 #include <sys/timerfd.h>
27 #include <dlfcn.h>
28 #include <libavformat/avformat.h>
29 #include <libavutil/samplefmt.h>
30 #include <libavutil/mathematics.h>
31 #include <libavfilter/buffersink.h>
32 #include <alsa/asoundlib.h>
33 /*---------------------------------------------------------------------------*/
34 #include "npv/c_fixing.h"
35 /*---------------------------------------------------------------------------*/
36 #include "config.h"
37 /*---------------------------------------------------------------------------*/
38 #include "npv/global.h"
39 #include "npv/public.h"
40 #include "npv/fmt/public.h"
41 #include "npv/pipeline/public.h"
42 #include "npv/audio/filt/public.h"
43 #include "npv/audio/public.h"
44 #include "npv/video/public.h"
45 #include "npv/video/osd/public.h"
46 #include "npv/xcb/public.h"
47 #include "npv/vk/public.h"
48 #include "npv/thdsws/public.h"
49 #include "npv/clk/public.h"
50 /*---------------------------------------------------------------------------*/
51 #include "npv/namespace/public.h"
52 #include "npv/namespace/ffmpeg.h"
53 #include "npv/namespace/alsa.h"
54 #include "npv/audio/namespace/ffmpeg.h"
55 #include "npv/namespace/public.h"
56 #include "npv/namespace/main.c"
57 /*---------------------------------------------------------------------------*/
58 #include "npv/local/state.frag.c"
59 #include "npv/local/code.frag.c"
60 #include "npv/public/code.frag.c"
61 /*--------------------------------------------------------------------------*/
62 #define CLEANUP
63 #include "npv/namespace/public.h"
64 #include "npv/namespace/ffmpeg.h"
65 #include "npv/namespace/alsa.h"
66 #include "npv/audio/namespace/ffmpeg.h"
67 #include "npv/namespace/public.h"
68 #include "npv/namespace/main.c"
69 #undef CLEANUP
70 /*============================================================================*/
71 #include "npv/pkt_q/main.c"
72 #include "npv/fmt/main.c"
73 #include "npv/audio/main.c"
74 #include "npv/audio/filt/main.c"
75 #include "npv/video/osd/main.c"
76 #include "npv/video/main.c"
77 #include "npv/xcb/main.c"
78 #include "npv/vk/main.c"
79 #include "npv/clk/main.c"
80 #include "npv/pipeline/main.c"
81 #include "npv/thdsws/main.c"
82 /*----------------------------------------------------------------------------*/
83 #endif