Hi. In the comments on a recent patch to implement statistics outputs for a specific filter, I noted that this is something that many filters need to do, and therefore in need of unification. I also observed some JSON code in a filter, which does not belong there.
https://ffmpeg.org/pipermail/ffmpeg-devel/2020-April/260178.html It reminded me of a project I have had for some time: moving the writers written for ffprobe (XML, JSON, INI, etc.) into libavutil. I am pretty sure it is doable, but I am also sure there will be pitfalls, cases where the writer are very specific to ffprobe's need and some careful design is needed to make them generic while keeping compatibility. And in any case, it will be quite some work, I do not want to do it if it will be bikeshedded to death, so I first put the principle on discussion here. Do you think it is a good idea to add functions to produce formatted output for structured data in libavutil? There is another, smaller pitfall: where do these functions output to? ffprobe outputs to stdout; the patch quoted above outputs through AVIO to any supported format; some filters put data as string metadata. The obvious answer to that is to "write" to a callback, and have the callback decide to write the data to stdout, AVIO or a memory buffer. A few months ago, I proposed the draft of an elegant (IMNSHO) API for "write to a callback", but it immediately gave signs to be bikeshedded to death. If I start working on this project, I intend to finish and use it, because it's exactly the kind of use I had in mind for it. https://ffmpeg.org/pipermail/ffmpeg-devel/2019-December/254042.html Please share your thoughts, including if only to say you think it is a good idea. Regards, -- Nicolas George
signature.asc
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".