On Fri, May 04, 2018 at 02:02:02PM -0300, James Almer wrote: > On 5/4/2018 1:51 PM, wm4 wrote: > > On Fri, 4 May 2018 13:30:38 -0300 > > James Almer <jamr...@gmail.com> wrote: > > > >> On 5/4/2018 12:58 PM, wm4 wrote: > >>> On Sat, 28 Apr 2018 19:05:29 +0200 > >>> wm4 <nfx...@googlemail.com> wrote: > >>> > >>>> This can "demux" .vpy files. > >>>> > >>>> Some minor code copied from other LGPL parts of FFmpeg. > >>>> > >>>> I did not found a good way to test a few of the more obscure features, > >>>> like VFR nodes, compat pixel formats, or nodes with dynamic size/format > >>>> changes. These can be easily implemented on demand. > >>>> --- > >>>> configure | 5 + > >>>> libavformat/Makefile | 1 + > >>>> libavformat/allformats.c | 1 + > >>>> libavformat/vapoursynth.c | 421 > >>>> ++++++++++++++++++++++++++++++++++++++++++++++ > >>>> 4 files changed, 428 insertions(+) > >>>> create mode 100644 libavformat/vapoursynth.c > >>>> > >>> > >>> Pushed, with some minor changes, and zero-copy frame passing. > >> > >> The first step to fix something (in this case, usage sizeof(AVFrame) > >> outside libavutil) is not adding even more cases of the issue in question. > >> You still can replace this with rawvideo. Someone even already wrote it > >> for you. > >> > >> Lets try to abide our own ABI rules... > > > > That's requires a frame copy and is not what I went through all the > > effort for. > > > > Why didn't you say anything when the kmsgrab code did the same thing? > > Or when the unwrapped frame stuff was added in the first place? > > I did the other day on IRC when you asked me why i was against this, if > you recall, because it was then when i found out this has been the case > for a long while, and why I'm now saying adding even more cases is going > in the opposite direction of an actual solution. > > In any case, i explicitly didn't block this, and no one else seems to > care, so whatever.
I just now realized this, no, use of sizeof(AVFrame) outside libavutil is not ok, thats a ABI/API breakage. This must be removed/reverted. In all cases that are relevant. (there can be exceptions if they are irrelevant to API/ABI compatibility) For example the "if (pkt->size < sizeof(AVFrame))" in libavcodec/wrapped_avframe.c should be ok Thanks [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB I do not agree with what you have to say, but I'll defend to the death your right to say it. -- Voltaire
signature.asc
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel