Opened 2 years ago
Last modified 2 years ago
#11099 reopened enhancement
"streamselect" filter, "map" parsing
| Reported by: | ManDay | Owned by: | |
|---|---|---|---|
| Priority: | normal | Component: | documentation |
| Version: | unspecified | Keywords: | streamselect astreamselect |
| Cc: | MasterQuestionable | Blocked By: | |
| Blocking: | Reproduced by developer: | no | |
| Analyzed by developer: | no |
Description (last modified by )
It seems the streamselect filter (which is important, because it is the only method to consistently define substitution macros!) does not parse the map beyond the first argument:
const int n = strtol(map, &p, 0);
if (map == p)
break;
map = p;
will at most read up to the first (unspecified) seperator, whence it stops. Instead, I think, should read
if (map == p)
break;
map = p + (*p != '\0');
https://ffmpeg.org/doxygen/trunk/f__streamselect_8c_source.html#l00205
Change History (6)
comment:1 by , 2 years ago
| Description: | modified (diff) |
|---|
comment:2 by , 2 years ago
| Resolution: | → invalid |
|---|---|
| Status: | new → closed |
comment:3 by , 2 years ago
| Cc: | added |
|---|---|
| Component: | avfilter → documentation |
| Keywords: | astreamselect added |
| Resolution: | invalid |
| Status: | closed → reopened |
| Summary: | streamselect filter, map parsing → "streamselect" filter, "map" parsing |
| Type: | defect → enhancement |
͏ https://ffmpeg.org/ffmpeg-filters.html#streamselect_002c-astreamselect
͏ Semantic-wise poor design, seemingly.
͏ Probably related:
͏ https://ffmpeg.org/ffmpeg-filters.html#sendcmd_002c-asendcmd
comment:5 by , 2 years ago
͏ Potential documentation issue.
͏ (probably also else)
͏ Related:
͏ https://trac.ffmpeg.org/ticket/11100
͏ https://trac.ffmpeg.org/ticket/11104
comment:6 by , 2 years ago
͏ Would you explain somewhat, what sort of application do you have with alike filters?
͏ The feedback may help analyzing the relevant filters' design.



The problem disappears when whitespace is used as the seperator (which is undocumented), because
strotolwill skip past it.