[FFmpeg-devel] [RFC] avfilter/image2: Add source file path and basename to each packet side data.
Marton Balint
cus at passwd.hu
Sun Dec 29 23:35:13 EET 2019
On Sun, 29 Dec 2019, Alexandre Heitor Schmidt wrote:
> On 26/12/2019 14:01, Alexandre Heitor Schmidt wrote:
> > > you may have to only activate this (or at least the full path
> metadata) feature
> > > if the user explicitly requests it. Probably the best way to do
> that is to
> > > introduce a new option of the image2 demuxer, probably with an
> AV_OPT_TYPE_FLAGS
> > > type.
> >
> > Do you mean image2 should, for example, have another option like
> 'enable_path_metadata' which would make the demuxer export the metadata
> only when set to "1"?
>
> Can I add a new parameter to VideoDemuxData in img2.h, named
> export_path_metadata, which, when explicitly set to 1, will allow
> exporting input path as the special metadata parameters
> (lavf.image2dec.source_path and lavf.image2dec.source_basename)? The
> default will be not to export them, so it won't compromise security, as
> discussed previously in this thread.
Yeah, this seems fine as solution.
Thanks,
Marton
>
> Something like this:
>
> In img2.h:
>
> typedef struct VideoDemuxData {
> const AVClass *class; /**< Class for private options. */
> int img_first;
> int img_last;
> int img_number;
> int64_t pts;
> int img_count;
> int is_pipe;
> int split_planes; /**< use independent file for each Y, U, V
> plane */
> char path[1024];
> char *pixel_format; /**< Set by a private option. */
> int width, height; /**< Set by a private option. */
> AVRational framerate; /**< Set by a private option. */
> int loop;
> int pattern_type; /**< PatternType */
> int use_glob;
> #if HAVE_GLOB
> glob_t globstate;
> #endif
> int start_number;
> int start_number_range;
> int frame_size;
> int ts_from_file;
> int export_path_metadata; /**< enabled when set to 1. */
> } VideoDemuxData;
>
> In img2dec.c:
>
> #define COMMON_OPTIONS \
> { "framerate", "set the video framerate", OFFSET(framerate),
> AV_OPT_TYPE_VIDEO_RATE, {.str = "25"}, 0, INT_MAX, DEC }, \
> { "pixel_format", "set video pixel format", OFFSET(pixel_format),
> AV_OPT_TYPE_STRING, {.str = NULL}, 0, 0, DEC }, \
> { "video_size", "set video size", OFFSET(width),
> AV_OPT_TYPE_IMAGE_SIZE, {.str = NULL}, 0, 0, DEC }, \
> { "loop", "force loop over input file sequence",
> OFFSET(loop), AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1, DEC }, \
> { "export_path_metadata", "enable metadata containing input path
> information", OFFSET(export_path_metadata), AV_OPT_TYPE_BOOL, {.i64 =
> 0 }, 0, 1, DEC }, \
> { NULL },
>
> Alex.
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
More information about the ffmpeg-devel
mailing list