sylware / nyanmp (public) (License: AGPLv3) (since 2020-02-12) (hash sha1)
intended to become a collection of media players for gnu/linux based on ffmpeg, alsa, vulkan, x11, wayland, etc.
List of commits:
Subject Hash Author Date (UTC)
npv: add fine grained volume control 06bc3b77b065f35f294659db520f66e7e8094c8c Sylvain BERTRAND 2022-02-15 18:47:34
npv: move to freetype SDF rendering 972a3027fec3b69a1e10405cc0da35b5194b6f46 Sylvain BERTRAND 2021-12-27 20:54:53
npv:osd:ascii only mode for the timer 3de3158fc3300f8a9c6f75fcca76b512331b8c2f Sylvain BERTRAND 2021-10-30 19:18:38
npv: default to dejavu instead of noto 708f3166a09fd7ba815ec47907cabfb1af4d26c5 Sylvain BERTRAND 2021-10-10 17:05:17
npv: live mode and ready the code for indicators.. if ever... 2d6ddb83edd6f08e99fbe01dc60a354b5e5a2afe Sylvain BERTRAND 2021-07-23 13:17:47
npv: don't block the muted state 0c29e9329ec5db6bed191b2b4caffff8166bd11f Sylvain BERTRAND 2021-07-21 21:34:37
npv: now we have enough perspective, make states internal 62f6b1bf62fc083762f036ddde1f29dd23baf814 Sylvain BERTRAND 2021-07-21 20:12:36
npv/npa: add gcc4 atomic support d9676b20984dcbfd8df4afbf85178c8ff4295e4f Sylvain BERTRAND 2021-06-18 15:04:01
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
Commit 06bc3b77b065f35f294659db520f66e7e8094c8c - npv: add fine grained volume control
Author: Sylvain BERTRAND
Author date (UTC): 2022-02-15 18:47
Committer name: Sylvain BERTRAND
Committer date (UTC): 2022-02-15 18:47
Parent(s): 972a3027fec3b69a1e10405cc0da35b5194b6f46
Signing key:
Tree: 5f1786d8fbd67f7606d400fc33455c08623cd5c2
File Lines added Lines deleted
npv/audio/filt/public.h 2 0
npv/audio/filt/public/code.frag.c 36 0
npv/config.h 5 0
npv/local/code.frag.c 8 0
File npv/audio/filt/public.h changed (mode: 100644) (index 2e06c71..be7b588)
... ... STATIC void filt_flush(void);
35 35 STATIC void npv_audio_filt_cmd_mute(void); STATIC void npv_audio_filt_cmd_mute(void);
36 36 STATIC void npv_audio_filt_cmd_vol_up(void); STATIC void npv_audio_filt_cmd_vol_up(void);
37 37 STATIC void npv_audio_filt_cmd_vol_down(void); STATIC void npv_audio_filt_cmd_vol_down(void);
38 STATIC void npv_audio_filt_cmd_vol_up_small(void);
39 STATIC void npv_audio_filt_cmd_vol_down_small(void);
38 40 /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/
39 41 #define CLEANUP #define CLEANUP
40 42 #include "npv/namespace/ffmpeg.h" #include "npv/namespace/ffmpeg.h"
File npv/audio/filt/public/code.frag.c changed (mode: 100644) (index 1dec210..693218f)
... ... STATIC void npv_audio_filt_cmd_vol_up(void)
219 219 warning("ffmpeg:volume context:unable to set the volume up to \"%s\":response from volume filter:\"%s\"\n", resp); warning("ffmpeg:volume context:unable to set the volume up to \"%s\":response from volume filter:\"%s\"\n", resp);
220 220 } }
221 221 } }
222 STATIC void npv_audio_filt_cmd_vol_down_small(void)
223 {
224 int r;
225 u8 vol_l10n_str[sizeof("xxx.xx")]; /* should be overkill */
226 u8 resp[STR_SZ];
227
228 filt_p.vol -= VOL_DELTA_SMALL;
229 if (filt_p.vol < 0.)
230 filt_p.vol = 0.;
231 snprintf(vol_l10n_str, sizeof(vol_l10n_str), "%f", filt_p.vol);
232 pout("COMMAND:volume down to value %s\n", vol_l10n_str);
233 if (!filt_p.muted) {
234 r = avfilter_graph_send_cmd(graph_l, "vol", "volume",
235 vol_l10n_str, resp, sizeof(resp), 0);
236 if (r < 0)
237 warning("ffmpeg:volume context:unable to set the volume down to \"%s\":response from volume filter:\"%s\"\n", resp);
238 }
239 }
240 STATIC void npv_audio_filt_cmd_vol_up_small(void)
241 {
242 int r;
243 u8 vol_l10n_str[sizeof("xxx.xx")]; /* should be overkill */
244 u8 resp[STR_SZ];
245
246 filt_p.vol += VOL_DELTA_SMALL;
247 if (filt_p.vol > 1.)
248 filt_p.vol = 1.;
249 snprintf(vol_l10n_str, sizeof(vol_l10n_str), "%f", filt_p.vol);
250 pout("COMMAND:volume up to value %s\n", vol_l10n_str);
251 if (!filt_p.muted) {
252 r = avfilter_graph_send_cmd(graph_l, "vol", "volume",
253 vol_l10n_str, resp, sizeof(resp), 0);
254 if (r < 0)
255 warning("ffmpeg:volume context:unable to set the volume up to \"%s\":response from volume filter:\"%s\"\n", resp);
256 }
257 }
File npv/config.h changed (mode: 100644) (index aa4b74d..1fe6dee)
... ... STATIC void npv_cmd_rewind_big(void);
22 22 STATIC void npv_cmd_fastforward_big(void); STATIC void npv_cmd_fastforward_big(void);
23 23 STATIC void npv_cmd_vol_up(void); STATIC void npv_cmd_vol_up(void);
24 24 STATIC void npv_cmd_vol_down(void); STATIC void npv_cmd_vol_down(void);
25 STATIC void npv_cmd_vol_up_small(void);
26 STATIC void npv_cmd_vol_down_small(void);
25 27 STATIC void npv_cmd_mute(void); STATIC void npv_cmd_mute(void);
26 28 STATIC void npv_cmd_osd_timer_toggle(void); STATIC void npv_cmd_osd_timer_toggle(void);
27 29 STATIC void npv_cmd_pause(void); STATIC void npv_cmd_pause(void);
 
... ... struct npv_x11_bind_t npv_x11_binds[] = {
54 56 X11_BIND(0x6f, "arrow up", npv_cmd_vol_up), X11_BIND(0x6f, "arrow up", npv_cmd_vol_up),
55 57 X11_BIND(0x74, "arrow down", npv_cmd_vol_down), X11_BIND(0x74, "arrow down", npv_cmd_vol_down),
56 58 X11_BIND(0x48, "f6", npv_cmd_mute), X11_BIND(0x48, "f6", npv_cmd_mute),
59 X11_BIND(0x49, "f7", npv_cmd_vol_down_small),
60 X11_BIND(0x4a, "f8", npv_cmd_vol_up_small),
57 61 X11_BIND(0x43, "f1", npv_cmd_osd_timer_toggle), X11_BIND(0x43, "f1", npv_cmd_osd_timer_toggle),
58 62 X11_BIND(0x5f, "f11", npv_cmd_fullscreen_toggle), X11_BIND(0x5f, "f11", npv_cmd_fullscreen_toggle),
59 63 #ifdef NPV_DEBUG #ifdef NPV_DEBUG
 
... ... struct npv_x11_bind_t npv_x11_binds[] = {
68 72 #undef X11_KEYCODE_SPACE #undef X11_KEYCODE_SPACE
69 73 /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/
70 74 #define VOL_DELTA 0.1 /* from 0.0 to 1.0 */ #define VOL_DELTA 0.1 /* from 0.0 to 1.0 */
75 #define VOL_DELTA_SMALL 0.01 /* from 0.0 to 1.0 */
71 76 #define SEEK_DELTA INT64_C(10) /* 10 seconds */ #define SEEK_DELTA INT64_C(10) /* 10 seconds */
72 77 #define SEEK_DELTA_BIG (INT64_C(4) * INT64_C(60)) /* 4 minutes */ #define SEEK_DELTA_BIG (INT64_C(4) * INT64_C(60)) /* 4 minutes */
73 78 /*============================================================================*/ /*============================================================================*/
File npv/local/code.frag.c changed (mode: 100644) (index 5540b8c..be74984)
... ... STATIC void npv_cmd_vol_down(void)
834 834 { {
835 835 npv_audio_filt_cmd_vol_down(); npv_audio_filt_cmd_vol_down();
836 836 } }
837 STATIC void npv_cmd_vol_up_small(void)
838 {
839 npv_audio_filt_cmd_vol_up_small();
840 }
841 STATIC void npv_cmd_vol_down_small(void)
842 {
843 npv_audio_filt_cmd_vol_down_small();
844 }
837 845 STATIC void npv_cmd_mute(void) STATIC void npv_cmd_mute(void)
838 846 { {
839 847 npv_audio_filt_cmd_mute(); npv_audio_filt_cmd_mute();
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/sylware/nyanmp

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/sylware/nyanmp

Clone this repository using git:
git clone git://git.rocketgit.com/user/sylware/nyanmp

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main