Subject | Hash | Author | Date (UTC) |
---|---|---|---|
npv: better reuse of ffmpeg references, stats | 4bb1b9ab45609f8e5113cc7613ebc1d09499561b | Sylvain BERTRAND | 2021-05-20 18:24:32 |
npv: avoid stale frames | fb20683b7cb91622b639b05e8b324d13edc72522 | Sylvain BERTRAND | 2021-05-16 20:51:34 |
npv: inverted resync logic and rate limiter | 9e772be0d5e19dc4dcef05ee2b4ce47c42788f8e | Sylvain BERTRAND | 2021-05-16 18:06:23 |
npv:trying to work around nasty live streams | 544ddd3381ad56363bb275ae59419e97e8c86895 | Sylvain BERTRAND | 2021-05-14 15:45:19 |
npv:spurious braces | e8678920198c6795420c54a839b92e5d301b4183 | Sylvain BERTRAND | 2021-05-06 20:55:38 |
npv:pts debug tracing, ffmpeg dev tantrum | 8c3bf9cf42fc3419b64c232f905c5c580d6a1942 | Sylvain BERTRAND | 2021-05-06 18:37:35 |
npa: forgot zero-ing before cmp | ceff7a70798b604bdb876a92ba0c446e3ede8a5b | Sylvain BERTRAND | 2021-04-15 20:15:07 |
npv: namespace love | cb385e293aeb094073963c46022f3c430b6bf9c1 | Sylvain BERTRAND | 2021-01-16 18:37:11 |
conservative handling of vulkan linear filtering | 7736b342c3566ac3ffa7a83ff1c7985e5595265f | Sylvain BERTRAND | 2021-01-15 18:18:02 |
npv: spurious AND faulty image creation flag | e7d0d4e9efa15781b323cd092989bc0b95331875 | Sylvain BERTRAND | 2021-01-15 02:01:16 |
npa: buffering | 9b2ec327646a289dae3e4cbb31b4857bf612d7e2 | Sylvain BERTRAND | 2020-11-06 17:20:56 |
npa: tons of love | 68a79110ca4a6f5bdb41ed90e421b6f46c1c1877 | Sylvain BERTRAND | 2020-11-06 15:20:13 |
npv: spurious unsigned | 5b4e039ffd921438a37112f0b4108480366f4d6d | Sylvain BERTRAND | 2020-11-06 04:31:18 |
npv: backward discontinuity handling | 0fc81a53996993992dd86a96a26afd2aab0ac366 | Sylvain BERTRAND | 2020-09-25 16:14:26 |
npv: more monotonic, more pts discontinuity | 1ab37ad2a24ca8f9fbf6d51eac8f996bd2eefacf | Sylvain BERTRAND | 2020-09-25 01:34:41 |
npv: workaround a mesa bug (which leads to linux state corruption) | 780e5bec0b90a9e931778cf68fec62a7c5241c13 | Sylvain BERTRAND | 2020-09-23 15:57:25 |
npv: fix filter time base handling, prepare discontinuity support | 2b7347be805d17a2b6f06e276e897c51431b9c6c | Sylvain BERTRAND | 2020-09-22 17:38:46 |
npv: correct coarse sync of vulkan image acquisition | a9b52940ff2d567dc6c26b28d86eab54f5876819 | Sylvain BERTRAND | 2020-09-20 22:00:32 |
npv: fix channel layout handling and a tad more | 88f74f181a567d108874a936fe3d306d34cfefb7 | Sylvain BERTRAND | 2020-09-19 23:12:04 |
npv: dynamic audio filter configuration | d8a0ff688ddb2abcde22c01a2ae52ea74e9f0f2f | Sylvain BERTRAND | 2020-09-19 20:54:04 |
File | Lines added | Lines deleted |
---|---|---|
npv/audio/filt/public/code.frag.c | 3 | 2 |
npv/audio/filt/public/state.frag.h | 1 | 1 |
npv/config.h | 3 | 1 |
npv/pkt_q/public/code.frag.c | 2 | 2 |
npv/public/code.frag.c | 11 | 0 |
File npv/audio/filt/public/code.frag.c changed (mode: 100644) (index 7cb3f17..bee9fd7) | |||
... | ... | STATIC u8 filt_push_dec_set(int *new_chans_n, uint64_t *new_chans_layout, | |
50 | 50 | avutil_audio_set_ref_t *save; | avutil_audio_set_ref_t *save; |
51 | 51 | ||
52 | 52 | save = a[0]; | save = a[0]; |
53 | avutil_audio_set_unref(save); | ||
53 | 54 | memmove(&a[0], &a[1], sizeof(*a) | memmove(&a[0], &a[1], sizeof(*a) |
54 | * (npv_audio_dec_sets_p.n - 1)); | ||
55 | a[npv_audio_dec_sets_p.n - 1] = save; | ||
55 | * (npv_audio_dec_sets_p.n_max - 1)); | ||
56 | a[npv_audio_dec_sets_p.n_max - 1] = save; | ||
56 | 57 | } | } |
57 | 58 | npv_audio_dec_sets_p.n--; | npv_audio_dec_sets_p.n--; |
58 | 59 | r8 = PUSHED_ONE_SET; | r8 = PUSHED_ONE_SET; |
File npv/audio/filt/public/state.frag.h changed (mode: 100644) (index 2e885e0..3c8d650) | |||
... | ... | STATIC struct { | |
9 | 9 | ||
10 | 10 | double vol; | double vol; |
11 | 11 | bool muted; | bool muted; |
12 | /* we will need query some output props from the filte */ | ||
12 | /* we will need to query some output props from the filt */ | ||
13 | 13 | avfilter_filt_ctx_t *abufsink_ctx; | avfilter_filt_ctx_t *abufsink_ctx; |
14 | 14 | } filt_p; | } filt_p; |
File npv/config.h changed (mode: 100644) (index fea4c64..4103b09) | |||
... | ... | STATIC void npv_cmd_pause(void); | |
30 | 30 | STATIC void npv_cmd_fullscreen_toggle(void); | STATIC void npv_cmd_fullscreen_toggle(void); |
31 | 31 | #ifdef NPV_DEBUG | #ifdef NPV_DEBUG |
32 | 32 | STATIC void npv_cmd_debug_toggle(void); | STATIC void npv_cmd_debug_toggle(void); |
33 | STATIC void npv_cmd_debug_stats(void); | ||
33 | 34 | #endif | #endif |
34 | 35 | /*----------------------------------------------------------------------------*/ | /*----------------------------------------------------------------------------*/ |
35 | 36 | /* for documentation and example */ | /* for documentation and example */ |
... | ... | struct npv_x11_bind_t npv_x11_binds[] = { | |
58 | 59 | X11_BIND(0x43, "f1", npv_cmd_osd_timer_toggle), | X11_BIND(0x43, "f1", npv_cmd_osd_timer_toggle), |
59 | 60 | X11_BIND(0x5f, "f11", npv_cmd_fullscreen_toggle), | X11_BIND(0x5f, "f11", npv_cmd_fullscreen_toggle), |
60 | 61 | #ifdef NPV_DEBUG | #ifdef NPV_DEBUG |
61 | X11_BIND(0x60, "f12", npv_cmd_debug_toggle) | ||
62 | X11_BIND(0x4c, "f10", npv_cmd_debug_stats), | ||
63 | X11_BIND(0x60, "f12", npv_cmd_debug_toggle), | ||
62 | 64 | #endif | #endif |
63 | 65 | }; | }; |
64 | 66 | #undef X11_BIND | #undef X11_BIND |
File npv/pkt_q/public/code.frag.c changed (mode: 100644) (index ce11e63..4e81634) | |||
... | ... | STATIC void deq(struct pkt_q_t *this) | |
21 | 21 | avcodec_pkt_ref_t *save; | avcodec_pkt_ref_t *save; |
22 | 22 | ||
23 | 23 | save = this->q[0]; | save = this->q[0]; |
24 | memmove(&this->q[0], &this->q[1], (this->n - 1) | ||
24 | memmove(&this->q[0], &this->q[1], (this->n_max - 1) | ||
25 | 25 | * sizeof(this->q[0])); | * sizeof(this->q[0])); |
26 | this->q[this->n - 1] = save; | ||
26 | this->q[this->n_max - 1] = save; | ||
27 | 27 | } | } |
28 | 28 | this->n--; | this->n--; |
29 | 29 | } | } |
File npv/public/code.frag.c changed (mode: 100644) (index 7fded40..fe4665e) | |||
... | ... | STATIC void exit_ok(u8 *fmt, ...) | |
86 | 86 | va_end(ap); | va_end(ap); |
87 | 87 | exit(EXIT_SUCCESS); | exit(EXIT_SUCCESS); |
88 | 88 | } | } |
89 | #ifdef NPV_DEBUG | ||
90 | STATIC void npv_cmd_debug_stats(void) | ||
91 | { | ||
92 | perr("DEBUG:STATS:pipeline:limits:pkts:audio_bytes_n=%lu/%lu:video_bytes_n=%lu/%lu\n", npv_pipeline_limits_p.pkts.audio_bytes_n, npv_pipeline_limits_p.pkts.limit.audio_bytes_n, npv_pipeline_limits_p.pkts.video_bytes_n, npv_pipeline_limits_p.pkts.limit.video_bytes_n); | ||
93 | perr("DEBUG:STATS:video:pkts=%u/%u\n", npv_video_pkt_q_p->n, npv_video_pkt_q_p->n_max); | ||
94 | perr("DEBUG:STATS:audio:pkts=%u/%u\n", npv_audio_pkt_q_p->n, npv_audio_pkt_q_p->n_max); | ||
95 | perr("DEBUG:STATS:video:frames %u/%u\n", npv_video_dec_frs_p.n, npv_video_dec_frs_p.n_max); | ||
96 | perr("DEBUG:STATS:audio:sets %u/%u\n", npv_audio_dec_sets_p.n, npv_audio_dec_sets_p.n_max); | ||
97 | perr("DEBUG:STATS:video:aspect_ratio=%ux%u\n", npv_video_aspect_ratio.width, npv_video_aspect_ratio.height); | ||
98 | } | ||
99 | #endif |