com_next() is also called from com_jmp(), where we needed to pass
a fake argv. This is no longer necessary as com_next() now takes
a parse result pointer which is unused. So we may just pass NULL
from com_jmp().
In this mode, file name and play time of the current audio file are
displayed. Hit CTRL+C or : to switch to input mode.
[/description]
In this mode, file name and play time of the current audio file are
displayed. Hit CTRL+C or : to switch to input mode.
[/description]
+[subcommand next]
+ purpose = load the next file of the playlist
-static int com_next(struct play_task *pt, int argc, __a_unused char **argv)
+static int com_next(struct play_task *pt,
+ __a_unused struct lls_parse_result *lpr)
- if (argc != 1)
- return -E_PLAY_SYNTAX;
ret = next_valid_file(pt);
if (ret < 0)
return ret;
ret = next_valid_file(pt);
if (ret < 0)
return ret;
pt->start_chunk = 0;
return 0;
}
pt->start_chunk = 0;
return 0;
}
+EXPORT_PLAY_CMD_HANDLER(next);
static int com_fg(struct play_task *pt,
__a_unused struct lls_parse_result *lpr)
static int com_fg(struct play_task *pt,
__a_unused struct lls_parse_result *lpr)
if (percent < 0 || percent > 100)
return -ERRNO_TO_PARA_ERROR(EINVAL);
if (percent == 100)
if (percent < 0 || percent > 100)
return -ERRNO_TO_PARA_ERROR(EINVAL);
if (percent == 100)
- return com_next(pt, 1, (char *[]){"next", NULL});
+ return com_next(pt, NULL);
if (pt->playing && !pt->fn.btrn)
return 0;
pt->start_chunk = percent * pt->num_chunks / 100;
if (pt->playing && !pt->fn.btrn)
return 0;
pt->start_chunk = percent * pt->num_chunks / 100;
SF: play.c
SN: list of commands
---
SF: play.c
SN: list of commands
---
-N: next
-D: Load next file.
-U: next
-H: Closes the current file and loads the next file of the playlist.
----
N: prev
D: Load previous file.
U: prev
N: prev
D: Load previous file.
U: prev