首页 > 其他分享 >ffmpeg Library public interfaces

ffmpeg Library public interfaces

时间:2024-11-10 11:43:21浏览次数:4  
标签:major ffmpeg interfaces library public version static Library any

Every library in FFmpeg provides a set of public APIs in its installed headers, which are those listed in the variable HEADERS in that library’s Makefile. All identifiers defined in those headers (except for those explicitly documented otherwise), and corresponding symbols exported from compiled shared or static libraries are considered public interfaces and must comply with the API and ABI compatibility rules described in this section.

Public APIs must be backward compatible within a given major version. I.e. any valid user code that compiles and works with a given library version must still compile and work with any later version, as long as the major version number is unchanged. "Valid user code" here means code that is calling our APIs in a documented and/or intended manner and is not relying on any undefined behavior. Incrementing the major version may break backward compatibility, but only to the extent described in Major version bumps.

We also guarantee backward ABI compatibility for shared and static libraries. I.e. it should be possible to replace a shared or static build of our library with a build of any later version (re-linking the user binary in the static case) without breaking any valid user binaries, as long as the major version number remains unchanged.

https://www.octfgroup.com/

标签:major,ffmpeg,interfaces,library,public,version,static,Library,any
From: https://www.cnblogs.com/sathcal/p/18537798

相关文章

  • ffmpeg Adding new interfaces
    nynewpublicidentifiersininstalledheadersareconsiderednewAPI-thisincludesnewfunctions,structs,macros,enumvalues,typedefs,newfieldsinexistingstructs,newinstalledheaders,etc.ConsiderthefollowingguidelineswhenaddingnewAPIs......
  • ffmpeg Removing interfaces
    Duetoabovementionedcompatibilityguarantees,removingAPIsisaninvolvedprocessthatshouldonlybeundertakenwithgoodreason.Typicallyadeficient,restrictive,orotherwiseinadequateAPIisreplacedbyasuperiorone,thoughitdoesattimesha......
  • ffmpeg Vim configuration
    InordertoconfigureVimtofollowFFmpegformattingconventions,pastethefollowingsnippetintoyour.vimrc:"indentationrulesforFFmpeg:4spaces,notabssetexpandtabsetshiftwidth=4setsofttabstop=4setcindentsetcinoptions=(0"Allowt......
  • ffmpeg Comments
    UsetheJavaDoc/Doxygenformat(seeexamplesbelow)sothatcodedocumentationcanbegeneratedautomatically.Allnontrivialfunctionsshouldhaveacommentabovethemexplainingwhatthefunctiondoes,evenifitisjustonesentence.Allstructuresand......
  • ffmpeg Naming conventions
    Namesoffunctions,variables,andstructmembersmustbelowercase,usingunderscores(_)toseparatewords.Forexample,‘avfilter_get_video_buffer’isanacceptablefunctionnameand‘AVFilterGetVideo’isnot.Struct,union,enum,andtypedeffedtypen......
  • Z-Library官网入口镜像网址及客户端合集 (2024持续更新)
    Z-Library(简称Z-Lib,前身为BookFinder)是一个影子图书馆网站,用户可在上面下载期刊、文章以及各类书籍,其共收录了超过1000w本书籍和8000w篇文章。它原是创世纪图书馆(LibraryGenesis)的镜像网站,并从该图书馆获得大部分馆藏,但它的一些馆藏由用户自行上传,并且不为创世纪图书馆所......
  • ffmpeg Code behaviour
    CorrectnessThecodemustbevalid.Itmustnotcrash,abort,accessinvalidpointers,leakmemory,causedataracesorsignedintegeroverflow,orotherwisecauseundefinedbehaviour.Errorcodesshouldbecheckedand,whenapplicable,forwardedtotheca......
  • ffmpeg Patches/Committing
    LicensesforpatchesmustbecompatiblewithFFmpeg.ContributionsshouldbelicensedundertheLGPL2.1,includingan"oranylaterversion"clause,or,ifyoupreferagift-stylelicense,theISCorMITlicense.GPL2includingan"orany......
  • ffmpeg RFC call
    IntheRFCmode,onepersonfromtheTCpostsonthemailinglistthetechnicalquestionandwillrequestinputfromthecommunity.Themailwillhavethefollowingspecification:aprecisetitleaspecifictag[TCRFC]atop-levelemailcontainaprecise......
  • ffmpeg Decisions
    ThedecisionsfromtheTCwillbesentonthemailinglist,withthe[TC]tag.Internally,theTCshouldtakedecisionswithamajority,orusingranked-choicevoting.EachTCmembermustvoteonsuchdecisionaccordingtowhatis,intheirview,bestfor......