Quoting Andrew Randrianasulu (2024-10-23 03:34:06) > But then it turned out our vaapi/qsv profiles stopped working, anytime > there was "profile=high" line. > > Oh, dang. > > Looked around and found this thread on Narkive > > https://ffmpeg-user.ffmpeg.narkive.com/FRd15m7B/ffmpeg-1-0-null-0xcb4700-eval-0x7fff0d95cf00-undefined-constant-or-missing-in-wpred > > replaced "profile" with "vprofile", now it appear to work again. > > But this was a bit unexpected, I do not think both changes were mentioned > as breaking in release notes? > > It sort of sad to see this "hidden" breakage every release. Ffmpeg is not > only library that does so, and tracking them all is not fun anymore. > > If you can't avoid making breakage - put it up front in release notes, not > hide it like in bad commercial advertisement.
"Breakage" is a tricky word, one person's new feature is another one's breakage [1]. In general we do not guarantee that behaviour remains the same between released versions (since that would effectively mean freezing development), only that it is consistent with the public API guarantees. > First, vf_scale now declares dynamic input and was filtered out by code > in cinelerra/pluginfclient.C > > int flag_mask = AVFILTER_FLAG_DYNAMIC_INPUTS | > AVFILTER_FLAG_DYNAMIC_OUTPUTS; > if( filter->flags & flag_mask ) return AVERROR(EPERM); Sorry, but that one's on you. Nobody ever promised that the scale filter (or any other filter, for that matter) won't gain dynamic inputs or outputs. And this change actually is mentioned in the changelog. If you want to enforce filters having the right input or output count, the correct place is after initializing them. > But then it turned out our vaapi/qsv profiles stopped working, anytime > there was "profile=high" line. > > Oh, dang. > > Looked around and found this thread on Narkive > > https://ffmpeg-user.ffmpeg.narkive.com/FRd15m7B/ffmpeg-1-0-null-0xcb4700-eval-0x7fff0d95cf00-undefined-constant-or-missing-in-wpred > > replaced "profile" with "vprofile", now it appear to work again. Hard to tell what the problem is, since you don't give any details, but I highly suspect the change does not do what you think it does. 'vprofile' is obsolete ffmpeg CLI syntax, it does not exist when using the libraries directly. I'd guess your 'vprofile' gets silently ignored since you do not check the options dictionary after avcodec_open2() returns. [1] https://xkcd.com/1172/ -- Anton Khirnov _______________________________________________ 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".