AForge.Video.FFMPEG.xml 230 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761
  1. <?xml version="1.0"?>
  2. <doc>
  3. <assembly>
  4. "Video.FFMPEG"
  5. </assembly>
  6. <members>
  7. <member name="M:AForge.Video.FFMPEG.VideoFileSource.Stop">
  8. <summary>
  9. Stop video source.
  10. </summary>
  11. <remarks>
  12. <para>Stops video source aborting its thread.</para>
  13. <para>
  14. <note>Since the method aborts background thread, its usage is highly not preferred
  15. and should be done only if there are no other options. The correct way of stopping camera
  16. is <see cref="M:AForge.Video.FFMPEG.VideoFileSource.SignalToStop">signaling it stop</see> and then
  17. <see cref="M:AForge.Video.FFMPEG.VideoFileSource.WaitForStop">waiting</see> for background thread's completion.</note>
  18. </para>
  19. </remarks>
  20. </member>
  21. <member name="M:AForge.Video.FFMPEG.VideoFileSource.WaitForStop">
  22. <summary>
  23. Wait for video source has stopped.
  24. </summary>
  25. <remarks>Waits for source stopping after it was signalled to stop using
  26. <see cref="M:AForge.Video.FFMPEG.VideoFileSource.SignalToStop" /> method.</remarks>
  27. </member>
  28. <member name="M:AForge.Video.FFMPEG.VideoFileSource.SignalToStop">
  29. <summary>
  30. Signal video source to stop its work.
  31. </summary>
  32. <remarks>Signals video source to stop its background thread, stop to
  33. provide new frames and free resources.</remarks>
  34. </member>
  35. <member name="M:AForge.Video.FFMPEG.VideoFileSource.Start">
  36. <summary>
  37. Start video source.
  38. </summary>
  39. <remarks>Starts video source and return execution to caller. Video source
  40. object creates background thread and notifies about new frames with the
  41. help of <see cref="E:AForge.Video.FFMPEG.VideoFileSource.NewFrame" /> event.</remarks>
  42. <exception cref="T:System.ArgumentException">Video source is not specified.</exception>
  43. </member>
  44. <member name="M:AForge.Video.FFMPEG.VideoFileSource.#ctor(System.String)">
  45. <summary>
  46. Initializes a new instance of the <see cref="T:AForge.Video.FFMPEG.VideoFileSource" /> class.
  47. </summary>
  48. </member>
  49. <member name="P:AForge.Video.FFMPEG.VideoFileSource.FrameIntervalFromSource">
  50. <summary>
  51. Get frame interval from source or use manually specified.
  52. </summary>
  53. <remarks>
  54. <para>The property specifies which frame rate to use for video playing.
  55. If the property is set to <see langword="true" />, then video is played
  56. with original frame rate, which is set in source video file. If the property is
  57. set to <see langword="false" />, then custom frame rate is used, which is
  58. calculated based on the manually specified <see cref="P:AForge.Video.FFMPEG.VideoFileSource.FrameInterval">frame interval</see>.</para>
  59. <para>Default value is set to <see langword="true" />.</para>
  60. </remarks>
  61. </member>
  62. <member name="P:AForge.Video.FFMPEG.VideoFileSource.FrameInterval">
  63. <summary>
  64. Frame interval.
  65. </summary>
  66. <remarks>
  67. <para>The property sets the interval in milliseconds between frames. If the property is
  68. set to 100, then the desired frame rate will be 10 frames per second.</para>
  69. <para>
  70. <note>Setting this property to 0 leads to no delay between video frames - frames
  71. are read as fast as possible.</note>
  72. </para>
  73. <para>
  74. <note>Setting this property has effect only when <see cref="P:AForge.Video.FFMPEG.VideoFileSource.FrameIntervalFromSource" />
  75. is set to <see langword="false" />.</note>
  76. </para>
  77. <para>Default value is set to <b>0</b>.</para>
  78. </remarks>
  79. </member>
  80. <member name="P:AForge.Video.FFMPEG.VideoFileSource.IsRunning">
  81. <summary>
  82. State of the video source.
  83. </summary>
  84. <remarks>Current state of video source object - running or not.</remarks>
  85. </member>
  86. <member name="P:AForge.Video.FFMPEG.VideoFileSource.BytesReceived">
  87. <summary>
  88. Received bytes count.
  89. </summary>
  90. <remarks>Number of bytes the video source provided from the moment of the last
  91. access to the property.
  92. </remarks>
  93. </member>
  94. <member name="P:AForge.Video.FFMPEG.VideoFileSource.FramesReceived">
  95. <summary>
  96. Received frames count.
  97. </summary>
  98. <remarks>Number of frames the video source provided from the moment of the last
  99. access to the property.
  100. </remarks>
  101. </member>
  102. <member name="P:AForge.Video.FFMPEG.VideoFileSource.Source">
  103. <summary>
  104. Video source.
  105. </summary>
  106. <remarks>
  107. <para>Video file name to play.</para>
  108. </remarks>
  109. </member>
  110. <member name="E:AForge.Video.FFMPEG.VideoFileSource.PlayingFinished">
  111. <summary>
  112. Video playing finished event.
  113. </summary>
  114. <remarks>
  115. <para>This event is used to notify clients that the video playing has finished.</para>
  116. </remarks>
  117. </member>
  118. <member name="E:AForge.Video.FFMPEG.VideoFileSource.VideoSourceError">
  119. <summary>
  120. Video source error event.
  121. </summary>
  122. <remarks>This event is used to notify clients about any type of errors occurred in
  123. video source object, for example internal exceptions.</remarks>
  124. </member>
  125. <member name="E:AForge.Video.FFMPEG.VideoFileSource.NewFrame">
  126. <summary>
  127. New frame event.
  128. </summary>
  129. <remarks>
  130. <para>Notifies clients about new available frame from video source.</para>
  131. <para>
  132. <note>Since video source may have multiple clients, each client is responsible for
  133. making a copy (cloning) of the passed video frame, because the video source disposes its
  134. own original copy after notifying of clients.</note>
  135. </para>
  136. </remarks>
  137. </member>
  138. <member name="T:AForge.Video.FFMPEG.VideoFileSource">
  139. <summary>
  140. Video source for video files.
  141. </summary>
  142. <remarks>
  143. <para>The video source provides access to video files using <a href="http://www.ffmpeg.org/">FFmpeg</a> library.</para>
  144. <para>
  145. <note>The class provides video only. Sound is not supported.</note>
  146. </para>
  147. <para>
  148. <note>The class ignores presentation time of video frames while retrieving them from
  149. video file. Instead it provides video frames according to the FPS rate of the video file
  150. or the configured <see cref="P:AForge.Video.FFMPEG.VideoFileSource.FrameInterval" />.</note>
  151. </para>
  152. <para>
  153. <note>Make sure you have <b>FFmpeg</b> binaries (DLLs) in the output folder of your application in order
  154. to use this class successfully. <b>FFmpeg</b> binaries can be found in Externals folder provided with AForge.NET
  155. framework's distribution.</note>
  156. </para>
  157. <para>Sample usage:</para>
  158. <code>
  159. // create video source
  160. VideoFileSource videoSource = new VideoFileSource( fileName );
  161. // set NewFrame event handler
  162. videoSource.NewFrame += new NewFrameEventHandler( video_NewFrame );
  163. // start the video source
  164. videoSource.Start( );
  165. // ...
  166. // New frame event handler, which is invoked on each new available video frame
  167. private void video_NewFrame( object sender, NewFrameEventArgs eventArgs )
  168. {
  169. // get new frame
  170. Bitmap bitmap = eventArgs.Frame;
  171. // process the frame
  172. }
  173. </code>
  174. </remarks>
  175. </member>
  176. <member name="M:AForge.Video.FFMPEG.VideoFileReader.Close">
  177. <summary>
  178. Close currently opened video file if any.
  179. </summary>
  180. </member>
  181. <member name="M:AForge.Video.FFMPEG.VideoFileReader.ReadVideoFrame">
  182. <summary>
  183. Read next video frame of the currently opened video file.
  184. </summary>
  185. <returns>Returns next video frame of the opened file or <see langword="null" /> if end of
  186. file was reached. The returned video frame has 24 bpp color format.</returns>
  187. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  188. <exception cref="T:AForge.Video.VideoException">A error occurred while reading next video frame. See exception message.</exception>
  189. </member>
  190. <member name="M:AForge.Video.FFMPEG.VideoFileReader.Open(System.String)">
  191. <summary>
  192. Open video file with the specified name.
  193. </summary>
  194. <param name="fileName">Video file name to open.</param>
  195. <exception cref="T:System.IO.IOException">Cannot open video file with the specified name.</exception>
  196. <exception cref="T:AForge.Video.VideoException">A error occurred while opening the video file. See exception message.</exception>
  197. </member>
  198. <member name="M:AForge.Video.FFMPEG.VideoFileReader.Dispose">
  199. <summary>
  200. Disposes the object and frees its resources.
  201. </summary>
  202. </member>
  203. <member name="M:AForge.Video.FFMPEG.VideoFileReader.#ctor">
  204. <summary>
  205. Initializes a new instance of the <see cref="T:AForge.Video.FFMPEG.VideoFileReader" /> class.
  206. </summary>
  207. </member>
  208. <member name="M:AForge.Video.FFMPEG.VideoFileReader.Finalize">
  209. <summary>
  210. Object's finalizer.
  211. </summary>
  212. </member>
  213. <member name="P:AForge.Video.FFMPEG.VideoFileReader.IsOpen">
  214. <summary>
  215. The property specifies if a video file is opened or not by this instance of the class.
  216. </summary>
  217. </member>
  218. <member name="P:AForge.Video.FFMPEG.VideoFileReader.CodecName">
  219. <summary>
  220. Name of codec used for encoding the opened video file.
  221. </summary>
  222. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  223. </member>
  224. <member name="P:AForge.Video.FFMPEG.VideoFileReader.FrameCount">
  225. <summary>
  226. Number of video frames in the opened video file.
  227. </summary>
  228. <remarks>
  229. <para>
  230. <note>
  231. <b>Warning</b>: some video file formats may report different value
  232. from the actual number of video frames in the file (subject to fix/investigate).</note>
  233. </para>
  234. </remarks>
  235. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  236. </member>
  237. <member name="P:AForge.Video.FFMPEG.VideoFileReader.FrameRate">
  238. <summary>
  239. Frame rate of the opened video file.
  240. </summary>
  241. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  242. </member>
  243. <member name="P:AForge.Video.FFMPEG.VideoFileReader.Height">
  244. <summary>
  245. Frame height of the opened video file.
  246. </summary>
  247. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  248. </member>
  249. <member name="P:AForge.Video.FFMPEG.VideoFileReader.Width">
  250. <summary>
  251. Frame width of the opened video file.
  252. </summary>
  253. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  254. </member>
  255. <member name="T:AForge.Video.FFMPEG.VideoFileReader">
  256. <summary>
  257. Class for reading video files utilizing FFmpeg library.
  258. </summary>
  259. <remarks>
  260. <para>The class allows to read video files using <a href="http://www.ffmpeg.org/">FFmpeg</a> library.</para>
  261. <para>
  262. <note>Make sure you have <b>FFmpeg</b> binaries (DLLs) in the output folder of your application in order
  263. to use this class successfully. <b>FFmpeg</b> binaries can be found in Externals folder provided with AForge.NET
  264. framework's distribution.</note>
  265. </para>
  266. <para>Sample usage:</para>
  267. <code>
  268. // create instance of video reader
  269. VideoFileReader reader = new VideoFileReader( );
  270. // open video file
  271. reader.Open( "test.avi" );
  272. // check some of its attributes
  273. Console.WriteLine( "width: " + reader.Width );
  274. Console.WriteLine( "height: " + reader.Height );
  275. Console.WriteLine( "fps: " + reader.FrameRate );
  276. Console.WriteLine( "codec: " + reader.CodecName );
  277. // read 100 video frames out of it
  278. for ( int i = 0; i &lt; 100; i++ )
  279. {
  280. Bitmap videoFrame = reader.ReadVideoFrame( );
  281. // process the frame somehow
  282. // ...
  283. // dispose the frame when it is no longer required
  284. videoFrame.Dispose( );
  285. }
  286. reader.Close( );
  287. </code>
  288. </remarks>
  289. </member>
  290. <member name="M:libffmpeg.sws_get_class">
  291. Get the AVClass for swsContext. It can be used in combination with
  292. AV_OPT_SEARCH_FAKE_OBJ for examining options.
  293. @see av_opt_find().
  294. </member>
  295. <member name="M:libffmpeg.sws_convertPalette8ToPacked24(System.Byte!System.Runtime.CompilerServices.IsConst*,System.Byte*,System.Int32,System.Byte!System.Runtime.CompilerServices.IsConst*)">
  296. Convert an 8-bit paletted frame into a frame with a color depth of 24 bits.
  297. With the palette format "ABCD", the destination frame ends up with the format "ABC".
  298. @param src source frame buffer
  299. @param dst destination frame buffer
  300. @param num_pixels number of pixels to convert
  301. @param palette array with [256] entries, which must match color arrangement (RGB or BGR) of src
  302. </member>
  303. <member name="M:libffmpeg.sws_convertPalette8ToPacked32(System.Byte!System.Runtime.CompilerServices.IsConst*,System.Byte*,System.Int32,System.Byte!System.Runtime.CompilerServices.IsConst*)">
  304. Convert an 8-bit paletted frame into a frame with a color depth of 32 bits.
  305. The output frame will have the same packed format as the palette.
  306. @param src source frame buffer
  307. @param dst destination frame buffer
  308. @param num_pixels number of pixels to convert
  309. @param palette array with [256] entries, which must match color arrangement (RGB or BGR) of src
  310. </member>
  311. <member name="M:libffmpeg.sws_cloneVec(libffmpeg.SwsVector*)">
  312. Allocate and return a clone of the vector a, that is a vector
  313. with the same coefficients as a.
  314. </member>
  315. <member name="M:libffmpeg.sws_normalizeVec(libffmpeg.SwsVector*,System.Double)">
  316. Scale all the coefficients of a so that their sum equals height.
  317. </member>
  318. <member name="M:libffmpeg.sws_scaleVec(libffmpeg.SwsVector*,System.Double)">
  319. Scale all the coefficients of a by the scalar value.
  320. </member>
  321. <member name="M:libffmpeg.sws_getIdentityVec">
  322. Allocate and return a vector with just one coefficient, with
  323. value 1.0.
  324. </member>
  325. <member name="M:libffmpeg.sws_getConstVec(System.Double,System.Int32)">
  326. Allocate and return a vector with length coefficients, all
  327. with the same value c.
  328. </member>
  329. <member name="M:libffmpeg.sws_getGaussianVec(System.Double,System.Double)">
  330. Return a normalized Gaussian curve used to filter stuff
  331. quality = 3 is high quality, lower is lower quality.
  332. </member>
  333. <member name="M:libffmpeg.sws_allocVec(System.Int32)">
  334. Allocate and return an uninitialized vector with length coefficients.
  335. </member>
  336. <member name="M:libffmpeg.sws_getColorspaceDetails(libffmpeg.SwsContext*,System.Int32**,System.Int32*,System.Int32**,System.Int32*,System.Int32*,System.Int32*,System.Int32*)">
  337. @return -1 if not supported
  338. </member>
  339. <member name="M:libffmpeg.sws_setColorspaceDetails(libffmpeg.SwsContext*,System.Int32!System.Runtime.CompilerServices.IsConst*,System.Int32,System.Int32!System.Runtime.CompilerServices.IsConst*,System.Int32,System.Int32,System.Int32,System.Int32)">
  340. @param inv_table the yuv2rgb coefficients, normally ff_yuv2rgb_coeffs[x]
  341. @return -1 if not supported
  342. </member>
  343. <member name="M:libffmpeg.sws_scale(libffmpeg.SwsContext*,System.Byte!System.Runtime.CompilerServices.IsConst*!System.Runtime.CompilerServices.IsConst*,System.Int32!System.Runtime.CompilerServices.IsConst*,System.Int32,System.Int32,System.Byte*!System.Runtime.CompilerServices.IsConst*,System.Int32!System.Runtime.CompilerServices.IsConst*)">
  344. Scale the image slice in srcSlice and put the resulting scaled
  345. slice in the image in dst. A slice is a sequence of consecutive
  346. rows in an image.
  347. Slices have to be provided in sequential order, either in
  348. top-bottom or bottom-top order. If slices are provided in
  349. non-sequential order the behavior of the function is undefined.
  350. @param c the scaling context previously created with
  351. sws_getContext()
  352. @param srcSlice the array containing the pointers to the planes of
  353. the source slice
  354. @param srcStride the array containing the strides for each plane of
  355. the source image
  356. @param srcSliceY the position in the source image of the slice to
  357. process, that is the number (counted starting from
  358. zero) in the image of the first row of the slice
  359. @param srcSliceH the height of the source slice, that is the number
  360. of rows in the slice
  361. @param dst the array containing the pointers to the planes of
  362. the destination image
  363. @param dstStride the array containing the strides for each plane of
  364. the destination image
  365. @return the height of the output slice
  366. </member>
  367. <member name="M:libffmpeg.sws_freeContext(libffmpeg.SwsContext*)">
  368. Free the swscaler context swsContext.
  369. If swsContext is NULL, then does nothing.
  370. </member>
  371. <member name="M:libffmpeg.sws_init_context(libffmpeg.SwsContext*,libffmpeg.SwsFilter*,libffmpeg.SwsFilter*)">
  372. Initialize the swscaler context sws_context.
  373. @return zero or positive value on success, a negative value on
  374. error
  375. </member>
  376. <member name="T:libffmpeg.SwsContext">
  377. Allocate an empty SwsContext. This must be filled and passed to
  378. sws_init_context(). For filling see AVOptions, options.c and
  379. sws_setColorspaceDetails().
  380. Allocate and return an SwsContext. You need it to perform
  381. scaling/conversion operations using sws_scale().
  382. @param srcW the width of the source image
  383. @param srcH the height of the source image
  384. @param srcFormat the source image format
  385. @param dstW the width of the destination image
  386. @param dstH the height of the destination image
  387. @param dstFormat the destination image format
  388. @param flags specify which algorithm and options to use for rescaling
  389. @return a pointer to an allocated context, or NULL in case of error
  390. @note this function is to be removed after a saner alternative is
  391. written
  392. @deprecated Use sws_getCachedContext() instead.
  393. Check if context can be reused, otherwise reallocate a new one.
  394. If context is NULL, just calls sws_getContext() to get a new
  395. context. Otherwise, checks if the parameters are the ones already
  396. saved in context. If that is the case, returns the current
  397. context. Otherwise, frees context and gets a new context with
  398. the new parameters.
  399. Be warned that srcFilter and dstFilter are not checked, they
  400. are assumed to remain the same.
  401. </member>
  402. <member name="M:libffmpeg.sws_isSupportedOutput(libffmpeg.PixelFormat)">
  403. Return a positive value if pix_fmt is a supported output format, 0
  404. otherwise.
  405. </member>
  406. <member name="M:libffmpeg.sws_isSupportedInput(libffmpeg.PixelFormat)">
  407. Return a positive value if pix_fmt is a supported input format, 0
  408. otherwise.
  409. </member>
  410. <member name="M:libffmpeg.swscale_license">
  411. Return the libswscale license.
  412. </member>
  413. <member name="M:libffmpeg.swscale_configuration">
  414. Return the libswscale build-time configuration.
  415. </member>
  416. <member name="M:libffmpeg.swscale_version">
  417. @}
  418. @file
  419. @brief
  420. external api for the swscale stuff
  421. Those FF_API_* defines are not part of public API.
  422. They may change, break or disappear at any time.
  423. Return the LIBSWSCALE_VERSION_INT constant.
  424. </member>
  425. <member name="M:libffmpeg.avformat_query_codec(libffmpeg.AVOutputFormat*,libffmpeg.CodecID,System.Int32)">
  426. Test if the given container can store a codec.
  427. @param std_compliance standards compliance level, one of FF_COMPLIANCE_*
  428. @return 1 if codec with ID codec_id can be stored in ofmt, 0 if it cannot.
  429. A negative number if this information is not available.
  430. </member>
  431. <member name="M:libffmpeg.av_match_ext(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  432. Return a positive value if the given filename has one of the given
  433. extensions, 0 otherwise.
  434. @param extensions a comma-separated list of filename extensions
  435. </member>
  436. <member name="M:libffmpeg.av_sdp_create(libffmpeg.AVFormatContext**,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32)">
  437. Generate an SDP for an RTP session.
  438. @param ac array of AVFormatContexts describing the RTP streams. If the
  439. array is composed by only one context, such context can contain
  440. multiple AVStreams (one AVStream per RTP stream). Otherwise,
  441. all the contexts in the array (an AVCodecContext per RTP stream)
  442. must contain only one AVStream.
  443. @param n_files number of AVCodecContexts contained in ac
  444. @param buf buffer where the SDP will be stored (must be allocated by
  445. the caller)
  446. @param size the size of the buffer
  447. @return 0 if OK, AVERROR_xxx on error
  448. </member>
  449. <member name="M:libffmpeg.av_filename_number_test(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  450. Check whether filename actually is a numbered sequence generator.
  451. @param filename possible numbered sequence string
  452. @return 1 if a valid numbered sequence string, 0 otherwise
  453. </member>
  454. <member name="M:libffmpeg.av_get_frame_filename(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  455. Return in 'buf' the path with '%d' replaced by a number.
  456. Also handles the '%0nd' format where 'n' is the total number
  457. of digits and '%%'.
  458. @param buf destination buffer
  459. @param buf_size destination buffer size
  460. @param path numbered sequence string
  461. @param number frame number
  462. @return 0 if OK, -1 on format error
  463. </member>
  464. <member name="M:libffmpeg.find_info_tag(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  465. @deprecated use av_find_info_tag in libavutil instead.
  466. </member>
  467. <member name="M:libffmpeg.av_gettime">
  468. Get the current time in microseconds.
  469. </member>
  470. <member name="M:libffmpeg.parse_date(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  471. Parse datestr and return a corresponding number of microseconds.
  472. @param datestr String representing a date or a duration.
  473. See av_parse_time() for the syntax of the provided string.
  474. @deprecated in favor of av_parse_time()
  475. </member>
  476. <member name="M:libffmpeg.dump_format(libffmpeg.AVFormatContext*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  477. @deprecated Deprecated in favor of av_dump_format().
  478. </member>
  479. <member name="M:libffmpeg.av_url_split(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.Int32*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  480. Split a URL string into components.
  481. The pointers to buffers for storing individual components may be null,
  482. in order to ignore that component. Buffers for components not found are
  483. set to empty strings. If the port is not found, it is set to a negative
  484. value.
  485. @param proto the buffer for the protocol
  486. @param proto_size the size of the proto buffer
  487. @param authorization the buffer for the authorization
  488. @param authorization_size the size of the authorization buffer
  489. @param hostname the buffer for the host name
  490. @param hostname_size the size of the hostname buffer
  491. @param port_ptr a pointer to store the port number in
  492. @param path the buffer for the path
  493. @param path_size the size of the path buffer
  494. @param url the URL to split
  495. </member>
  496. <member name="M:libffmpeg.av_add_index_entry(libffmpeg.AVStream*,System.Int64,System.Int64,System.Int32,System.Int32,System.Int32)">
  497. Add an index entry into a sorted list. Update the entry if the list
  498. already contains it.
  499. @param timestamp timestamp in the time base of the given stream
  500. </member>
  501. <member name="M:libffmpeg.av_codec_get_tag(libffmpeg.AVCodecTag!System.Runtime.CompilerServices.IsConst*!System.Runtime.CompilerServices.IsConst*,libffmpeg.CodecID)">
  502. Get the codec tag for the given codec id id.
  503. If no codec tag is found returns 0.
  504. @param tags list of supported codec_id-codec_tag pairs, as stored
  505. in AVInputFormat.codec_tag and AVOutputFormat.codec_tag
  506. </member>
  507. <member name="M:libffmpeg.av_pkt_dump_log2(System.Void*,System.Int32,libffmpeg.AVPacket*,System.Int32,libffmpeg.AVStream*)">
  508. Send a nice dump of a packet to the log.
  509. @param avcl A pointer to an arbitrary struct of which the first field is a
  510. pointer to an AVClass struct.
  511. @param level The importance level of the message, lower values signifying
  512. higher importance.
  513. @param pkt packet to dump
  514. @param dump_payload True if the payload must be displayed, too.
  515. @param st AVStream that the packet belongs to
  516. </member>
  517. <member name="M:libffmpeg.av_pkt_dump2(libffmpeg._iobuf*,libffmpeg.AVPacket*,System.Int32,libffmpeg.AVStream*)">
  518. Send a nice dump of a packet to the specified file stream.
  519. @param f The file stream pointer where the dump should be sent to.
  520. @param pkt packet to dump
  521. @param dump_payload True if the payload must be displayed, too.
  522. @param st AVStream that the packet belongs to
  523. </member>
  524. <member name="M:libffmpeg.av_hex_dump_log(System.Void*,System.Int32,System.Byte*,System.Int32)">
  525. Send a nice hexadecimal dump of a buffer to the log.
  526. @param avcl A pointer to an arbitrary struct of which the first field is a
  527. pointer to an AVClass struct.
  528. @param level The importance level of the message, lower values signifying
  529. higher importance.
  530. @param buf buffer
  531. @param size buffer size
  532. @see av_hex_dump, av_pkt_dump2, av_pkt_dump_log2
  533. </member>
  534. <member name="M:libffmpeg.av_hex_dump(libffmpeg._iobuf*,System.Byte*,System.Int32)">
  535. @}
  536. @defgroup lavf_misc Utility functions
  537. @ingroup libavf
  538. @{
  539. Miscelaneous utility functions related to both muxing and demuxing
  540. (or neither).
  541. Send a nice hexadecimal dump of a buffer to the specified file stream.
  542. @param f The file stream pointer where the dump should be sent to.
  543. @param buf buffer
  544. @param size buffer size
  545. @see av_hex_dump_log, av_pkt_dump2, av_pkt_dump_log2
  546. </member>
  547. <member name="M:libffmpeg.av_get_output_timestamp(libffmpeg.AVFormatContext*,System.Int32,System.Int64*,System.Int64*)">
  548. Get timing information for the data currently output.
  549. The exact meaning of "currently output" depends on the format.
  550. It is mostly relevant for devices that have an internal buffer and/or
  551. work in real time.
  552. @param s media file handle
  553. @param stream stream in the media file
  554. @param dts[out] DTS of the last packet output for the stream, in stream
  555. time_base units
  556. @param wall[out] absolute time when that packet whas output,
  557. in microsecond
  558. @return 0 if OK, AVERROR(ENOSYS) if the format does not support it
  559. Note: some formats or devices may not allow to measure dts and wall
  560. atomically.
  561. </member>
  562. <member name="M:libffmpeg.av_guess_format(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  563. Return the output format in the list of registered output formats
  564. which best matches the provided parameters, or return NULL if
  565. there is no match.
  566. @param short_name if non-NULL checks if short_name matches with the
  567. names of the registered formats
  568. @param filename if non-NULL checks if filename terminates with the
  569. extensions of the registered formats
  570. @param mime_type if non-NULL checks if mime_type matches with the
  571. MIME type of the registered formats
  572. </member>
  573. <member name="M:libffmpeg.av_write_trailer(libffmpeg.AVFormatContext*)">
  574. Write the stream trailer to an output media file and free the
  575. file private data.
  576. May only be called after a successful call to av_write_header.
  577. @param s media file handle
  578. @return 0 if OK, AVERROR_xxx on error
  579. </member>
  580. <member name="M:libffmpeg.av_interleaved_write_frame(libffmpeg.AVFormatContext*,libffmpeg.AVPacket*)">
  581. Write a packet to an output media file ensuring correct interleaving.
  582. The packet must contain one audio or video frame.
  583. If the packets are already correctly interleaved, the application should
  584. call av_write_frame() instead as it is slightly faster. It is also important
  585. to keep in mind that completely non-interleaved input will need huge amounts
  586. of memory to interleave with this, so it is preferable to interleave at the
  587. demuxer level.
  588. @param s media file handle
  589. @param pkt The packet containing the data to be written. Libavformat takes
  590. ownership of the data and will free it when it sees fit using the packet's
  591. @ref AVPacket.destruct "destruct" field. The caller must not access the data
  592. after this function returns, as it may already be freed.
  593. Packet's @ref AVPacket.stream_index "stream_index" field must be set to the
  594. index of the corresponding stream in @ref AVFormatContext.streams
  595. "s.streams".
  596. It is very strongly recommended that timing information (@ref AVPacket.pts
  597. "pts", @ref AVPacket.dts "dts" @ref AVPacket.duration "duration") is set to
  598. correct values.
  599. @return 0 on success, a negative AVERROR on error.
  600. </member>
  601. <member name="M:libffmpeg.av_write_header(libffmpeg.AVFormatContext*)">
  602. Allocate the stream private data and write the stream header to an
  603. output media file.
  604. @note: this sets stream time-bases, if possible to stream-&gt;codec-&gt;time_base
  605. but for some formats it might also be some other time base
  606. @param s media file handle
  607. @return 0 if OK, AVERROR_xxx on error
  608. @deprecated use avformat_write_header.
  609. </member>
  610. <member name="M:libffmpeg.avformat_write_header(libffmpeg.AVFormatContext*,libffmpeg.AVDictionary**)">
  611. @addtogroup lavf_encoding
  612. @{
  613. Allocate the stream private data and write the stream header to
  614. an output media file.
  615. @param s Media file handle, must be allocated with avformat_alloc_context().
  616. Its oformat field must be set to the desired output format;
  617. Its pb field must be set to an already openened AVIOContext.
  618. @param options An AVDictionary filled with AVFormatContext and muxer-private options.
  619. On return this parameter will be destroyed and replaced with a dict containing
  620. options that were not found. May be NULL.
  621. @return 0 on success, negative AVERROR on failure.
  622. @see av_opt_find, av_dict_set, avio_open, av_oformat_next.
  623. </member>
  624. <member name="M:libffmpeg.av_set_parameters(libffmpeg.AVFormatContext*,libffmpeg.AVFormatParameters*)">
  625. @deprecated pass the options to avformat_write_header directly.
  626. </member>
  627. <member name="M:libffmpeg.av_set_pts_info(libffmpeg.AVStream*,System.Int32,System.UInt32,System.UInt32)">
  628. @deprecated this function is not supposed to be called outside of lavf
  629. </member>
  630. <member name="M:libffmpeg.av_new_stream(libffmpeg.AVFormatContext*,System.Int32)">
  631. @}
  632. Add a new stream to a media file.
  633. Can only be called in the read_header() function. If the flag
  634. AVFMTCTX_NOHEADER is in the format context, then new streams
  635. can be added in read_packet too.
  636. @param s media file handle
  637. @param id file-format-dependent stream ID
  638. </member>
  639. <member name="M:libffmpeg.avformat_close_input(libffmpeg.AVFormatContext**)">
  640. Close an opened input AVFormatContext. Free it and all its contents
  641. and set *s to NULL.
  642. </member>
  643. <member name="M:libffmpeg.av_close_input_file(libffmpeg.AVFormatContext*)">
  644. @deprecated use avformat_close_input()
  645. Close a media file (but not its codecs).
  646. @param s media file handle
  647. </member>
  648. <member name="M:libffmpeg.av_close_input_stream(libffmpeg.AVFormatContext*)">
  649. Free a AVFormatContext allocated by av_open_input_stream.
  650. @param s context to free
  651. @deprecated use av_close_input_file()
  652. </member>
  653. <member name="M:libffmpeg.av_read_pause(libffmpeg.AVFormatContext*)">
  654. Pause a network-based stream (e.g. RTSP stream).
  655. Use av_read_play() to resume it.
  656. </member>
  657. <member name="M:libffmpeg.av_read_play(libffmpeg.AVFormatContext*)">
  658. Start playing a network-based stream (e.g. RTSP stream) at the
  659. current position.
  660. </member>
  661. <member name="M:libffmpeg.av_seek_frame(libffmpeg.AVFormatContext*,System.Int32,System.Int64,System.Int32)">
  662. Seek to the keyframe at timestamp.
  663. 'timestamp' in 'stream_index'.
  664. @param stream_index If stream_index is (-1), a default
  665. stream is selected, and timestamp is automatically converted
  666. from AV_TIME_BASE units to the stream specific time_base.
  667. @param timestamp Timestamp in AVStream.time_base units
  668. or, if no stream is specified, in AV_TIME_BASE units.
  669. @param flags flags which select direction and seeking mode
  670. @return &gt;= 0 on success
  671. </member>
  672. <member name="M:libffmpeg.av_read_packet(libffmpeg.AVFormatContext*,libffmpeg.AVPacket*)">
  673. Read a transport packet from a media file.
  674. This function is obsolete and should never be used.
  675. Use av_read_frame() instead.
  676. @param s media file handle
  677. @param pkt is filled
  678. @return 0 if OK, AVERROR_xxx on error
  679. </member>
  680. <member name="M:libffmpeg.av_find_best_stream(libffmpeg.AVFormatContext*,libffmpeg.AVMediaType,System.Int32,System.Int32,libffmpeg.AVCodec**,System.Int32)">
  681. Find the "best" stream in the file.
  682. The best stream is determined according to various heuristics as the most
  683. likely to be what the user expects.
  684. If the decoder parameter is non-NULL, av_find_best_stream will find the
  685. default decoder for the stream's codec; streams for which no decoder can
  686. be found are ignored.
  687. @param ic media file handle
  688. @param type stream type: video, audio, subtitles, etc.
  689. @param wanted_stream_nb user-requested stream number,
  690. or -1 for automatic selection
  691. @param related_stream try to find a stream related (eg. in the same
  692. program) to this one, or -1 if none
  693. @param decoder_ret if non-NULL, returns the decoder for the
  694. selected stream
  695. @param flags flags; none are currently defined
  696. @return the non-negative stream number in case of success,
  697. AVERROR_STREAM_NOT_FOUND if no stream with the requested type
  698. could be found,
  699. AVERROR_DECODER_NOT_FOUND if streams were found but no decoder
  700. @note If av_find_best_stream returns successfully and decoder_ret is not
  701. NULL, then *decoder_ret is guaranteed to be set to a valid AVCodec.
  702. </member>
  703. <member name="M:libffmpeg.av_find_program_from_stream(libffmpeg.AVFormatContext*,libffmpeg.AVProgram*,System.Int32)">
  704. Find the programs which belong to a given stream.
  705. @param ic media file handle
  706. @param last the last found program, the search will start after this
  707. program, or from the beginning if it is NULL
  708. @param s stream index
  709. @return the next program which belongs to s, NULL if no program is found or
  710. the last program is not among the programs of ic.
  711. </member>
  712. <member name="M:libffmpeg.avformat_find_stream_info(libffmpeg.AVFormatContext*,libffmpeg.AVDictionary**)">
  713. Read packets of a media file to get stream information. This
  714. is useful for file formats with no headers such as MPEG. This
  715. function also computes the real framerate in case of MPEG-2 repeat
  716. frame mode.
  717. The logical file position is not changed by this function;
  718. examined packets may be buffered for later processing.
  719. @param ic media file handle
  720. @param options If non-NULL, an ic.nb_streams long array of pointers to
  721. dictionaries, where i-th member contains options for
  722. codec corresponding to i-th stream.
  723. On return each dictionary will be filled with options that were not found.
  724. @return &gt;=0 if OK, AVERROR_xxx on error
  725. @note this function isn't guaranteed to open all the codecs, so
  726. options being non-empty at return is a perfectly normal behavior.
  727. @todo Let the user decide somehow what information is needed so that
  728. we do not waste time getting stuff the user does not need.
  729. </member>
  730. <member name="M:libffmpeg.av_find_stream_info(libffmpeg.AVFormatContext*)">
  731. Read packets of a media file to get stream information. This
  732. is useful for file formats with no headers such as MPEG. This
  733. function also computes the real framerate in case of MPEG-2 repeat
  734. frame mode.
  735. The logical file position is not changed by this function;
  736. examined packets may be buffered for later processing.
  737. @param ic media file handle
  738. @return &gt;=0 if OK, AVERROR_xxx on error
  739. @todo Let the user decide somehow what information is needed so that
  740. we do not waste time getting stuff the user does not need.
  741. @deprecated use avformat_find_stream_info.
  742. </member>
  743. <member name="M:libffmpeg.avformat_open_input(libffmpeg.AVFormatContext**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,libffmpeg.AVInputFormat*,libffmpeg.AVDictionary**)">
  744. Open an input stream and read the header. The codecs are not opened.
  745. The stream must be closed with av_close_input_file().
  746. @param ps Pointer to user-supplied AVFormatContext (allocated by avformat_alloc_context).
  747. May be a pointer to NULL, in which case an AVFormatContext is allocated by this
  748. function and written into ps.
  749. Note that a user-supplied AVFormatContext will be freed on failure.
  750. @param filename Name of the stream to open.
  751. @param fmt If non-NULL, this parameter forces a specific input format.
  752. Otherwise the format is autodetected.
  753. @param options A dictionary filled with AVFormatContext and demuxer-private options.
  754. On return this parameter will be destroyed and replaced with a dict containing
  755. options that were not found. May be NULL.
  756. @return 0 on success, a negative AVERROR on failure.
  757. @note If you want to use custom IO, preallocate the format context and set its pb field.
  758. </member>
  759. <member name="M:libffmpeg.av_open_input_file(libffmpeg.AVFormatContext**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,libffmpeg.AVInputFormat*,System.Int32,libffmpeg.AVFormatParameters*)">
  760. Open a media file as input. The codecs are not opened. Only the file
  761. header (if present) is read.
  762. @param ic_ptr The opened media file handle is put here.
  763. @param filename filename to open
  764. @param fmt If non-NULL, force the file format to use.
  765. @param buf_size optional buffer size (zero if default is OK)
  766. @param ap Additional parameters needed when opening the file
  767. (NULL if default).
  768. @return 0 if OK, AVERROR_xxx otherwise
  769. @deprecated use avformat_open_input instead.
  770. </member>
  771. <member name="M:libffmpeg.av_open_input_stream(libffmpeg.AVFormatContext**,libffmpeg.AVIOContext*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,libffmpeg.AVInputFormat*,libffmpeg.AVFormatParameters*)">
  772. Allocate all the structures needed to read an input stream.
  773. This does not open the needed codecs for decoding the stream[s].
  774. @deprecated use avformat_open_input instead.
  775. </member>
  776. <member name="M:libffmpeg.av_probe_input_buffer(libffmpeg.AVIOContext*,libffmpeg.AVInputFormat**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Void*,System.UInt32,System.UInt32)">
  777. Probe a bytestream to determine the input format. Each time a probe returns
  778. with a score that is too low, the probe buffer size is increased and another
  779. attempt is made. When the maximum probe size is reached, the input format
  780. with the highest score is returned.
  781. @param pb the bytestream to probe
  782. @param fmt the input format is put here
  783. @param filename the filename of the stream
  784. @param logctx the log context
  785. @param offset the offset within the bytestream to probe from
  786. @param max_probe_size the maximum probe buffer size (zero for default)
  787. @return 0 in case of success, a negative value corresponding to an
  788. AVERROR code otherwise
  789. </member>
  790. <member name="M:libffmpeg.av_probe_input_format3(libffmpeg.AVProbeData*,System.Int32,System.Int32*)">
  791. Guess the file format.
  792. @param is_opened Whether the file is already opened; determines whether
  793. demuxers with or without AVFMT_NOFILE are probed.
  794. @param score_ret The score of the best detection.
  795. </member>
  796. <member name="M:libffmpeg.av_probe_input_format(libffmpeg.AVProbeData*,System.Int32)">
  797. Guess the file format.
  798. @param is_opened Whether the file is already opened; determines whether
  799. demuxers with or without AVFMT_NOFILE are probed.
  800. </member>
  801. <member name="M:libffmpeg.av_find_input_format(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  802. @addtogroup lavf_decoding
  803. @{
  804. Find AVInputFormat based on the short name of the input format.
  805. </member>
  806. <member name="M:libffmpeg.avformat_alloc_output_context2(libffmpeg.AVFormatContext**,libffmpeg.AVOutputFormat*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  807. Allocate an AVFormatContext for an output format.
  808. avformat_free_context() can be used to free the context and
  809. everything allocated by the framework within it.
  810. @param *ctx is set to the created format context, or to NULL in
  811. case of failure
  812. @param oformat format to use for allocating the context, if NULL
  813. format_name and filename are used instead
  814. @param format_name the name of output format to use for allocating the
  815. context, if NULL filename is used instead
  816. @param filename the name of the filename to use for allocating the
  817. context, may be NULL
  818. @return &gt;= 0 in case of success, a negative AVERROR code in case of
  819. failure
  820. </member>
  821. <member name="M:libffmpeg.avformat_alloc_output_context(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,libffmpeg.AVOutputFormat*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  822. @deprecated deprecated in favor of avformat_alloc_output_context2()
  823. </member>
  824. <member name="M:libffmpeg.avformat_new_stream(libffmpeg.AVFormatContext*,libffmpeg.AVCodec*)">
  825. Add a new stream to a media file.
  826. When demuxing, it is called by the demuxer in read_header(). If the
  827. flag AVFMTCTX_NOHEADER is set in s.ctx_flags, then it may also
  828. be called in read_packet().
  829. When muxing, should be called by the user before avformat_write_header().
  830. @param c If non-NULL, the AVCodecContext corresponding to the new stream
  831. will be initialized to use this codec. This is needed for e.g. codec-specific
  832. defaults to be set, so codec should be provided if it is known.
  833. @return newly created stream or NULL on error.
  834. </member>
  835. <member name="M:libffmpeg.avformat_get_class">
  836. Get the AVClass for AVFormatContext. It can be used in combination with
  837. AV_OPT_SEARCH_FAKE_OBJ for examining options.
  838. @see av_opt_find().
  839. </member>
  840. <member name="M:libffmpeg.avformat_free_context(libffmpeg.AVFormatContext*)">
  841. Free an AVFormatContext and all its streams.
  842. @param s context to free
  843. </member>
  844. <member name="M:libffmpeg.avformat_alloc_context">
  845. Allocate an AVFormatContext.
  846. avformat_free_context() can be used to free the context and everything
  847. allocated by the framework within it.
  848. </member>
  849. <member name="M:libffmpeg.av_oformat_next(libffmpeg.AVOutputFormat*)">
  850. If f is NULL, returns the first registered output format,
  851. if f is non-NULL, returns the next registered output format after f
  852. or NULL if f is the last one.
  853. </member>
  854. <member name="M:libffmpeg.av_iformat_next(libffmpeg.AVInputFormat*)">
  855. If f is NULL, returns the first registered input format,
  856. if f is non-NULL, returns the next registered input format after f
  857. or NULL if f is the last one.
  858. </member>
  859. <member name="M:libffmpeg.avformat_network_deinit">
  860. Undo the initialization done by avformat_network_init.
  861. </member>
  862. <member name="M:libffmpeg.avformat_network_init">
  863. Do global initialization of network components. This is optional,
  864. but recommended, since it avoids the overhead of implicitly
  865. doing the setup for each session.
  866. Calling this function will become mandatory if using network
  867. protocols at some major version bump.
  868. </member>
  869. <member name="M:libffmpeg.av_register_all">
  870. Initialize libavformat and register all the muxers, demuxers and
  871. protocols. If you do not call this function, then you can select
  872. exactly which formats you want to support.
  873. @see av_register_input_format()
  874. @see av_register_output_format()
  875. @see av_register_protocol()
  876. </member>
  877. <member name="M:libffmpeg.avformat_license">
  878. Return the libavformat license.
  879. </member>
  880. <member name="M:libffmpeg.avformat_configuration">
  881. Return the libavformat build-time configuration.
  882. </member>
  883. <member name="M:libffmpeg.avformat_version">
  884. @defgroup lavf_core Core functions
  885. @ingroup libavf
  886. Functions for querying libavformat capabilities, allocating core structures,
  887. etc.
  888. @{
  889. Return the LIBAVFORMAT_VERSION_INT constant.
  890. </member>
  891. <member name="F:libffmpeg.AVFormatContext.max_chunk_size">
  892. Max chunk size in bytes
  893. Note, not all formats support this and unpredictable things may happen if it is used when not supported.
  894. - encoding: Set by user via AVOptions (NO direct access)
  895. - decoding: unused
  896. </member>
  897. <member name="F:libffmpeg.AVFormatContext.max_chunk_duration">
  898. Max chunk time in microseconds.
  899. Note, not all formats support this and unpredictable things may happen if it is used when not supported.
  900. - encoding: Set by user via AVOptions (NO direct access)
  901. - decoding: unused
  902. </member>
  903. <member name="F:libffmpeg.AVFormatContext.audio_preload">
  904. Audio preload in microseconds.
  905. Note, not all formats support this and unpredictable things may happen if it is used when not supported.
  906. - encoding: Set by user via AVOptions (NO direct access)
  907. - decoding: unused
  908. </member>
  909. <member name="F:libffmpeg.AVFormatContext.ts_id">
  910. Transport stream id.
  911. This will be moved into demuxer private options. Thus no API/ABI compatibility
  912. </member>
  913. <member name="F:libffmpeg.AVFormatContext.interrupt_callback">
  914. Custom interrupt callbacks for the I/O layer.
  915. decoding: set by the user before avformat_open_input().
  916. encoding: set by the user before avformat_write_header()
  917. (mainly useful for AVFMT_NOFILE formats). The callback
  918. should also be passed to avio_open2() if it's used to
  919. open the file.
  920. </member>
  921. <member name="F:libffmpeg.AVFormatContext.error_recognition">
  922. Error recognition; higher values will detect more errors but may
  923. misdetect some more or less valid parts as errors.
  924. - encoding: unused
  925. - decoding: Set by user.
  926. </member>
  927. <member name="F:libffmpeg.AVFormatContext.fps_probe_size">
  928. decoding: number of frames used to probe fps
  929. </member>
  930. <member name="F:libffmpeg.AVFormatContext.start_time_realtime">
  931. Start time of the stream in real world time, in microseconds
  932. since the unix epoch (00:00 1st January 1970). That is, pts=0
  933. in the stream was captured at this real world time.
  934. - encoding: Set by user.
  935. - decoding: Unused.
  936. </member>
  937. <member name="F:libffmpeg.AVFormatContext.raw_packet_buffer_remaining_size">
  938. Remaining size available for raw_packet_buffer, in bytes.
  939. NOT PART OF PUBLIC API
  940. </member>
  941. <member name="F:libffmpeg.AVFormatContext.debug">
  942. Flags to enable debugging.
  943. </member>
  944. <member name="F:libffmpeg.AVFormatContext.max_picture_buffer">
  945. Maximum amount of memory in bytes to use for buffering frames
  946. obtained from realtime capture devices.
  947. </member>
  948. <member name="F:libffmpeg.AVFormatContext.max_index_size">
  949. Maximum amount of memory in bytes to use for the index of each stream.
  950. If the index exceeds this size, entries will be discarded as
  951. needed to maintain a smaller size. This can lead to slower or less
  952. accurate seeking (depends on demuxer).
  953. Demuxers for which a full in-memory index is mandatory will ignore
  954. this.
  955. muxing : unused
  956. demuxing: set by user
  957. </member>
  958. <member name="F:libffmpeg.AVFormatContext.max_analyze_duration">
  959. decoding: maximum time (in AV_TIME_BASE units) during which the input should
  960. be analyzed in avformat_find_stream_info().
  961. </member>
  962. <member name="F:libffmpeg.AVFormatContext.probesize">
  963. decoding: size of data to probe; encoding: unused.
  964. </member>
  965. <member name="F:libffmpeg.AVFormatContext.loop_input">
  966. @deprecated, use the 'loop' img2 demuxer private option.
  967. </member>
  968. <member name="F:libffmpeg.AVFormatContext.loop_output">
  969. number of times to loop output in formats that support it
  970. @deprecated use the 'loop' private option in the gif muxer.
  971. </member>
  972. <member name="F:libffmpeg.AVFormatContext.mux_rate">
  973. use mpeg muxer private options instead
  974. </member>
  975. <member name="F:libffmpeg.AVFormatContext.bit_rate">
  976. Decoding: total stream bitrate in bit/s, 0 if not
  977. available. Never set it directly if the file_size and the
  978. duration are known as FFmpeg can compute it automatically.
  979. </member>
  980. <member name="F:libffmpeg.AVFormatContext.file_size">
  981. decoding: total file size, 0 if unknown
  982. </member>
  983. <member name="F:libffmpeg.AVFormatContext.duration">
  984. Decoding: duration of the stream, in AV_TIME_BASE fractional
  985. seconds. Only set this value if you know none of the individual stream
  986. durations and also do not set any of them. This is deduced from the
  987. AVStream values if not set.
  988. </member>
  989. <member name="F:libffmpeg.AVFormatContext.start_time">
  990. Decoding: position of the first frame of the component, in
  991. AV_TIME_BASE fractional seconds. NEVER set this value directly:
  992. It is deduced from the AVStream values.
  993. </member>
  994. <member name="F:libffmpeg.AVFormatContext.timestamp">
  995. @deprecated use 'creation_time' metadata tag instead
  996. </member>
  997. <member name="F:libffmpeg.AVFormatContext.nb_streams">
  998. A list of all streams in the file. New streams are created with
  999. avformat_new_stream().
  1000. decoding: streams are created by libavformat in avformat_open_input().
  1001. If AVFMTCTX_NOHEADER is set in ctx_flags, then new streams may also
  1002. appear in av_read_frame().
  1003. encoding: streams are created by the user before avformat_write_header().
  1004. </member>
  1005. <member name="F:libffmpeg.AVFormatContext.priv_data">
  1006. Format private data. This is an AVOptions-enabled struct
  1007. if and only if iformat/oformat.priv_class is not NULL.
  1008. </member>
  1009. <member name="F:libffmpeg.AVFormatContext.av_class">
  1010. A class for logging and AVOptions. Set by avformat_alloc_context().
  1011. Exports (de)muxer private options if they exist.
  1012. </member>
  1013. <member name="T:libffmpeg.AVFormatContext">
  1014. Format I/O context.
  1015. New fields can be added to the end with minor version bumps.
  1016. Removal, reordering and changes to existing fields require a major
  1017. version bump.
  1018. sizeof(AVFormatContext) must not be used outside libav*, use
  1019. avformat_alloc_context() to create an AVFormatContext.
  1020. </member>
  1021. <member name="T:libffmpeg.AVProgram">
  1022. New fields can be added to the end with minor version bumps.
  1023. Removal, reordering and changes to existing fields require a major
  1024. version bump.
  1025. sizeof(AVProgram) must not be used outside libav*.
  1026. </member>
  1027. <member name="F:libffmpeg.AVStream.request_probe">
  1028. flag to indicate that probing is requested
  1029. NOT PART OF PUBLIC API
  1030. </member>
  1031. <member name="F:libffmpeg.AVStream.stream_identifier">
  1032. Stream Identifier
  1033. This is the MPEG-TS stream identifier +1
  1034. 0 means unknown
  1035. </member>
  1036. <member name="F:libffmpeg.AVStream.codec_info_nb_frames">
  1037. Number of frames that have been demuxed during av_find_stream_info()
  1038. </member>
  1039. <member name="F:libffmpeg.AVStream.avg_frame_rate">
  1040. Average framerate
  1041. </member>
  1042. <member name="T:libffmpeg.AVPacketList">
  1043. last packet in packet_buffer for this stream when muxing.
  1044. Used internally, NOT PART OF PUBLIC API, do not read or
  1045. write from outside of libav*
  1046. This buffer is only needed when packets were already buffered but
  1047. not decoded, for example to get the codec parameters in MPEG
  1048. streams.
  1049. Raw packets from the demuxer, prior to parsing and decoding.
  1050. This buffer is used for buffering packets until the codec can
  1051. be identified, as parsing cannot be done without knowing the
  1052. codec.
  1053. </member>
  1054. <member name="F:libffmpeg.AVStream.probe_packets">
  1055. Number of packets to buffer for codec probing
  1056. NOT PART OF PUBLIC API
  1057. </member>
  1058. <member name="F:libffmpeg.AVStream.reference_dts">
  1059. Timestamp corresponding to the last dts sync point.
  1060. Initialized when AVCodecParserContext.dts_sync_point &gt;= 0 and
  1061. a DTS is received from the underlying container. Otherwise set to
  1062. AV_NOPTS_VALUE by default.
  1063. </member>
  1064. <member name="F:libffmpeg.AVStream.sample_aspect_ratio">
  1065. sample aspect ratio (0 if unknown)
  1066. - encoding: Set by user.
  1067. - decoding: Set by libavformat.
  1068. </member>
  1069. <member name="F:libffmpeg.AVStream.duration">
  1070. Decoding: duration of the stream, in stream time base.
  1071. If a source file does not specify a duration, but does specify
  1072. a bitrate, this value will be estimated from bitrate and file size.
  1073. </member>
  1074. <member name="F:libffmpeg.AVStream.start_time">
  1075. Decoding: pts of the first frame of the stream in presentation order, in stream time base.
  1076. Only set this if you are absolutely 100% sure that the value you set
  1077. it to really is the pts of the first frame.
  1078. This may be undefined (AV_NOPTS_VALUE).
  1079. @note The ASF header does NOT contain a correct start_time the ASF
  1080. demuxer must NOT set this.
  1081. </member>
  1082. <member name="F:libffmpeg.AVStream.quality">
  1083. Quality, as it has been removed from AVCodecContext and put in AVVideoFrame.
  1084. MN: dunno if that is the right place for it
  1085. </member>
  1086. <member name="F:libffmpeg.AVStream.time_base">
  1087. This is the fundamental unit of time (in seconds) in terms
  1088. of which frame timestamps are represented. For fixed-fps content,
  1089. time base should be 1/framerate and timestamp increments should be 1.
  1090. decoding: set by libavformat
  1091. encoding: set by libavformat in av_write_header
  1092. </member>
  1093. <member name="T:libffmpeg.AVFrac">
  1094. encoding: pts generation when outputting stream
  1095. </member>
  1096. <member name="F:libffmpeg.AVStream.r_frame_rate">
  1097. Real base framerate of the stream.
  1098. This is the lowest framerate with which all timestamps can be
  1099. represented accurately (it is the least common multiple of all
  1100. framerates in the stream). Note, this value is just a guess!
  1101. For example, if the time base is 1/90000 and all frames have either
  1102. approximately 3600 or 1800 timer ticks, then r_frame_rate will be 50/1.
  1103. </member>
  1104. <member name="T:libffmpeg.AVStream">
  1105. Track should be used during playback by default.
  1106. Useful for subtitle track that should be displayed
  1107. even when user did not explicitly ask for subtitles.
  1108. Stream structure.
  1109. New fields can be added to the end with minor version bumps.
  1110. Removal, reordering and changes to existing fields require a major
  1111. version bump.
  1112. sizeof(AVStream) must not be used outside libav*.
  1113. </member>
  1114. <member name="T:libffmpeg.AVStreamParseType">
  1115. @}
  1116. </member>
  1117. <member name="F:libffmpeg.AVInputFormat.read_pause">
  1118. Pause playing - only meaningful if using a network-based format
  1119. (RTSP).
  1120. </member>
  1121. <member name="F:libffmpeg.AVInputFormat.read_play">
  1122. Start/resume playing - only meaningful if using a network-based format
  1123. (RTSP).
  1124. </member>
  1125. <member name="F:libffmpeg.AVInputFormat.value">
  1126. General purpose read-only value that the format can use.
  1127. </member>
  1128. <member name="F:libffmpeg.AVInputFormat.extensions">
  1129. If extensions are defined, then no probe is done. You should
  1130. usually not use extension format guessing because it is not
  1131. reliable enough
  1132. </member>
  1133. <member name="F:libffmpeg.AVInputFormat.flags">
  1134. Can use flags: AVFMT_NOFILE, AVFMT_NEEDNUMBER, AVFMT_SHOW_IDS,
  1135. AVFMT_GENERIC_INDEX, AVFMT_TS_DISCONT, AVFMT_NOBINSEARCH,
  1136. AVFMT_NOGENSEARCH, AVFMT_NO_BYTE_SEEK.
  1137. </member>
  1138. <member name="F:libffmpeg.AVInputFormat.read_timestamp">
  1139. Get the next timestamp in stream[stream_index].time_base units.
  1140. @return the timestamp or AV_NOPTS_VALUE if an error occurred
  1141. </member>
  1142. <member name="F:libffmpeg.AVInputFormat.read_seek">
  1143. Seek to a given timestamp relative to the frames in
  1144. stream component stream_index.
  1145. @param stream_index Must not be -1.
  1146. @param flags Selects which direction should be preferred if no exact
  1147. match is available.
  1148. @return &gt;= 0 on success (but not necessarily the new offset)
  1149. </member>
  1150. <member name="F:libffmpeg.AVInputFormat.read_close">
  1151. Close the stream. The AVFormatContext and AVStreams are not
  1152. freed by this function
  1153. </member>
  1154. <member name="F:libffmpeg.AVInputFormat.read_header">
  1155. Read the format header and initialize the AVFormatContext
  1156. structure. Return 0 if OK. 'ap' if non-NULL contains
  1157. additional parameters. Only used in raw format right
  1158. now. 'av_new_stream' should be called to create new streams.
  1159. </member>
  1160. <member name="F:libffmpeg.AVInputFormat.read_probe">
  1161. Tell if a given file has a chance of being parsed as this format.
  1162. The buffer provided is guaranteed to be AVPROBE_PADDING_SIZE bytes
  1163. big so you do not have to check for that unless you need more.
  1164. </member>
  1165. <member name="F:libffmpeg.AVInputFormat.priv_data_size">
  1166. Size of private data so that it can be allocated in the wrapper.
  1167. </member>
  1168. <member name="F:libffmpeg.AVInputFormat.long_name">
  1169. Descriptive name for the format, meant to be more human-readable
  1170. than name. You should use the NULL_IF_CONFIG_SMALL() macro
  1171. to define it.
  1172. </member>
  1173. <member name="F:libffmpeg.AVInputFormat.name">
  1174. A comma separated list of short names for the format. New names
  1175. may be appended with a minor bump.
  1176. </member>
  1177. <member name="T:libffmpeg.AVInputFormat">
  1178. @}
  1179. @addtogroup lavf_decoding
  1180. @{
  1181. Can only be iformat or oformat, not both at the same time.
  1182. decoding: set by avformat_open_input().
  1183. encoding: set by the user.
  1184. </member>
  1185. <member name="F:libffmpeg.AVOutputFormat.query_codec">
  1186. Test if the given codec can be stored in this container.
  1187. @return 1 if the codec is supported, 0 if it is not.
  1188. A negative number if unknown.
  1189. </member>
  1190. <member name="T:libffmpeg.AVCodecTag">
  1191. List of supported codec_id-codec_tag pairs, ordered by "better
  1192. choice first". The arrays are all terminated by CODEC_ID_NONE.
  1193. </member>
  1194. <member name="F:libffmpeg.AVOutputFormat.flags">
  1195. can use flags: AVFMT_NOFILE, AVFMT_NEEDNUMBER, AVFMT_RAWPICTURE,
  1196. AVFMT_GLOBALHEADER, AVFMT_NOTIMESTAMPS, AVFMT_VARIABLE_FPS,
  1197. AVFMT_NODIMENSIONS, AVFMT_NOSTREAMS, AVFMT_ALLOW_FLUSH
  1198. </member>
  1199. <member name="F:libffmpeg.AVOutputFormat.write_packet">
  1200. Write a packet. If AVFMT_ALLOW_FLUSH is set in flags,
  1201. pkt can be NULL in order to flush data buffered in the muxer.
  1202. When flushing, return 0 if there still is more data to flush,
  1203. or 1 if everything was flushed and there is no more buffered
  1204. data.
  1205. </member>
  1206. <member name="F:libffmpeg.AVOutputFormat.priv_data_size">
  1207. size of private data so that it can be allocated in the wrapper
  1208. </member>
  1209. <member name="F:libffmpeg.AVOutputFormat.long_name">
  1210. Descriptive name for the format, meant to be more human-readable
  1211. than name. You should use the NULL_IF_CONFIG_SMALL() macro
  1212. to define it.
  1213. </member>
  1214. <member name="T:libffmpeg.AVOutputFormat">
  1215. Demuxer will use avio_open, no opened file should be provided by the caller.
  1216. @addtogroup lavf_encoding
  1217. @{
  1218. </member>
  1219. <member name="T:libffmpeg.AVProbeData">
  1220. This structure contains the data a format has to probe a file.
  1221. </member>
  1222. <member name="M:libffmpeg.av_append_packet(libffmpeg.AVIOContext*,libffmpeg.AVPacket*,System.Int32)">
  1223. Read data and append it to the current content of the AVPacket.
  1224. If pkt-&gt;size is 0 this is identical to av_get_packet.
  1225. Note that this uses av_grow_packet and thus involves a realloc
  1226. which is inefficient. Thus this function should only be used
  1227. when there is no reasonable way to know (an upper bound of)
  1228. the final size.
  1229. @param pkt packet
  1230. @param size amount of data to read
  1231. @return &gt;0 (read size) if OK, AVERROR_xxx otherwise, previous data
  1232. will not be lost even if an error occurs.
  1233. </member>
  1234. <member name="M:libffmpeg.av_get_packet(libffmpeg.AVIOContext*,libffmpeg.AVPacket*,System.Int32)">
  1235. @}
  1236. Allocate and read the payload of a packet and initialize its
  1237. fields with default values.
  1238. @param pkt packet
  1239. @param size desired payload size
  1240. @return &gt;0 (read size) if OK, AVERROR_xxx otherwise
  1241. </member>
  1242. <member name="M:libffmpeg.av_metadata_free(libffmpeg.AVDictionary**)">
  1243. Free all the memory allocated for an AVDictionary struct.
  1244. </member>
  1245. <member name="M:libffmpeg.av_metadata_copy(libffmpeg.AVDictionary**,libffmpeg.AVDictionary*,System.Int32)">
  1246. Copy metadata from one AVDictionary struct into another.
  1247. @param dst pointer to a pointer to a AVDictionary struct. If *dst is NULL,
  1248. this function will allocate a struct for you and put it in *dst
  1249. @param src pointer to source AVDictionary struct
  1250. @param flags flags to use when setting metadata in *dst
  1251. @note metadata is read using the AV_DICT_IGNORE_SUFFIX flag
  1252. </member>
  1253. <member name="M:libffmpeg.av_metadata_conv(libffmpeg.AVFormatContext*,libffmpeg.AVMetadataConv!System.Runtime.CompilerServices.IsConst*,libffmpeg.AVMetadataConv!System.Runtime.CompilerServices.IsConst*)">
  1254. This function is provided for compatibility reason and currently does nothing.
  1255. </member>
  1256. <member name="M:libffmpeg.av_metadata_get(libffmpeg.AVDictionary*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,libffmpeg.AVDictionaryEntry!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  1257. Get a metadata element with matching key.
  1258. @param prev Set to the previous matching element to find the next.
  1259. If set to NULL the first matching element is returned.
  1260. @param flags Allows case as well as suffix-insensitive comparisons.
  1261. @return Found tag or NULL, changing key or value leads to undefined behavior.
  1262. </member>
  1263. <member name="M:libffmpeg.avio_seek_time(libffmpeg.AVIOContext*,System.Int32,System.Int64,System.Int32)">
  1264. Seek to a given timestamp relative to some component stream.
  1265. Only meaningful if using a network streaming protocol (e.g. MMS.).
  1266. @param stream_index The stream index that the timestamp is relative to.
  1267. If stream_index is (-1) the timestamp should be in AV_TIME_BASE
  1268. units from the beginning of the presentation.
  1269. If a stream_index &gt;= 0 is used and the protocol does not support
  1270. seeking based on component streams, the call will fail.
  1271. @param timestamp timestamp in AVStream.time_base units
  1272. or if there is no stream specified then in AV_TIME_BASE units.
  1273. @param flags Optional combination of AVSEEK_FLAG_BACKWARD, AVSEEK_FLAG_BYTE
  1274. and AVSEEK_FLAG_ANY. The protocol may silently ignore
  1275. AVSEEK_FLAG_BACKWARD and AVSEEK_FLAG_ANY, but AVSEEK_FLAG_BYTE will
  1276. fail if used and not supported.
  1277. @return &gt;= 0 on success
  1278. @see AVInputFormat::read_seek
  1279. </member>
  1280. <member name="M:libffmpeg.avio_pause(libffmpeg.AVIOContext*,System.Int32)">
  1281. Pause and resume playing - only meaningful if using a network streaming
  1282. protocol (e.g. MMS).
  1283. @param pause 1 for pause, 0 for resume
  1284. </member>
  1285. <member name="M:libffmpeg.avio_enum_protocols(System.Void**,System.Int32)">
  1286. Iterate through names of available protocols.
  1287. @note it is recommanded to use av_protocol_next() instead of this
  1288. @param opaque A private pointer representing current protocol.
  1289. It must be a pointer to NULL on first iteration and will
  1290. be updated by successive calls to avio_enum_protocols.
  1291. @param output If set to 1, iterate over output protocols,
  1292. otherwise over input protocols.
  1293. @return A static string containing the name of current protocol or NULL
  1294. </member>
  1295. <member name="M:libffmpeg.avio_close_dyn_buf(libffmpeg.AVIOContext*,System.Byte**)">
  1296. Return the written size and a pointer to the buffer. The buffer
  1297. must be freed with av_free().
  1298. Padding of FF_INPUT_BUFFER_PADDING_SIZE is added to the buffer.
  1299. @param s IO context
  1300. @param pbuffer pointer to a byte buffer
  1301. @return the length of the byte buffer
  1302. </member>
  1303. <member name="M:libffmpeg.avio_open_dyn_buf(libffmpeg.AVIOContext**)">
  1304. Open a write only memory stream.
  1305. @param s new IO context
  1306. @return zero if no error.
  1307. </member>
  1308. <member name="M:libffmpeg.avio_open2(libffmpeg.AVIOContext**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32,libffmpeg.AVIOInterruptCB!System.Runtime.CompilerServices.IsConst*,libffmpeg.AVDictionary**)">
  1309. Create and initialize a AVIOContext for accessing the
  1310. resource indicated by url.
  1311. @note When the resource indicated by url has been opened in
  1312. read+write mode, the AVIOContext can be used only for writing.
  1313. @param s Used to return the pointer to the created AVIOContext.
  1314. In case of failure the pointed to value is set to NULL.
  1315. @param flags flags which control how the resource indicated by url
  1316. is to be opened
  1317. @param int_cb an interrupt callback to be used at the protocols level
  1318. @param options A dictionary filled with protocol-private options. On return
  1319. this parameter will be destroyed and replaced with a dict containing options
  1320. that were not found. May be NULL.
  1321. @return 0 in case of success, a negative value corresponding to an
  1322. AVERROR code in case of failure
  1323. </member>
  1324. <member name="M:libffmpeg.avio_open(libffmpeg.AVIOContext**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  1325. @name URL open modes
  1326. The flags argument to avio_open must be one of the following
  1327. constants, optionally ORed with other flags.
  1328. @{
  1329. @}
  1330. Use non-blocking mode.
  1331. If this flag is set, operations on the context will return
  1332. AVERROR(EAGAIN) if they can not be performed immediately.
  1333. If this flag is not set, operations on the context will never return
  1334. AVERROR(EAGAIN).
  1335. Note that this flag does not affect the opening/connecting of the
  1336. context. Connecting a protocol will always block if necessary (e.g. on
  1337. network protocols) but never hang (e.g. on busy devices).
  1338. Warning: non-blocking protocols is work-in-progress; this flag may be
  1339. silently ignored.
  1340. Create and initialize a AVIOContext for accessing the
  1341. resource indicated by url.
  1342. @note When the resource indicated by url has been opened in
  1343. read+write mode, the AVIOContext can be used only for writing.
  1344. @param s Used to return the pointer to the created AVIOContext.
  1345. In case of failure the pointed to value is set to NULL.
  1346. @param flags flags which control how the resource indicated by url
  1347. is to be opened
  1348. @return 0 in case of success, a negative value corresponding to an
  1349. AVERROR code in case of failure
  1350. </member>
  1351. <member name="M:libffmpeg.avio_r8(libffmpeg.AVIOContext*)">
  1352. @name Functions for reading from AVIOContext
  1353. @{
  1354. @note return 0 if EOF, so you cannot use it if EOF handling is
  1355. necessary
  1356. </member>
  1357. <member name="M:libffmpeg.avio_read(libffmpeg.AVIOContext*,System.Byte*,System.Int32)">
  1358. Read size bytes from AVIOContext into buf.
  1359. @return number of bytes read or AVERROR
  1360. </member>
  1361. <member name="M:libffmpeg.avio_printf(libffmpeg.AVIOContext*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,BTEllipsis)">
  1362. @warning currently size is limited
  1363. </member>
  1364. <member name="M:libffmpeg.url_feof(libffmpeg.AVIOContext*)">
  1365. feof() equivalent for AVIOContext.
  1366. @return non zero if and only if end of file
  1367. </member>
  1368. <member name="M:libffmpeg.avio_size(libffmpeg.AVIOContext*)">
  1369. Get the filesize.
  1370. @return filesize or AVERROR
  1371. </member>
  1372. <member name="M:libffmpeg.avio_tell(libffmpeg.AVIOContext*)">
  1373. ftell() equivalent for AVIOContext.
  1374. @return position or AVERROR.
  1375. </member>
  1376. <member name="M:libffmpeg.avio_skip(libffmpeg.AVIOContext*,System.Int64)">
  1377. Skip given number of bytes forward
  1378. @return new position or AVERROR.
  1379. </member>
  1380. <member name="M:libffmpeg.avio_put_str16le(libffmpeg.AVIOContext*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  1381. Convert an UTF-8 string to UTF-16LE and write it.
  1382. @return number of bytes written.
  1383. </member>
  1384. <member name="M:libffmpeg.avio_put_str(libffmpeg.AVIOContext*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  1385. Write a NULL-terminated string.
  1386. @return number of bytes written.
  1387. </member>
  1388. <member name="M:libffmpeg.avio_alloc_context(System.Byte*,System.Int32,System.Int32,System.Void*,=FUNC:System.Int32(System.Void*,System.Byte*,System.Int32),=FUNC:System.Int32(System.Void*,System.Byte*,System.Int32),=FUNC:System.Int64(System.Void*,System.Int64,System.Int32))">
  1389. Allocate and initialize an AVIOContext for buffered I/O. It must be later
  1390. freed with av_free().
  1391. @param buffer Memory block for input/output operations via AVIOContext.
  1392. The buffer must be allocated with av_malloc() and friends.
  1393. @param buffer_size The buffer size is very important for performance.
  1394. For protocols with fixed blocksize it should be set to this blocksize.
  1395. For others a typical size is a cache page, e.g. 4kb.
  1396. @param write_flag Set to 1 if the buffer should be writable, 0 otherwise.
  1397. @param opaque An opaque pointer to user-specific data.
  1398. @param read_packet A function for refilling the buffer, may be NULL.
  1399. @param write_packet A function for writing the buffer contents, may be NULL.
  1400. @param seek A function for seeking to specified byte position, may be NULL.
  1401. @return Allocated AVIOContext or NULL on failure.
  1402. </member>
  1403. <member name="M:libffmpeg.avio_set_interrupt_cb(=FUNC:System.Int32(System.Void))">
  1404. The callback is called in blocking functions to test regulary if
  1405. asynchronous interruption is needed. AVERROR_EXIT is returned
  1406. in this case by the interrupted function. 'NULL' means no interrupt
  1407. callback is given.
  1408. @deprecated Use interrupt_callback in AVFormatContext/avio_open2
  1409. instead.
  1410. </member>
  1411. <member name="M:libffmpeg.avio_check(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  1412. Return AVIO_FLAG_* access flags corresponding to the access permissions
  1413. of the resource in url, or a negative value corresponding to an
  1414. AVERROR code in case of failure. The returned access flags are
  1415. masked by the value in flags.
  1416. @note This function is intrinsically unsafe, in the sense that the
  1417. checked resource may change its existence or permission status from
  1418. one call to another. Thus you should not trust the returned value,
  1419. unless you are sure that no other processes are accessing the
  1420. checked resource.
  1421. </member>
  1422. <member name="M:libffmpeg.url_exist(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  1423. Return a non-zero value if the resource indicated by url
  1424. exists, 0 otherwise.
  1425. @deprecated Use avio_check instead.
  1426. </member>
  1427. <member name="M:libffmpeg.url_close_buf(libffmpeg.AVIOContext*)">
  1428. return the written or read size
  1429. </member>
  1430. <member name="M:libffmpeg.url_fget_max_packet_size(libffmpeg.AVIOContext*)">
  1431. @deprecated use AVIOContext.max_packet_size directly.
  1432. </member>
  1433. <member name="M:libffmpeg.url_is_streamed(libffmpeg.AVIOContext*)">
  1434. @deprecated Use AVIOContext.seekable field directly.
  1435. </member>
  1436. <member name="M:libffmpeg.get_strz(libffmpeg.AVIOContext*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32)">
  1437. @deprecated use avio_get_str instead
  1438. </member>
  1439. <member name="M:libffmpeg.url_fgets(libffmpeg.AVIOContext*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32)">
  1440. @note unlike fgets, the EOL character is not returned and a whole
  1441. line is parsed. return NULL if first char read was EOF
  1442. </member>
  1443. <member name="M:libffmpeg.url_ferror(libffmpeg.AVIOContext*)">
  1444. @}
  1445. </member>
  1446. <member name="M:libffmpeg.url_fopen(libffmpeg.AVIOContext**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  1447. @defgroup old_url_f_funcs Old url_f* functions
  1448. The following functions are deprecated, use the "avio_"-prefixed functions instead.
  1449. @{
  1450. @ingroup lavf_io
  1451. </member>
  1452. <member name="M:libffmpeg.av_url_read_fpause(libffmpeg.AVIOContext*,System.Int32)">
  1453. @}
  1454. </member>
  1455. <member name="M:libffmpeg.get_buffer(libffmpeg.AVIOContext*,System.Byte*,System.Int32)">
  1456. @defgroup old_avio_funcs Old put_/get_*() functions
  1457. The following functions are deprecated. Use the "avio_"-prefixed functions instead.
  1458. @{
  1459. @ingroup lavf_io
  1460. </member>
  1461. <member name="D:libffmpeg.ByteIOContext">
  1462. @}
  1463. </member>
  1464. <member name="M:libffmpeg.av_register_protocol2(libffmpeg.URLProtocol*,System.Int32)">
  1465. Register the URLProtocol protocol.
  1466. @param size the size of the URLProtocol struct referenced
  1467. </member>
  1468. <member name="M:libffmpeg.av_protocol_next(libffmpeg.URLProtocol*)">
  1469. returns the next registered protocol after the given protocol (the first if
  1470. NULL is given), or NULL if protocol is the last one.
  1471. </member>
  1472. <member name="M:libffmpeg.url_open_protocol(libffmpeg.URLContext**,libffmpeg.URLProtocol*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  1473. @defgroup old_url_funcs Old url_* functions
  1474. The following functions are deprecated. Use the buffered API based on #AVIOContext instead.
  1475. @{
  1476. @ingroup lavf_io
  1477. </member>
  1478. <member name="D:libffmpeg.URLInterruptCB">
  1479. @name URL open modes
  1480. The flags argument to url_open and cosins must be one of the following
  1481. constants, optionally ORed with other flags.
  1482. @{
  1483. @}
  1484. Use non-blocking mode.
  1485. If this flag is set, operations on the context will return
  1486. AVERROR(EAGAIN) if they can not be performed immediately.
  1487. If this flag is not set, operations on the context will never return
  1488. AVERROR(EAGAIN).
  1489. Note that this flag does not affect the opening/connecting of the
  1490. context. Connecting a protocol will always block if necessary (e.g. on
  1491. network protocols) but never hang (e.g. on busy devices).
  1492. Warning: non-blocking protocols is work-in-progress; this flag may be
  1493. silently ignored.
  1494. </member>
  1495. <member name="T:libffmpeg.URLProtocol">
  1496. @deprecated This struct is to be made private. Use the higher-level
  1497. AVIOContext-based API instead.
  1498. </member>
  1499. <member name="T:libffmpeg.URLContext">
  1500. URL Context.
  1501. New fields can be added to the end with minor version bumps.
  1502. Removal, reordering and changes to existing fields require a major
  1503. version bump.
  1504. sizeof(URLContext) must not be used outside libav*.
  1505. @deprecated This struct will be made private
  1506. </member>
  1507. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.Close">
  1508. <summary>
  1509. Close currently opened video file if any.
  1510. </summary>
  1511. </member>
  1512. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.WriteVideoFrame(System.Drawing.Bitmap,System.TimeSpan)">
  1513. <summary>
  1514. Write new video frame with a specific timestamp into currently opened video file.
  1515. </summary>
  1516. <param name="frame">Bitmap to add as a new video frame.</param>
  1517. <param name="timestamp">Frame timestamp, total time since recording started.</param>
  1518. <remarks>
  1519. <para>The specified bitmap must be either color 24 or 32 bpp image or grayscale 8 bpp (indexed) image.</para>
  1520. <para>
  1521. <note>The <paramref name="timestamp" /> parameter allows user to specify presentation
  1522. time of the frame being saved. However, it is user's responsibility to make sure the value is increasing
  1523. over time.</note>
  1524. </para>
  1525. </remarks>
  1526. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  1527. <exception cref="T:System.ArgumentException">The provided bitmap must be 24 or 32 bpp color image or 8 bpp grayscale image.</exception>
  1528. <exception cref="T:System.ArgumentException">Bitmap size must be of the same as video size, which was specified on opening video file.</exception>
  1529. <exception cref="T:AForge.Video.VideoException">A error occurred while writing new video frame. See exception message.</exception>
  1530. </member>
  1531. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.WriteVideoFrame(System.Drawing.Bitmap)">
  1532. <summary>
  1533. Write new video frame into currently opened video file.
  1534. </summary>
  1535. <param name="frame">Bitmap to add as a new video frame.</param>
  1536. <remarks>
  1537. <para>The specified bitmap must be either color 24 or 32 bpp image or grayscale 8 bpp (indexed) image.</para>
  1538. </remarks>
  1539. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  1540. <exception cref="T:System.ArgumentException">The provided bitmap must be 24 or 32 bpp color image or 8 bpp grayscale image.</exception>
  1541. <exception cref="T:System.ArgumentException">Bitmap size must be of the same as video size, which was specified on opening video file.</exception>
  1542. <exception cref="T:AForge.Video.VideoException">A error occurred while writing new video frame. See exception message.</exception>
  1543. </member>
  1544. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.Open(System.String,System.Int32,System.Int32,System.Int32,AForge.Video.FFMPEG.VideoCodec,System.Int32)">
  1545. <summary>
  1546. Create video file with the specified name and attributes.
  1547. </summary>
  1548. <param name="fileName">Video file name to create.</param>
  1549. <param name="width">Frame width of the video file.</param>
  1550. <param name="height">Frame height of the video file.</param>
  1551. <param name="frameRate">Frame rate of the video file.</param>
  1552. <param name="codec">Video codec to use for compression.</param>
  1553. <param name="bitRate">Bit rate of the video stream.</param>
  1554. <remarks>
  1555. <para>The methods creates new video file with the specified name.
  1556. If a file with such name already exists in the file system, it will be overwritten.</para>
  1557. <para>When adding new video frames using <see cref="M:AForge.Video.FFMPEG.VideoFileWriter.WriteVideoFrame(System.Drawing.Bitmap)" /> method,
  1558. the video frame must have width and height as specified during file opening.</para>
  1559. <para>
  1560. <note>The bit rate parameter represents a trade-off value between video quality
  1561. and video file size. Higher bit rate value increase video quality and result in larger
  1562. file size. Smaller values result in opposite – worse quality and small video files.</note>
  1563. </para>
  1564. </remarks>
  1565. <exception cref="T:System.ArgumentException">Video file resolution must be a multiple of two.</exception>
  1566. <exception cref="T:System.ArgumentException">Invalid video codec is specified.</exception>
  1567. <exception cref="T:AForge.Video.VideoException">A error occurred while creating new video file. See exception message.</exception>
  1568. <exception cref="T:System.IO.IOException">Cannot open video file with the specified name.</exception>
  1569. </member>
  1570. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.Open(System.String,System.Int32,System.Int32,System.Int32,AForge.Video.FFMPEG.VideoCodec)">
  1571. <summary>
  1572. Create video file with the specified name and attributes.
  1573. </summary>
  1574. <param name="fileName">Video file name to create.</param>
  1575. <param name="width">Frame width of the video file.</param>
  1576. <param name="height">Frame height of the video file.</param>
  1577. <param name="frameRate">Frame rate of the video file.</param>
  1578. <param name="codec">Video codec to use for compression.</param>
  1579. <remarks>
  1580. <para>The methods creates new video file with the specified name.
  1581. If a file with such name already exists in the file system, it will be overwritten.</para>
  1582. <para>When adding new video frames using <see cref="M:AForge.Video.FFMPEG.VideoFileWriter.WriteVideoFrame(System.Drawing.Bitmap)" /> method,
  1583. the video frame must have width and height as specified during file opening.</para>
  1584. </remarks>
  1585. <exception cref="T:System.ArgumentException">Video file resolution must be a multiple of two.</exception>
  1586. <exception cref="T:System.ArgumentException">Invalid video codec is specified.</exception>
  1587. <exception cref="T:AForge.Video.VideoException">A error occurred while creating new video file. See exception message.</exception>
  1588. <exception cref="T:System.IO.IOException">Cannot open video file with the specified name.</exception>
  1589. </member>
  1590. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.Open(System.String,System.Int32,System.Int32,System.Int32)">
  1591. <summary>
  1592. Create video file with the specified name and attributes.
  1593. </summary>
  1594. <param name="fileName">Video file name to create.</param>
  1595. <param name="width">Frame width of the video file.</param>
  1596. <param name="height">Frame height of the video file.</param>
  1597. <param name="frameRate">Frame rate of the video file.</param>
  1598. <remarks>
  1599. <para>See documentation to the <see cref="M:AForge.Video.FFMPEG.VideoFileWriter.Open(System.String,System.Int32,System.Int32,System.Int32,AForge.Video.FFMPEG.VideoCodec)" />
  1600. for more information and the list of possible exceptions.</para>
  1601. <para>
  1602. <note>The method opens the video file using <see cref="F:AForge.Video.FFMPEG.VideoCodec.Default" />
  1603. codec.</note>
  1604. </para>
  1605. </remarks>
  1606. </member>
  1607. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.Open(System.String,System.Int32,System.Int32)">
  1608. <summary>
  1609. Create video file with the specified name and attributes.
  1610. </summary>
  1611. <param name="fileName">Video file name to create.</param>
  1612. <param name="width">Frame width of the video file.</param>
  1613. <param name="height">Frame height of the video file.</param>
  1614. <remarks>
  1615. <para>See documentation to the <see cref="M:AForge.Video.FFMPEG.VideoFileWriter.Open(System.String,System.Int32,System.Int32,System.Int32,AForge.Video.FFMPEG.VideoCodec)" />
  1616. for more information and the list of possible exceptions.</para>
  1617. <para>
  1618. <note>The method opens the video file using <see cref="F:AForge.Video.FFMPEG.VideoCodec.Default" />
  1619. codec and 25 fps frame rate.</note>
  1620. </para>
  1621. </remarks>
  1622. </member>
  1623. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.Dispose">
  1624. <summary>
  1625. Disposes the object and frees its resources.
  1626. </summary>
  1627. </member>
  1628. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.#ctor">
  1629. <summary>
  1630. Initializes a new instance of the <see cref="T:AForge.Video.FFMPEG.VideoFileWriter" /> class.
  1631. </summary>
  1632. </member>
  1633. <member name="M:AForge.Video.FFMPEG.VideoFileWriter.Finalize">
  1634. <summary>
  1635. Object's finalizer.
  1636. </summary>
  1637. </member>
  1638. <member name="P:AForge.Video.FFMPEG.VideoFileWriter.IsOpen">
  1639. <summary>
  1640. The property specifies if a video file is opened or not by this instance of the class.
  1641. </summary>
  1642. </member>
  1643. <member name="P:AForge.Video.FFMPEG.VideoFileWriter.Codec">
  1644. <summary>
  1645. Codec to use for the video file.
  1646. </summary>
  1647. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  1648. </member>
  1649. <member name="P:AForge.Video.FFMPEG.VideoFileWriter.BitRate">
  1650. <summary>
  1651. Bit rate of the video stream.
  1652. </summary>
  1653. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  1654. </member>
  1655. <member name="P:AForge.Video.FFMPEG.VideoFileWriter.FrameRate">
  1656. <summary>
  1657. Frame rate of the opened video file.
  1658. </summary>
  1659. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  1660. </member>
  1661. <member name="P:AForge.Video.FFMPEG.VideoFileWriter.Height">
  1662. <summary>
  1663. Frame height of the opened video file.
  1664. </summary>
  1665. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  1666. </member>
  1667. <member name="P:AForge.Video.FFMPEG.VideoFileWriter.Width">
  1668. <summary>
  1669. Frame width of the opened video file.
  1670. </summary>
  1671. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  1672. </member>
  1673. <member name="T:AForge.Video.FFMPEG.VideoFileWriter">
  1674. <summary>
  1675. Class for writing video files utilizing FFmpeg library.
  1676. </summary>
  1677. <remarks>
  1678. <para>The class allows to write video files using <a href="http://www.ffmpeg.org/">FFmpeg</a> library.</para>
  1679. <para>
  1680. <note>Make sure you have <b>FFmpeg</b> binaries (DLLs) in the output folder of your application in order
  1681. to use this class successfully. <b>FFmpeg</b> binaries can be found in Externals folder provided with AForge.NET
  1682. framework's distribution.</note>
  1683. </para>
  1684. <para>Sample usage:</para>
  1685. <code>
  1686. int width = 320;
  1687. int height = 240;
  1688. // create instance of video writer
  1689. VideoFileWriter writer = new VideoFileWriter( );
  1690. // create new video file
  1691. writer.Open( "test.avi", width, height, 25, VideoCodec.MPEG4 );
  1692. // create a bitmap to save into the video file
  1693. Bitmap image = new Bitmap( width, height, PixelFormat.Format24bppRgb );
  1694. // write 1000 video frames
  1695. for ( int i = 0; i &lt; 1000; i++ )
  1696. {
  1697. image.SetPixel( i % width, i % height, Color.Red );
  1698. writer.WriteVideoFrame( image );
  1699. }
  1700. writer.Close( );
  1701. </code>
  1702. </remarks>
  1703. </member>
  1704. <member name="M:libffmpeg.avcodec_get_frame_class">
  1705. Get the AVClass for AVFrame. It can be used in combination with
  1706. AV_OPT_SEARCH_FAKE_OBJ for examining options.
  1707. @see av_opt_find().
  1708. </member>
  1709. <member name="M:libffmpeg.avcodec_get_class">
  1710. Get the AVClass for AVCodecContext. It can be used in combination with
  1711. AV_OPT_SEARCH_FAKE_OBJ for examining options.
  1712. @see av_opt_find().
  1713. </member>
  1714. <member name="M:libffmpeg.av_lockmgr_register(=FUNC:System.Int32(System.Void**,libffmpeg.AVLockOp))">
  1715. Register a user provided lock manager supporting the operations
  1716. specified by AVLockOp. mutex points to a (void *) where the
  1717. lockmgr should store/get a pointer to a user allocated mutex. It's
  1718. NULL upon AV_LOCK_CREATE and != NULL for all other ops.
  1719. @param cb User defined callback. Note: FFmpeg may invoke calls to this
  1720. callback during the call to av_lockmgr_register().
  1721. Thus, the application must be prepared to handle that.
  1722. If cb is set to NULL the lockmgr will be unregistered.
  1723. Also note that during unregistration the previously registered
  1724. lockmgr callback may also be invoked.
  1725. </member>
  1726. <member name="T:libffmpeg.AVLockOp">
  1727. Lock operation used by lockmgr
  1728. </member>
  1729. <member name="M:libffmpeg.av_hwaccel_next(libffmpeg.AVHWAccel*)">
  1730. If hwaccel is NULL, returns the first registered hardware accelerator,
  1731. if hwaccel is non-NULL, returns the next registered hardware accelerator
  1732. after hwaccel, or NULL if hwaccel is the last one.
  1733. </member>
  1734. <member name="M:libffmpeg.av_register_hwaccel(libffmpeg.AVHWAccel*)">
  1735. Register the hardware accelerator hwaccel.
  1736. </member>
  1737. <member name="M:libffmpeg.av_log_ask_for_sample(System.Void*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,BTEllipsis)">
  1738. Log a generic warning message asking for a sample. This function is
  1739. intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
  1740. only, and would normally not be used by applications.
  1741. @param[in] avc a pointer to an arbitrary struct of which the first field is
  1742. a pointer to an AVClass struct
  1743. @param[in] msg string containing an optional message, or NULL if no message
  1744. </member>
  1745. <member name="M:libffmpeg.av_log_missing_feature(System.Void*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  1746. Log a generic warning message about a missing feature. This function is
  1747. intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
  1748. only, and would normally not be used by applications.
  1749. @param[in] avc a pointer to an arbitrary struct of which the first field is
  1750. a pointer to an AVClass struct
  1751. @param[in] feature string containing the name of the missing feature
  1752. @param[in] want_sample indicates if samples are wanted which exhibit this feature.
  1753. If want_sample is non-zero, additional verbage will be added to the log
  1754. message which tells the user how to report samples to the development
  1755. mailing list.
  1756. </member>
  1757. <member name="M:libffmpeg.av_xiphlacing(System.Byte*,System.UInt32)">
  1758. Encode extradata length to a buffer. Used by xiph codecs.
  1759. @param s buffer to write to; must be at least (v/255+1) bytes long
  1760. @param v size of extradata in bytes
  1761. @return number of bytes written to the buffer.
  1762. </member>
  1763. <member name="M:libffmpeg.av_picture_pad(libffmpeg.AVPicture*,libffmpeg.AVPicture!System.Runtime.CompilerServices.IsConst*,System.Int32,System.Int32,libffmpeg.PixelFormat,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32*)">
  1764. Pad image.
  1765. </member>
  1766. <member name="M:libffmpeg.av_picture_crop(libffmpeg.AVPicture*,libffmpeg.AVPicture!System.Runtime.CompilerServices.IsConst*,libffmpeg.PixelFormat,System.Int32,System.Int32)">
  1767. Crop image top and left side.
  1768. </member>
  1769. <member name="M:libffmpeg.av_picture_copy(libffmpeg.AVPicture*,libffmpeg.AVPicture!System.Runtime.CompilerServices.IsConst*,libffmpeg.PixelFormat,System.Int32,System.Int32)">
  1770. Copy image src to dst. Wraps av_picture_data_copy() above.
  1771. </member>
  1772. <member name="M:libffmpeg.av_fast_padded_malloc(System.Void*,System.UInt32*,System.UInt32)">
  1773. Same behaviour av_fast_malloc but the buffer has additional
  1774. FF_INPUT_PADDING_SIZE at the end which will will always be 0.
  1775. In addition the whole buffer will initially and after resizes
  1776. be 0-initialized so that no uninitialized data will ever appear.
  1777. </member>
  1778. <member name="M:libffmpeg.av_fast_malloc(System.Void*,System.UInt32*,System.UInt32)">
  1779. Allocate a buffer, reusing the given one if large enough.
  1780. Contrary to av_fast_realloc the current buffer contents might not be
  1781. preserved and on error the old buffer is freed, thus no special
  1782. handling to avoid memleaks is necessary.
  1783. @param ptr pointer to pointer to already allocated buffer, overwritten with pointer to new buffer
  1784. @param size size of the buffer *ptr points to
  1785. @param min_size minimum size of *ptr buffer after returning, *ptr will be NULL and
  1786. *size 0 if an error occurred.
  1787. </member>
  1788. <member name="M:libffmpeg.av_fast_realloc(System.Void*,System.UInt32*,System.UInt32)">
  1789. Reallocate the given block if it is not large enough, otherwise do nothing.
  1790. @see av_realloc
  1791. </member>
  1792. <member name="F:libffmpeg.AVCodecParserContext.last_pos">
  1793. Previous frame byte position.
  1794. </member>
  1795. <member name="F:libffmpeg.AVCodecParserContext.pos">
  1796. Byte position of currently parsed frame in stream.
  1797. </member>
  1798. <member name="F:libffmpeg.AVCodecParserContext.cur_frame_pos">
  1799. Position of the packet in file.
  1800. Analogous to cur_frame_pts/dts
  1801. </member>
  1802. <member name="F:libffmpeg.AVCodecParserContext.pts_dts_delta">
  1803. Presentation delay of current frame in units of AVCodecContext.time_base.
  1804. Set to INT_MIN when dts_sync_point unused. Otherwise, it must
  1805. contain valid non-negative timestamp delta (presentation time of a frame
  1806. must not lie in the past).
  1807. This delay represents the difference between decoding and presentation
  1808. time of the frame.
  1809. For example, this corresponds to H.264 dpb_output_delay.
  1810. </member>
  1811. <member name="F:libffmpeg.AVCodecParserContext.dts_ref_dts_delta">
  1812. Offset of the current timestamp against last timestamp sync point in
  1813. units of AVCodecContext.time_base.
  1814. Set to INT_MIN when dts_sync_point unused. Otherwise, it must
  1815. contain a valid timestamp offset.
  1816. Note that the timestamp of sync point has usually a nonzero
  1817. dts_ref_dts_delta, which refers to the previous sync point. Offset of
  1818. the next frame after timestamp sync point will be usually 1.
  1819. For example, this corresponds to H.264 cpb_removal_delay.
  1820. </member>
  1821. <member name="F:libffmpeg.AVCodecParserContext.convergence_duration">
  1822. Time difference in stream time base units from the pts of this
  1823. packet to the point at which the output from the decoder has converged
  1824. independent from the availability of previous frames. That is, the
  1825. frames are virtually identical no matter if decoding started from
  1826. the very first frame or from this keyframe.
  1827. Is AV_NOPTS_VALUE if unknown.
  1828. This field is not the display duration of the current frame.
  1829. This field has no meaning if the packet does not have AV_PKT_FLAG_KEY
  1830. set.
  1831. The purpose of this field is to allow seeking in streams that have no
  1832. keyframes in the conventional sense. It corresponds to the
  1833. recovery point SEI in H.264 and match_time_delta in NUT. It is also
  1834. essential for some types of subtitle streams to ensure that all
  1835. subtitles are correctly displayed after seeking.
  1836. </member>
  1837. <member name="F:libffmpeg.AVCodecParserContext.key_frame">
  1838. Set by parser to 1 for key frames and 0 for non-key frames.
  1839. It is initialized to -1, so if the parser doesn't set this flag,
  1840. old-style fallback using AV_PICTURE_TYPE_I picture type as key frames
  1841. will be used.
  1842. </member>
  1843. <member name="F:libffmpeg.AVCodecParserContext.offset">
  1844. Set if the parser has a valid file offset
  1845. </member>
  1846. <member name="F:libffmpeg.AVCodecParserContext.repeat_pict">
  1847. This field is used for proper frame duration computation in lavf.
  1848. It signals, how much longer the frame duration of the current frame
  1849. is compared to normal frame duration.
  1850. frame_duration = (1 + repeat_pict) * time_base
  1851. It is used by codecs like H.264 to display telecined material.
  1852. </member>
  1853. <member name="M:libffmpeg.av_get_bits_per_sample_format(libffmpeg.AVSampleFormat)">
  1854. @deprecated Use av_get_bytes_per_sample() instead.
  1855. </member>
  1856. <member name="M:libffmpeg.av_get_bits_per_sample(libffmpeg.CodecID)">
  1857. Return codec bits per sample.
  1858. @param[in] codec_id the codec
  1859. @return Number of bits per sample or zero if unknown for the given codec.
  1860. </member>
  1861. <member name="M:libffmpeg.av_get_pict_type_char(System.Int32)">
  1862. Return a single letter to describe the given picture type pict_type.
  1863. @param[in] pict_type the picture type
  1864. @return A single character representing the picture type.
  1865. @deprecated Use av_get_picture_type_char() instead.
  1866. </member>
  1867. <member name="M:libffmpeg.avcodec_flush_buffers(libffmpeg.AVCodecContext*)">
  1868. Flush buffers, should be called when seeking or when switching to a different stream.
  1869. </member>
  1870. <member name="M:libffmpeg.avcodec_register_all">
  1871. Register all the codecs, parsers and bitstream filters which were enabled at
  1872. configuration time. If you do not call this function you can select exactly
  1873. which formats you want to support, by using the individual registration
  1874. functions.
  1875. @see avcodec_register
  1876. @see av_register_codec_parser
  1877. @see av_register_bitstream_filter
  1878. </member>
  1879. <member name="M:libffmpeg.avcodec_encode_video(libffmpeg.AVCodecContext*,System.Byte*,System.Int32,libffmpeg.AVFrame!System.Runtime.CompilerServices.IsConst*)">
  1880. Encode a video frame from pict into buf.
  1881. The input picture should be
  1882. stored using a specific format, namely avctx.pix_fmt.
  1883. @param avctx the codec context
  1884. @param[out] buf the output buffer for the bitstream of encoded frame
  1885. @param[in] buf_size the size of the output buffer in bytes
  1886. @param[in] pict the input picture to encode
  1887. @return On error a negative value is returned, on success zero or the number
  1888. of bytes used from the output buffer.
  1889. </member>
  1890. <member name="M:libffmpeg.avcodec_fill_audio_frame(libffmpeg.AVFrame*,System.Int32,libffmpeg.AVSampleFormat,System.Byte!System.Runtime.CompilerServices.IsConst*,System.Int32,System.Int32)">
  1891. Fill audio frame data and linesize.
  1892. AVFrame extended_data channel pointers are allocated if necessary for
  1893. planar audio.
  1894. @param frame the AVFrame
  1895. frame-&gt;nb_samples must be set prior to calling the
  1896. function. This function fills in frame-&gt;data,
  1897. frame-&gt;extended_data, frame-&gt;linesize[0].
  1898. @param nb_channels channel count
  1899. @param sample_fmt sample format
  1900. @param buf buffer to use for frame data
  1901. @param buf_size size of buffer
  1902. @param align plane size sample alignment
  1903. @return 0 on success, negative error code on failure
  1904. </member>
  1905. <member name="M:libffmpeg.avcodec_encode_audio2(libffmpeg.AVCodecContext*,libffmpeg.AVPacket*,libffmpeg.AVFrame!System.Runtime.CompilerServices.IsConst*,System.Int32*)">
  1906. Encode a frame of audio.
  1907. Takes input samples from frame and writes the next output packet, if
  1908. available, to avpkt. The output packet does not necessarily contain data for
  1909. the most recent frame, as encoders can delay, split, and combine input frames
  1910. internally as needed.
  1911. @param avctx codec context
  1912. @param avpkt output AVPacket.
  1913. The user can supply an output buffer by setting
  1914. avpkt-&gt;data and avpkt-&gt;size prior to calling the
  1915. function, but if the size of the user-provided data is not
  1916. large enough, encoding will fail. All other AVPacket fields
  1917. will be reset by the encoder using av_init_packet(). If
  1918. avpkt-&gt;data is NULL, the encoder will allocate it.
  1919. The encoder will set avpkt-&gt;size to the size of the
  1920. output packet.
  1921. @param[in] frame AVFrame containing the raw audio data to be encoded.
  1922. May be NULL when flushing an encoder that has the
  1923. CODEC_CAP_DELAY capability set.
  1924. There are 2 codec capabilities that affect the allowed
  1925. values of frame-&gt;nb_samples.
  1926. If CODEC_CAP_SMALL_LAST_FRAME is set, then only the final
  1927. frame may be smaller than avctx-&gt;frame_size, and all other
  1928. frames must be equal to avctx-&gt;frame_size.
  1929. If CODEC_CAP_VARIABLE_FRAME_SIZE is set, then each frame
  1930. can have any number of samples.
  1931. If neither is set, frame-&gt;nb_samples must be equal to
  1932. avctx-&gt;frame_size for all frames.
  1933. @param[out] got_packet_ptr This field is set to 1 by libavcodec if the
  1934. output packet is non-empty, and to 0 if it is
  1935. empty. If the function returns an error, the
  1936. packet can be assumed to be invalid, and the
  1937. value of got_packet_ptr is undefined and should
  1938. not be used.
  1939. @return 0 on success, negative error code on failure
  1940. </member>
  1941. <member name="M:libffmpeg.avcodec_encode_audio(libffmpeg.AVCodecContext*,System.Byte*,System.Int32,System.Int16!System.Runtime.CompilerServices.IsConst*)">
  1942. Encode an audio frame from samples into buf.
  1943. @deprecated Use avcodec_encode_audio2 instead.
  1944. @note The output buffer should be at least FF_MIN_BUFFER_SIZE bytes large.
  1945. However, for codecs with avctx-&gt;frame_size equal to 0 (e.g. PCM) the user
  1946. will know how much space is needed because it depends on the value passed
  1947. in buf_size as described below. In that case a lower value can be used.
  1948. @param avctx the codec context
  1949. @param[out] buf the output buffer
  1950. @param[in] buf_size the output buffer size
  1951. @param[in] samples the input buffer containing the samples
  1952. The number of samples read from this buffer is frame_size*channels,
  1953. both of which are defined in avctx.
  1954. For codecs which have avctx-&gt;frame_size equal to 0 (e.g. PCM) the number of
  1955. samples read from samples is equal to:
  1956. buf_size * 8 / (avctx-&gt;channels * av_get_bits_per_sample(avctx-&gt;codec_id))
  1957. This also implies that av_get_bits_per_sample() must not return 0 for these
  1958. codecs.
  1959. @return On error a negative value is returned, on success zero or the number
  1960. of bytes used to encode the data read from the input buffer.
  1961. </member>
  1962. <member name="M:libffmpeg.avsubtitle_free(libffmpeg.AVSubtitle*)">
  1963. Free all allocated data in the given subtitle struct.
  1964. @param sub AVSubtitle to free.
  1965. </member>
  1966. <member name="M:libffmpeg.avcodec_decode_subtitle2(libffmpeg.AVCodecContext*,libffmpeg.AVSubtitle*,System.Int32*,libffmpeg.AVPacket*)">
  1967. * Decode a subtitle message.
  1968. * Return a negative value on error, otherwise return the number of bytes used.
  1969. * If no subtitle could be decompressed, got_sub_ptr is zero.
  1970. * Otherwise, the subtitle is stored in *sub.
  1971. * Note that CODEC_CAP_DR1 is not available for subtitle codecs. This is for
  1972. * simplicity, because the performance difference is expect to be negligible
  1973. * and reusing a get_buffer written for video codecs would probably perform badly
  1974. * due to a potentially very different allocation pattern.
  1975. *
  1976. * @param avctx the codec context
  1977. * @param[out] sub The AVSubtitle in which the decoded subtitle will be stored, must be
  1978. freed with avsubtitle_free if *got_sub_ptr is set.
  1979. * @param[in,out] got_sub_ptr Zero if no subtitle could be decompressed, otherwise, it is nonzero.
  1980. * @param[in] avpkt The input AVPacket containing the input buffer.
  1981. </member>
  1982. <member name="M:libffmpeg.avcodec_decode_audio4(libffmpeg.AVCodecContext*,libffmpeg.AVFrame*,System.Int32*,libffmpeg.AVPacket*)">
  1983. Decode the audio frame of size avpkt-&gt;size from avpkt-&gt;data into frame.
  1984. Some decoders may support multiple frames in a single AVPacket. Such
  1985. decoders would then just decode the first frame. In this case,
  1986. avcodec_decode_audio4 has to be called again with an AVPacket containing
  1987. the remaining data in order to decode the second frame, etc...
  1988. Even if no frames are returned, the packet needs to be fed to the decoder
  1989. with remaining data until it is completely consumed or an error occurs.
  1990. @warning The input buffer, avpkt-&gt;data must be FF_INPUT_BUFFER_PADDING_SIZE
  1991. larger than the actual read bytes because some optimized bitstream
  1992. readers read 32 or 64 bits at once and could read over the end.
  1993. @note You might have to align the input buffer. The alignment requirements
  1994. depend on the CPU and the decoder.
  1995. @param avctx the codec context
  1996. @param[out] frame The AVFrame in which to store decoded audio samples.
  1997. Decoders request a buffer of a particular size by setting
  1998. AVFrame.nb_samples prior to calling get_buffer(). The
  1999. decoder may, however, only utilize part of the buffer by
  2000. setting AVFrame.nb_samples to a smaller value in the
  2001. output frame.
  2002. @param[out] got_frame_ptr Zero if no frame could be decoded, otherwise it is
  2003. non-zero.
  2004. @param[in] avpkt The input AVPacket containing the input buffer.
  2005. At least avpkt-&gt;data and avpkt-&gt;size should be set. Some
  2006. decoders might also require additional fields to be set.
  2007. @return A negative error code is returned if an error occurred during
  2008. decoding, otherwise the number of bytes consumed from the input
  2009. AVPacket is returned.
  2010. </member>
  2011. <member name="M:libffmpeg.avcodec_decode_audio3(libffmpeg.AVCodecContext*,System.Int16*,System.Int32*,libffmpeg.AVPacket*)">
  2012. Wrapper function which calls avcodec_decode_audio4.
  2013. @deprecated Use avcodec_decode_audio4 instead.
  2014. Decode the audio frame of size avpkt-&gt;size from avpkt-&gt;data into samples.
  2015. Some decoders may support multiple frames in a single AVPacket, such
  2016. decoders would then just decode the first frame. In this case,
  2017. avcodec_decode_audio3 has to be called again with an AVPacket that contains
  2018. the remaining data in order to decode the second frame etc.
  2019. If no frame
  2020. could be outputted, frame_size_ptr is zero. Otherwise, it is the
  2021. decompressed frame size in bytes.
  2022. @warning You must set frame_size_ptr to the allocated size of the
  2023. output buffer before calling avcodec_decode_audio3().
  2024. @warning The input buffer must be FF_INPUT_BUFFER_PADDING_SIZE larger than
  2025. the actual read bytes because some optimized bitstream readers read 32 or 64
  2026. bits at once and could read over the end.
  2027. @warning The end of the input buffer avpkt-&gt;data should be set to 0 to ensure that
  2028. no overreading happens for damaged MPEG streams.
  2029. @warning You must not provide a custom get_buffer() when using
  2030. avcodec_decode_audio3(). Doing so will override it with
  2031. avcodec_default_get_buffer. Use avcodec_decode_audio4() instead,
  2032. which does allow the application to provide a custom get_buffer().
  2033. @note You might have to align the input buffer avpkt-&gt;data and output buffer
  2034. samples. The alignment requirements depend on the CPU: On some CPUs it isn't
  2035. necessary at all, on others it won't work at all if not aligned and on others
  2036. it will work but it will have an impact on performance.
  2037. In practice, avpkt-&gt;data should have 4 byte alignment at minimum and
  2038. samples should be 16 byte aligned unless the CPU doesn't need it
  2039. (AltiVec and SSE do).
  2040. @note Codecs which have the CODEC_CAP_DELAY capability set have a delay
  2041. between input and output, these need to be fed with avpkt-&gt;data=NULL,
  2042. avpkt-&gt;size=0 at the end to return the remaining frames.
  2043. @param avctx the codec context
  2044. @param[out] samples the output buffer, sample type in avctx-&gt;sample_fmt
  2045. If the sample format is planar, each channel plane will
  2046. be the same size, with no padding between channels.
  2047. @param[in,out] frame_size_ptr the output buffer size in bytes
  2048. @param[in] avpkt The input AVPacket containing the input buffer.
  2049. You can create such packet with av_init_packet() and by then setting
  2050. data and size, some decoders might in addition need other fields.
  2051. All decoders are designed to use the least fields possible though.
  2052. @return On error a negative value is returned, otherwise the number of bytes
  2053. used or zero if no frame data was decompressed (used) from the input AVPacket.
  2054. </member>
  2055. <member name="M:libffmpeg.avcodec_thread_init(libffmpeg.AVCodecContext*,System.Int32)">
  2056. @deprecated Set s-&gt;thread_count before calling avcodec_open2() instead of calling this.
  2057. </member>
  2058. <member name="M:libffmpeg.avcodec_align_dimensions2(libffmpeg.AVCodecContext*,System.Int32*,System.Int32*,System.Int32*)">
  2059. Modify width and height values so that they will result in a memory
  2060. buffer that is acceptable for the codec if you also ensure that all
  2061. line sizes are a multiple of the respective linesize_align[i].
  2062. May only be used if a codec with CODEC_CAP_DR1 has been opened.
  2063. If CODEC_FLAG_EMU_EDGE is not set, the dimensions must have been increased
  2064. according to avcodec_get_edge_width() before.
  2065. </member>
  2066. <member name="M:libffmpeg.avcodec_align_dimensions(libffmpeg.AVCodecContext*,System.Int32*,System.Int32*)">
  2067. Modify width and height values so that they will result in a memory
  2068. buffer that is acceptable for the codec if you do not use any horizontal
  2069. padding.
  2070. May only be used if a codec with CODEC_CAP_DR1 has been opened.
  2071. If CODEC_FLAG_EMU_EDGE is not set, the dimensions must have been increased
  2072. according to avcodec_get_edge_width() before.
  2073. </member>
  2074. <member name="M:libffmpeg.avcodec_get_edge_width">
  2075. Return the amount of padding in pixels which the get_buffer callback must
  2076. provide around the edge of the image for codecs which do not have the
  2077. CODEC_FLAG_EMU_EDGE flag.
  2078. @return Required padding in pixels.
  2079. </member>
  2080. <member name="M:libffmpeg.avcodec_alloc_frame">
  2081. Allocate an AVFrame and set its fields to default values. The resulting
  2082. struct can be deallocated by simply calling av_free().
  2083. @return An AVFrame filled with default values or NULL on failure.
  2084. @see avcodec_get_frame_defaults
  2085. </member>
  2086. <member name="M:libffmpeg.avcodec_get_frame_defaults(libffmpeg.AVFrame*)">
  2087. Set the fields of the given AVFrame to default values.
  2088. @param pic The AVFrame of which the fields should be set to default values.
  2089. </member>
  2090. <member name="M:libffmpeg.avcodec_copy_context(libffmpeg.AVCodecContext*,libffmpeg.AVCodecContext!System.Runtime.CompilerServices.IsConst*)">
  2091. Copy the settings of the source AVCodecContext into the destination
  2092. AVCodecContext. The resulting destination codec context will be
  2093. unopened, i.e. you are required to call avcodec_open2() before you
  2094. can use this AVCodecContext to decode/encode video/audio data.
  2095. @param dest target codec context, should be initialized with
  2096. avcodec_alloc_context3(), but otherwise uninitialized
  2097. @param src source codec context
  2098. @return AVERROR() on error (e.g. memory allocation error), 0 on success
  2099. </member>
  2100. <member name="M:libffmpeg.avcodec_alloc_context3(libffmpeg.AVCodec*)">
  2101. Allocate an AVCodecContext and set its fields to default values. The
  2102. resulting struct can be deallocated by simply calling av_free().
  2103. @param codec if non-NULL, allocate private data and initialize defaults
  2104. for the given codec. It is illegal to then call avcodec_open2()
  2105. with a different codec.
  2106. @return An AVCodecContext filled with default values or NULL on failure.
  2107. @see avcodec_get_context_defaults
  2108. </member>
  2109. <member name="M:libffmpeg.avcodec_alloc_context2(libffmpeg.AVMediaType)">
  2110. THIS FUNCTION IS NOT YET PART OF THE PUBLIC API!
  2111. * we WILL change its arguments and name a few times!
  2112. </member>
  2113. <member name="M:libffmpeg.avcodec_alloc_context">
  2114. Allocate an AVCodecContext and set its fields to default values. The
  2115. resulting struct can be deallocated by simply calling av_free().
  2116. @return An AVCodecContext filled with default values or NULL on failure.
  2117. @see avcodec_get_context_defaults
  2118. @deprecated use avcodec_alloc_context3()
  2119. </member>
  2120. <member name="M:libffmpeg.avcodec_get_context_defaults3(libffmpeg.AVCodecContext*,libffmpeg.AVCodec*)">
  2121. Set the fields of the given AVCodecContext to default values corresponding
  2122. to the given codec (defaults may be codec-dependent).
  2123. Do not call this function if a non-NULL codec has been passed
  2124. to avcodec_alloc_context3() that allocated this AVCodecContext.
  2125. If codec is non-NULL, it is illegal to call avcodec_open2() with a
  2126. different codec on this AVCodecContext.
  2127. </member>
  2128. <member name="M:libffmpeg.avcodec_get_context_defaults2(libffmpeg.AVCodecContext*,libffmpeg.AVMediaType)">
  2129. THIS FUNCTION IS NOT YET PART OF THE PUBLIC API!
  2130. * we WILL change its arguments and name a few times!
  2131. </member>
  2132. <member name="M:libffmpeg.avcodec_get_context_defaults(libffmpeg.AVCodecContext*)">
  2133. Set the fields of the given AVCodecContext to default values.
  2134. @param s The AVCodecContext of which the fields should be set to default values.
  2135. @deprecated use avcodec_get_context_defaults3
  2136. </member>
  2137. <member name="M:libffmpeg.av_get_profile_name(libffmpeg.AVCodec!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  2138. Return a name for the specified profile, if available.
  2139. @param codec the codec that is searched for the given profile
  2140. @param profile the profile value for which a name is requested
  2141. @return A name for the profile if found, NULL otherwise.
  2142. </member>
  2143. <member name="M:libffmpeg.avcodec_find_decoder_by_name(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  2144. Find a registered decoder with the specified name.
  2145. @param name name of the requested decoder
  2146. @return A decoder if one was found, NULL otherwise.
  2147. </member>
  2148. <member name="M:libffmpeg.avcodec_find_decoder(libffmpeg.CodecID)">
  2149. Find a registered decoder with a matching codec ID.
  2150. @param id CodecID of the requested decoder
  2151. @return A decoder if one was found, NULL otherwise.
  2152. </member>
  2153. <member name="M:libffmpeg.avcodec_find_encoder_by_name(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  2154. Find a registered encoder with the specified name.
  2155. @param name name of the requested encoder
  2156. @return An encoder if one was found, NULL otherwise.
  2157. </member>
  2158. <member name="M:libffmpeg.avcodec_find_encoder(libffmpeg.CodecID)">
  2159. Find a registered encoder with a matching codec ID.
  2160. @param id CodecID of the requested encoder
  2161. @return An encoder if one was found, NULL otherwise.
  2162. </member>
  2163. <member name="M:libffmpeg.avcodec_register(libffmpeg.AVCodec*)">
  2164. Register the codec codec and initialize libavcodec.
  2165. @warning either this function or avcodec_register_all() must be called
  2166. before any other libavcodec functions.
  2167. @see avcodec_register_all()
  2168. </member>
  2169. <member name="M:libffmpeg.avcodec_init">
  2170. @deprecated this function is called automatically from avcodec_register()
  2171. and avcodec_register_all(), there is no need to call it manually
  2172. </member>
  2173. <member name="M:libffmpeg.avcodec_license">
  2174. Return the libavcodec license.
  2175. </member>
  2176. <member name="M:libffmpeg.avcodec_configuration">
  2177. Return the libavcodec build-time configuration.
  2178. </member>
  2179. <member name="M:libffmpeg.avcodec_version">
  2180. Return the LIBAVCODEC_VERSION_INT constant.
  2181. </member>
  2182. <member name="M:libffmpeg.av_codec_next(libffmpeg.AVCodec*)">
  2183. If c is NULL, returns the first registered codec,
  2184. if c is non-NULL, returns the next registered codec after c,
  2185. or NULL if c is the last one.
  2186. </member>
  2187. <member name="M:libffmpeg.img_get_alpha_info(libffmpeg.AVPicture!System.Runtime.CompilerServices.IsConst*,libffmpeg.PixelFormat,System.Int32,System.Int32)">
  2188. Tell if an image really has transparent alpha values.
  2189. @return ored mask of FF_ALPHA_xxx constants
  2190. </member>
  2191. <member name="M:libffmpeg.avcodec_get_pix_fmt_loss(libffmpeg.PixelFormat,libffmpeg.PixelFormat,System.Int32)">
  2192. Compute what kind of losses will occur when converting from one specific
  2193. pixel format to another.
  2194. When converting from one pixel format to another, information loss may occur.
  2195. For example, when converting from RGB24 to GRAY, the color information will
  2196. be lost. Similarly, other losses occur when converting from some formats to
  2197. other formats. These losses can involve loss of chroma, but also loss of
  2198. resolution, loss of color depth, loss due to the color space conversion, loss
  2199. of the alpha bits or loss due to color quantization.
  2200. avcodec_get_fix_fmt_loss() informs you about the various types of losses
  2201. which will occur when converting from one pixel format to another.
  2202. @param[in] dst_pix_fmt destination pixel format
  2203. @param[in] src_pix_fmt source pixel format
  2204. @param[in] has_alpha Whether the source pixel format alpha channel is used.
  2205. @return Combination of flags informing you what kind of losses will occur
  2206. (maximum loss for an invalid dst_pix_fmt).
  2207. </member>
  2208. <member name="M:libffmpeg.av_get_codec_tag_string(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.UInt32,System.UInt32)">
  2209. Put a string representing the codec tag codec_tag in buf.
  2210. @param buf_size size in bytes of buf
  2211. @return the length of the string that would have been generated if
  2212. enough space had been available, excluding the trailing null
  2213. </member>
  2214. <member name="M:libffmpeg.avcodec_pix_fmt_to_codec_tag(libffmpeg.PixelFormat)">
  2215. Return a value representing the fourCC code associated to the
  2216. pixel format pix_fmt, or 0 if no associated fourCC code can be
  2217. found.
  2218. </member>
  2219. <member name="M:libffmpeg.avcodec_get_pix_fmt_name(libffmpeg.PixelFormat)">
  2220. Return the short name for a pixel format.
  2221. \see av_get_pix_fmt(), av_get_pix_fmt_string().
  2222. @deprecated Deprecated in favor of av_get_pix_fmt_name().
  2223. </member>
  2224. <member name="M:libffmpeg.avcodec_get_name(libffmpeg.CodecID)">
  2225. Get the name of a codec.
  2226. @return a static string identifying the codec; never NULL
  2227. </member>
  2228. <member name="M:libffmpeg.avpicture_get_size(libffmpeg.PixelFormat,System.Int32,System.Int32)">
  2229. Calculate the size in bytes that a picture of the given width and height
  2230. would occupy if stored in the given picture format.
  2231. Note that this returns the size of a compact representation as generated
  2232. by avpicture_layout(), which can be smaller than the size required for e.g.
  2233. avpicture_fill().
  2234. @param pix_fmt the given picture format
  2235. @param width the width of the image
  2236. @param height the height of the image
  2237. @return Image data size in bytes or -1 on error (e.g. too large dimensions).
  2238. </member>
  2239. <member name="M:libffmpeg.avpicture_layout(libffmpeg.AVPicture!System.Runtime.CompilerServices.IsConst*,libffmpeg.PixelFormat,System.Int32,System.Int32,System.Byte*,System.Int32)">
  2240. Copy pixel data from an AVPicture into a buffer.
  2241. The data is stored compactly, without any gaps for alignment or padding
  2242. which may be applied by avpicture_fill().
  2243. @see avpicture_get_size()
  2244. @param[in] src AVPicture containing image data
  2245. @param[in] pix_fmt The format in which the picture data is stored.
  2246. @param[in] width the width of the image in pixels.
  2247. @param[in] height the height of the image in pixels.
  2248. @param[out] dest A buffer into which picture data will be copied.
  2249. @param[in] dest_size The size of 'dest'.
  2250. @return The number of bytes written to dest, or a negative value (error code) on error.
  2251. </member>
  2252. <member name="M:libffmpeg.avpicture_fill(libffmpeg.AVPicture*,System.Byte*,libffmpeg.PixelFormat,System.Int32,System.Int32)">
  2253. Fill in the AVPicture fields.
  2254. The fields of the given AVPicture are filled in by using the 'ptr' address
  2255. which points to the image data buffer. Depending on the specified picture
  2256. format, one or multiple image data pointers and line sizes will be set.
  2257. If a planar format is specified, several pointers will be set pointing to
  2258. the different picture planes and the line sizes of the different planes
  2259. will be stored in the lines_sizes array.
  2260. Call with ptr == NULL to get the required size for the ptr buffer.
  2261. To allocate the buffer and fill in the AVPicture fields in one call,
  2262. use avpicture_alloc().
  2263. @param picture AVPicture whose fields are to be filled in
  2264. @param ptr Buffer which will contain or contains the actual image data
  2265. @param pix_fmt The format in which the picture data is stored.
  2266. @param width the width of the image in pixels
  2267. @param height the height of the image in pixels
  2268. @return size of the image data in bytes
  2269. </member>
  2270. <member name="M:libffmpeg.avpicture_free(libffmpeg.AVPicture*)">
  2271. Free a picture previously allocated by avpicture_alloc().
  2272. The data buffer used by the AVPicture is freed, but the AVPicture structure
  2273. itself is not.
  2274. @param picture the AVPicture to be freed
  2275. </member>
  2276. <member name="M:libffmpeg.avpicture_alloc(libffmpeg.AVPicture*,libffmpeg.PixelFormat,System.Int32,System.Int32)">
  2277. Allocate memory for a picture. Call avpicture_free() to free it.
  2278. @see avpicture_fill()
  2279. @param picture the picture to be filled in
  2280. @param pix_fmt the format of the picture
  2281. @param width the width of the picture
  2282. @param height the height of the picture
  2283. @return zero if successful, a negative value if not
  2284. </member>
  2285. <member name="M:libffmpeg.av_resample_compensate(libffmpeg.AVResampleContext*,System.Int32,System.Int32)">
  2286. Compensate samplerate/timestamp drift. The compensation is done by changing
  2287. the resampler parameters, so no audible clicks or similar distortions occur
  2288. @param compensation_distance distance in output samples over which the compensation should be performed
  2289. @param sample_delta number of output samples which should be output less
  2290. example: av_resample_compensate(c, 10, 500)
  2291. here instead of 510 samples only 500 samples would be output
  2292. note, due to rounding the actual compensation might be slightly different,
  2293. especially if the compensation_distance is large and the in_rate used during init is small
  2294. </member>
  2295. <member name="M:libffmpeg.av_resample(libffmpeg.AVResampleContext*,System.Int16*,System.Int16*,System.Int32*,System.Int32,System.Int32,System.Int32)">
  2296. Resample an array of samples using a previously configured context.
  2297. @param src an array of unconsumed samples
  2298. @param consumed the number of samples of src which have been consumed are returned here
  2299. @param src_size the number of unconsumed samples available
  2300. @param dst_size the amount of space in samples available in dst
  2301. @param update_ctx If this is 0 then the context will not be modified, that way several channels can be resampled with the same context.
  2302. @return the number of samples written in dst or -1 if an error occurred
  2303. </member>
  2304. <member name="T:libffmpeg.AVResampleContext">
  2305. * Initialize an audio resampler.
  2306. * Note, if either rate is not an integer then simply scale both rates up so they are.
  2307. * @param filter_length length of each FIR filter in the filterbank relative to the cutoff freq
  2308. * @param log2_phase_count log2 of the number of entries in the polyphase filterbank
  2309. * @param linear If 1 then the used FIR filter will be linearly interpolated
  2310. between the 2 closest, if 0 the closest will be used
  2311. * @param cutoff cutoff frequency, 1.0 corresponds to half the output sampling rate
  2312. </member>
  2313. <member name="M:libffmpeg.audio_resample_close(libffmpeg.ReSampleContext*)">
  2314. Free resample context.
  2315. @param s a non-NULL pointer to a resample context previously
  2316. created with av_audio_resample_init()
  2317. </member>
  2318. <member name="M:libffmpeg.av_audio_resample_init(System.Int32,System.Int32,System.Int32,System.Int32,libffmpeg.AVSampleFormat,libffmpeg.AVSampleFormat,System.Int32,System.Int32,System.Int32,System.Double)">
  2319. * Initialize audio resampling context.
  2320. *
  2321. * @param output_channels number of output channels
  2322. * @param input_channels number of input channels
  2323. * @param output_rate output sample rate
  2324. * @param input_rate input sample rate
  2325. * @param sample_fmt_out requested output sample format
  2326. * @param sample_fmt_in input sample format
  2327. * @param filter_length length of each FIR filter in the filterbank relative to the cutoff frequency
  2328. * @param log2_phase_count log2 of the number of entries in the polyphase filterbank
  2329. * @param linear if 1 then the used FIR filter will be linearly interpolated
  2330. between the 2 closest, if 0 the closest will be used
  2331. * @param cutoff cutoff frequency, 1.0 corresponds to half the output sampling rate
  2332. * @return allocated ReSampleContext, NULL if error occurred
  2333. </member>
  2334. <member name="M:libffmpeg.av_packet_get_side_data(libffmpeg.AVPacket*,libffmpeg.AVPacketSideDataType,System.Int32*)">
  2335. Get side information from packet.
  2336. @param pkt packet
  2337. @param type desired side information type
  2338. @param size pointer for side information size to store (optional)
  2339. @return pointer to data if present or NULL otherwise
  2340. </member>
  2341. <member name="M:libffmpeg.av_packet_new_side_data(libffmpeg.AVPacket*,libffmpeg.AVPacketSideDataType,System.Int32)">
  2342. Allocate new information of a packet.
  2343. @param pkt packet
  2344. @param type side information type
  2345. @param size side information size
  2346. @return pointer to fresh allocated data or NULL otherwise
  2347. </member>
  2348. <member name="M:libffmpeg.av_free_packet(libffmpeg.AVPacket*)">
  2349. Free a packet.
  2350. @param pkt packet to free
  2351. </member>
  2352. <member name="M:libffmpeg.av_dup_packet(libffmpeg.AVPacket*)">
  2353. @warning This is a hack - the packet memory allocation stuff is broken. The
  2354. packet is allocated if it was not really allocated.
  2355. </member>
  2356. <member name="M:libffmpeg.av_grow_packet(libffmpeg.AVPacket*,System.Int32)">
  2357. Increase packet size, correctly zeroing padding
  2358. @param pkt packet
  2359. @param grow_by number of bytes by which to increase the size of the packet
  2360. </member>
  2361. <member name="M:libffmpeg.av_shrink_packet(libffmpeg.AVPacket*,System.Int32)">
  2362. Reduce packet size, correctly zeroing padding
  2363. @param pkt packet
  2364. @param size new size
  2365. </member>
  2366. <member name="M:libffmpeg.av_new_packet(libffmpeg.AVPacket*,System.Int32)">
  2367. Allocate the payload of a packet and initialize its fields with
  2368. default values.
  2369. @param pkt packet
  2370. @param size wanted payload size
  2371. @return 0 if OK, AVERROR_xxx otherwise
  2372. </member>
  2373. <member name="M:libffmpeg.av_init_packet(libffmpeg.AVPacket*)">
  2374. Initialize optional fields of a packet with default values.
  2375. @param pkt packet
  2376. </member>
  2377. <member name="M:libffmpeg.av_destruct_packet(libffmpeg.AVPacket*)">
  2378. Default packet destructor.
  2379. </member>
  2380. <member name="M:libffmpeg.av_destruct_packet_nofree(libffmpeg.AVPacket*)">
  2381. @deprecated use NULL instead
  2382. </member>
  2383. <member name="F:libffmpeg.AVSubtitleRect.ass">
  2384. 0 terminated ASS/SSA compatible event line.
  2385. The pressentation of this is unaffected by the other values in this
  2386. struct.
  2387. </member>
  2388. <member name="F:libffmpeg.AVSubtitleRect.pict">
  2389. data+linesize for the bitmap of this subtitle.
  2390. can be set for text/ass as well once they where rendered
  2391. </member>
  2392. <member name="F:SUBTITLE_ASS">
  2393. Formatted text, the ass field must be set by the decoder and is
  2394. authoritative. pict and text fields may contain approximations.
  2395. </member>
  2396. <member name="F:SUBTITLE_TEXT">
  2397. Plain text, the text field must be set by the decoder and is
  2398. authoritative. ass and pict fields may contain approximations.
  2399. </member>
  2400. <member name="T:libffmpeg.AVPicture">
  2401. four components are given, that's all.
  2402. the last component is alpha
  2403. </member>
  2404. <member name="F:libffmpeg.AVHWAccel.priv_data_size">
  2405. Size of HW accelerator private data.
  2406. Private data is allocated with av_mallocz() before
  2407. AVCodecContext.get_buffer() and deallocated after
  2408. AVCodecContext.release_buffer().
  2409. </member>
  2410. <member name="F:libffmpeg.AVHWAccel.end_frame">
  2411. Called at the end of each frame or field picture.
  2412. The whole picture is parsed at this point and can now be sent
  2413. to the hardware accelerator. This function is mandatory.
  2414. @param avctx the codec context
  2415. @return zero if successful, a negative value otherwise
  2416. </member>
  2417. <member name="F:libffmpeg.AVHWAccel.decode_slice">
  2418. Callback for each slice.
  2419. Meaningful slice information (codec specific) is guaranteed to
  2420. be parsed at this point. This function is mandatory.
  2421. @param avctx the codec context
  2422. @param buf the slice data buffer base
  2423. @param buf_size the size of the slice in bytes
  2424. @return zero if successful, a negative value otherwise
  2425. </member>
  2426. <member name="F:libffmpeg.AVHWAccel.start_frame">
  2427. Called at the beginning of each frame or field picture.
  2428. Meaningful frame information (codec specific) is guaranteed to
  2429. be parsed at this point. This function is mandatory.
  2430. Note that buf can be NULL along with buf_size set to 0.
  2431. Otherwise, this means the whole frame is available at this point.
  2432. @param avctx the codec context
  2433. @param buf the frame data buffer base
  2434. @param buf_size the size of the frame in bytes
  2435. @return zero if successful, a negative value otherwise
  2436. </member>
  2437. <member name="F:libffmpeg.AVHWAccel.capabilities">
  2438. Hardware accelerated codec capabilities.
  2439. see FF_HWACCEL_CODEC_CAP_*
  2440. </member>
  2441. <member name="T:libffmpeg.CodecID">
  2442. Codec implemented by the hardware accelerator.
  2443. See CODEC_ID_xxx
  2444. Forced video codec_id.
  2445. Demuxing: Set by user.
  2446. Forced audio codec_id.
  2447. Demuxing: Set by user.
  2448. Forced subtitle codec_id.
  2449. Demuxing: Set by user.
  2450. @}
  2451. Guess the codec ID based upon muxer and filename.
  2452. Get the CodecID for the given codec tag tag.
  2453. If no codec id is found returns CODEC_ID_NONE.
  2454. @param tags list of supported codec_id-codec_tag pairs, as stored
  2455. in AVInputFormat.codec_tag and AVOutputFormat.codec_tag
  2456. </member>
  2457. <member name="F:libffmpeg.AVHWAccel.name">
  2458. Name of the hardware accelerated codec.
  2459. The name is globally unique among encoders and among decoders (but an
  2460. encoder and a decoder can share the same name).
  2461. </member>
  2462. <member name="F:libffmpeg.AVCodec.encode2">
  2463. Encode data to an AVPacket.
  2464. @param avctx codec context
  2465. @param avpkt output AVPacket (may contain a user-provided buffer)
  2466. @param[in] frame AVFrame containing the raw data to be encoded
  2467. @param[out] got_packet_ptr encoder sets to 0 or 1 to indicate that a
  2468. non-empty packet was returned in avpkt.
  2469. @return 0 on success, negative error code on failure
  2470. </member>
  2471. <member name="F:libffmpeg.AVCodec.init_static_data">
  2472. Initialize codec static data, called from avcodec_register().
  2473. </member>
  2474. <member name="F:libffmpeg.AVCodec.defaults">
  2475. @}
  2476. Private codec-specific defaults.
  2477. </member>
  2478. <member name="F:libffmpeg.AVCodec.update_thread_context">
  2479. Copy necessary context variables from a previous thread context to the current one.
  2480. If not defined, the next thread will start automatically; otherwise, the codec
  2481. must call ff_thread_finish_setup().
  2482. dst and src will (rarely) point to the same context, in which case memcpy should be skipped.
  2483. </member>
  2484. <member name="F:libffmpeg.AVCodec.init_thread_copy">
  2485. @name Frame-level threading support functions
  2486. @{
  2487. If defined, called on thread contexts when they are created.
  2488. If the codec allocates writable tables in init(), re-allocate them here.
  2489. priv_data will be set to a copy of the original.
  2490. </member>
  2491. <member name="F:libffmpeg.AVCodec.long_name">
  2492. Descriptive name for the codec, meant to be more human readable than name.
  2493. You should use the NULL_IF_CONFIG_SMALL() macro to define it.
  2494. </member>
  2495. <member name="F:libffmpeg.AVCodec.flush">
  2496. Flush buffers.
  2497. Will be called when seeking
  2498. </member>
  2499. <member name="F:libffmpeg.AVCodec.capabilities">
  2500. Codec capabilities.
  2501. see CODEC_CAP_*
  2502. </member>
  2503. <member name="F:libffmpeg.AVCodec.name">
  2504. Name of the codec implementation.
  2505. The name is globally unique among encoders and among decoders (but an
  2506. encoder and a decoder can share the same name).
  2507. This is the primary way to find a codec from the user perspective.
  2508. </member>
  2509. <member name="T:libffmpeg.AVCodec">
  2510. AVCodec.
  2511. </member>
  2512. <member name="T:libffmpeg.AVProfile">
  2513. AVProfile.
  2514. </member>
  2515. <member name="F:libffmpeg.AVCodecContext.pts_correction_num_faulty_pts">
  2516. Current statistics for PTS correction.
  2517. - decoding: maintained and used by libavcodec, not intended to be used by user apps
  2518. - encoding: unused
  2519. </member>
  2520. <member name="T:libffmpeg.AVFieldOrder">
  2521. Field order
  2522. * - encoding: set by libavcodec
  2523. * - decoding: Set by libavcodec
  2524. </member>
  2525. <member name="T:libffmpeg.AVCodecInternal">
  2526. Private context used for internal data.
  2527. Unlike priv_data, this is not codec-specific. It is used in general
  2528. libavcodec functions.
  2529. </member>
  2530. <member name="F:libffmpeg.AVCodecContext.err_recognition">
  2531. Error recognition; may misdetect some more or less valid parts as errors.
  2532. - encoding: unused
  2533. - decoding: Set by user.
  2534. </member>
  2535. <member name="T:libffmpeg.AVAudioServiceType">
  2536. Type of service that the audio stream conveys.
  2537. - encoding: Set by user.
  2538. - decoding: Set by libavcodec.
  2539. </member>
  2540. <member name="F:libffmpeg.AVCodecContext.vbv_delay">
  2541. VBV delay coded in the last frame (in periods of a 27 MHz clock).
  2542. Used for compliant TS muxing.
  2543. - encoding: Set by libavcodec.
  2544. - decoding: unused.
  2545. </member>
  2546. <member name="F:libffmpeg.AVCodecContext.thread_safe_callbacks">
  2547. Set by the client if its custom get_buffer() callback can be called
  2548. from another thread, which allows faster multithreaded decoding.
  2549. draw_horiz_band() will be called from other threads regardless of this setting.
  2550. Ignored if the default get_buffer() is used.
  2551. - encoding: Set by user.
  2552. - decoding: Set by user.
  2553. </member>
  2554. <member name="F:libffmpeg.AVCodecContext.active_thread_type">
  2555. Which multithreading methods are in use by the codec.
  2556. - encoding: Set by libavcodec.
  2557. - decoding: Set by libavcodec.
  2558. </member>
  2559. <member name="F:libffmpeg.AVCodecContext.thread_type">
  2560. Which multithreading methods to use.
  2561. Use of FF_THREAD_FRAME will increase decoding delay by one frame per thread,
  2562. so clients which cannot provide future frames should not use it.
  2563. - encoding: Set by user, otherwise the default is used.
  2564. - decoding: Set by user, otherwise the default is used.
  2565. </member>
  2566. <member name="F:libffmpeg.AVCodecContext.is_copy">
  2567. Whether this is a copy of the context which had init() called on it.
  2568. This is used by multithreading - shared tables and picture pointers
  2569. should be freed from the original context only.
  2570. - encoding: Set by libavcodec.
  2571. - decoding: Set by libavcodec.
  2572. @deprecated this field has been moved to an internal context
  2573. </member>
  2574. <member name="F:libffmpeg.AVCodecContext.pkt">
  2575. Current packet as passed into the decoder, to avoid having
  2576. to pass the packet into every function. Currently only valid
  2577. inside lavc and get/release_buffer callbacks.
  2578. - decoding: set by avcodec_decode_*, read by get_buffer() for setting pkt_pts
  2579. - encoding: unused
  2580. </member>
  2581. <member name="F:libffmpeg.AVCodecContext.subtitle_header">
  2582. Header containing style information for text subtitles.
  2583. For SUBTITLE_ASS subtitle type, it should contain the whole ASS
  2584. [Script Info] and [V4+ Styles] section, plus the [Events] line and
  2585. the Format line following. It shouldn't include any Dialogue line.
  2586. - encoding: Set/allocated/freed by user (before avcodec_open2())
  2587. - decoding: Set/allocated/freed by libavcodec (by avcodec_open2())
  2588. </member>
  2589. <member name="F:libffmpeg.AVCodecContext.slices">
  2590. Number of slices.
  2591. Indicates number of picture subdivisions. Used for parallelized
  2592. decoding.
  2593. - encoding: Set by user
  2594. - decoding: unused
  2595. </member>
  2596. <member name="F:libffmpeg.AVCodecContext.lpc_passes">
  2597. Number of passes to use for Cholesky factorization during LPC analysis
  2598. - encoding: Set by user
  2599. - decoding: unused
  2600. </member>
  2601. <member name="F:libffmpeg.AVCodecContext.crf_max">
  2602. Constant rate factor maximum
  2603. With CRF encoding mode and VBV restrictions enabled, prevents quality from being worse
  2604. than crf_max, even if doing so would violate VBV restrictions.
  2605. - encoding: Set by user.
  2606. - decoding: unused
  2607. </member>
  2608. <member name="F:libffmpeg.AVCodecContext.rc_lookahead">
  2609. RC lookahead
  2610. Number of frames for frametype and ratecontrol lookahead
  2611. - encoding: Set by user
  2612. - decoding: unused
  2613. </member>
  2614. <member name="F:libffmpeg.AVCodecContext.psy_trellis">
  2615. PSY trellis
  2616. Strength of psychovisual optimization
  2617. - encoding: Set by user
  2618. - decoding: unused
  2619. </member>
  2620. <member name="F:libffmpeg.AVCodecContext.psy_rd">
  2621. PSY RD
  2622. Strength of psychovisual optimization
  2623. - encoding: Set by user
  2624. - decoding: unused
  2625. </member>
  2626. <member name="F:libffmpeg.AVCodecContext.aq_strength">
  2627. AQ strength
  2628. Reduces blocking and blurring in flat and textured areas.
  2629. - encoding: Set by user
  2630. - decoding: unused
  2631. </member>
  2632. <member name="F:libffmpeg.AVCodecContext.aq_mode">
  2633. AQ mode
  2634. 0: Disabled
  2635. 1: Variance AQ (complexity mask)
  2636. 2: Auto-variance AQ (experimental)
  2637. - encoding: Set by user
  2638. - decoding: unused
  2639. </member>
  2640. <member name="F:libffmpeg.AVCodecContext.weighted_p_pred">
  2641. explicit P-frame weighted prediction analysis method
  2642. 0: off
  2643. 1: fast blind weighting (one reference duplicate with -1 offset)
  2644. 2: smart weighting (full fade detection analysis)
  2645. - encoding: Set by user.
  2646. - decoding: unused
  2647. </member>
  2648. <member name="T:libffmpeg.AVColorRange">
  2649. MPEG vs JPEG YUV range.
  2650. - encoding: Set by user
  2651. - decoding: Set by libavcodec
  2652. </member>
  2653. <member name="T:libffmpeg.AVColorSpace">
  2654. YUV colorspace type.
  2655. - encoding: Set by user
  2656. - decoding: Set by libavcodec
  2657. </member>
  2658. <member name="T:libffmpeg.AVColorTransferCharacteristic">
  2659. Color Transfer Characteristic.
  2660. - encoding: Set by user
  2661. - decoding: Set by libavcodec
  2662. </member>
  2663. <member name="T:libffmpeg.AVColorPrimaries">
  2664. Chromaticity coordinates of the source primaries.
  2665. - encoding: Set by user
  2666. - decoding: Set by libavcodec
  2667. </member>
  2668. <member name="F:libffmpeg.AVCodecContext.hwaccel_context">
  2669. Hardware accelerator context.
  2670. For some hardware accelerators, a global context needs to be
  2671. provided by the user. In that case, this holds display-dependent
  2672. data FFmpeg cannot instantiate itself. Please refer to the
  2673. FFmpeg HW accelerator documentation to know how to fill this
  2674. is. e.g. for VA API, this is a struct vaapi_context.
  2675. - encoding: unused
  2676. - decoding: Set by user
  2677. </member>
  2678. <member name="F:libffmpeg.AVCodecContext.ticks_per_frame">
  2679. For some codecs, the time base is closer to the field rate than the frame rate.
  2680. Most notably, H.264 and MPEG-2 specify time_base as half of frame duration
  2681. if no telecine is used ...
  2682. Set to time_base ticks per frame. Default 1, e.g., H.264/MPEG-2 set it to 2.
  2683. </member>
  2684. <member name="T:libffmpeg.AVHWAccel">
  2685. Hardware accelerator in use
  2686. - encoding: unused.
  2687. - decoding: Set by libavcodec
  2688. AVHWAccel.
  2689. </member>
  2690. <member name="F:libffmpeg.AVCodecContext.request_channel_layout">
  2691. Request decoder to use this channel layout if it can (0 for default)
  2692. - encoding: unused
  2693. - decoding: Set by user.
  2694. </member>
  2695. <member name="F:libffmpeg.AVCodecContext.channel_layout">
  2696. Audio channel layout.
  2697. - encoding: set by user.
  2698. - decoding: set by user, may be overwritten by libavcodec.
  2699. </member>
  2700. <member name="F:libffmpeg.AVCodecContext.bits_per_raw_sample">
  2701. Bits per sample/pixel of internal libavcodec pixel/sample format.
  2702. - encoding: set by user.
  2703. - decoding: set by libavcodec.
  2704. </member>
  2705. <member name="F:libffmpeg.AVCodecContext.reordered_opaque">
  2706. opaque 64bit number (generally a PTS) that will be reordered and
  2707. output in AVFrame.reordered_opaque
  2708. @deprecated in favor of pkt_pts
  2709. - encoding: unused
  2710. - decoding: Set by user.
  2711. </member>
  2712. <member name="F:libffmpeg.AVCodecContext.drc_scale">
  2713. Percentage of dynamic range compression to be applied by the decoder.
  2714. The default value is 1.0, corresponding to full compression.
  2715. - encoding: unused
  2716. - decoding: Set by user.
  2717. @deprecated use AC3 decoder private option instead.
  2718. </member>
  2719. <member name="F:libffmpeg.AVCodecContext.request_channels">
  2720. Decoder should decode to this many channels if it can (0 for default)
  2721. - encoding: unused
  2722. - decoding: Set by user.
  2723. @deprecated Deprecated in favor of request_channel_layout.
  2724. </member>
  2725. <member name="F:libffmpeg.AVCodecContext.timecode_frame_start">
  2726. @}
  2727. GOP timecode frame start number
  2728. - encoding: Set by user, in non drop frame format
  2729. - decoding: Set by libavcodec (timecode in the 25 bits format, -1 if unset)
  2730. </member>
  2731. <member name="F:libffmpeg.AVCodecContext.max_partition_order">
  2732. - encoding: Set by user.
  2733. - decoding: unused
  2734. </member>
  2735. <member name="F:libffmpeg.AVCodecContext.min_partition_order">
  2736. - encoding: Set by user.
  2737. - decoding: unused
  2738. </member>
  2739. <member name="F:libffmpeg.AVCodecContext.prediction_order_method">
  2740. search method for selecting prediction order
  2741. - encoding: Set by user.
  2742. - decoding: unused
  2743. </member>
  2744. <member name="F:libffmpeg.AVCodecContext.lpc_coeff_precision">
  2745. @name FLAC options
  2746. @deprecated Use FLAC encoder private options instead.
  2747. @{
  2748. LPC coefficient precision - used by FLAC encoder
  2749. - encoding: Set by user.
  2750. - decoding: unused
  2751. </member>
  2752. <member name="F:libffmpeg.AVCodecContext.max_prediction_order">
  2753. - encoding: Set by user.
  2754. - decoding: unused
  2755. </member>
  2756. <member name="F:libffmpeg.AVCodecContext.min_prediction_order">
  2757. - encoding: Set by user.
  2758. - decoding: unused
  2759. </member>
  2760. <member name="F:libffmpeg.AVCodecContext.compression_level">
  2761. - encoding: Set by user.
  2762. - decoding: unused
  2763. </member>
  2764. <member name="F:libffmpeg.AVCodecContext.b_sensitivity">
  2765. Adjust sensitivity of b_frame_strategy 1.
  2766. - encoding: Set by user.
  2767. - decoding: unused
  2768. </member>
  2769. <member name="F:libffmpeg.AVCodecContext.mv0_threshold">
  2770. Note: Value depends upon the compare function used for fullpel ME.
  2771. - encoding: Set by user.
  2772. - decoding: unused
  2773. </member>
  2774. <member name="F:libffmpeg.AVCodecContext.scenechange_factor">
  2775. Multiplied by qscale for each frame and added to scene_change_score.
  2776. - encoding: Set by user.
  2777. - decoding: unused
  2778. </member>
  2779. <member name="F:libffmpeg.AVCodecContext.cutoff">
  2780. Audio cutoff bandwidth (0 means "automatic")
  2781. - encoding: Set by user.
  2782. - decoding: unused
  2783. </member>
  2784. <member name="F:libffmpeg.AVCodecContext.directpred">
  2785. direct MV prediction mode - 0 (none), 1 (spatial), 2 (temporal), 3 (auto)
  2786. - encoding: Set by user.
  2787. - decoding: unused
  2788. </member>
  2789. <member name="F:libffmpeg.AVCodecContext.partitions">
  2790. macroblock subpartition sizes to consider - p8x8, p4x4, b8x8, i8x8, i4x4
  2791. - encoding: Set by user.
  2792. - decoding: unused
  2793. </member>
  2794. <member name="F:libffmpeg.AVCodecContext.deblockbeta">
  2795. in-loop deblocking filter beta parameter
  2796. beta is in the range -6...6
  2797. - encoding: Set by user.
  2798. - decoding: unused
  2799. </member>
  2800. <member name="F:libffmpeg.AVCodecContext.deblockalpha">
  2801. in-loop deblocking filter alphac0 parameter
  2802. alpha is in the range -6...6
  2803. - encoding: Set by user.
  2804. - decoding: unused
  2805. </member>
  2806. <member name="F:libffmpeg.AVCodecContext.complexityblur">
  2807. Reduce fluctuations in qp (before curve compression).
  2808. - encoding: Set by user.
  2809. - decoding: unused
  2810. </member>
  2811. <member name="F:libffmpeg.AVCodecContext.trellis">
  2812. trellis RD quantization
  2813. - encoding: Set by user.
  2814. - decoding: unused
  2815. </member>
  2816. <member name="F:libffmpeg.AVCodecContext.bframebias">
  2817. Influence how often B-frames are used.
  2818. - encoding: Set by user.
  2819. - decoding: unused
  2820. </member>
  2821. <member name="F:libffmpeg.AVCodecContext.chromaoffset">
  2822. chroma qp offset from luma
  2823. - encoding: Set by user.
  2824. - decoding: unused
  2825. </member>
  2826. <member name="F:libffmpeg.AVCodecContext.refs">
  2827. number of reference frames
  2828. - encoding: Set by user.
  2829. - decoding: Set by lavc.
  2830. </member>
  2831. <member name="F:libffmpeg.AVCodecContext.keyint_min">
  2832. minimum GOP size
  2833. - encoding: Set by user.
  2834. - decoding: unused
  2835. </member>
  2836. <member name="F:libffmpeg.AVCodecContext.cqp">
  2837. constant quantization parameter rate control method
  2838. - encoding: Set by user.
  2839. - decoding: unused
  2840. @deprecated use 'cqp' libx264 private option
  2841. </member>
  2842. <member name="F:libffmpeg.AVCodecContext.crf">
  2843. constant rate factor - quality-based VBR - values ~correspond to qps
  2844. - encoding: Set by user.
  2845. - decoding: unused
  2846. @deprecated use 'crf' libx264 private option
  2847. </member>
  2848. <member name="F:libffmpeg.AVCodecContext.brd_scale">
  2849. - encoding: Set by user.
  2850. - decoding: unused
  2851. </member>
  2852. <member name="F:libffmpeg.AVCodecContext.bidir_refine">
  2853. - encoding: Set by user.
  2854. - decoding: unused
  2855. </member>
  2856. <member name="T:libffmpeg.AVDiscard">
  2857. - encoding: unused
  2858. - decoding: Set by user.
  2859. - encoding: unused
  2860. - decoding: Set by user.
  2861. - encoding: unused
  2862. - decoding: Set by user.
  2863. </member>
  2864. <member name="F:libffmpeg.AVCodecContext.me_penalty_compensation">
  2865. - encoding: Set by user.
  2866. - decoding: unused
  2867. </member>
  2868. <member name="F:libffmpeg.AVCodecContext.mb_lmax">
  2869. maximum MB lagrange multipler
  2870. - encoding: Set by user.
  2871. - decoding: unused
  2872. </member>
  2873. <member name="F:libffmpeg.AVCodecContext.mb_lmin">
  2874. minimum MB lagrange multipler
  2875. - encoding: Set by user.
  2876. - decoding: unused
  2877. </member>
  2878. <member name="F:libffmpeg.AVCodecContext.border_masking">
  2879. Border processing masking, raises the quantizer for mbs on the borders
  2880. of the picture.
  2881. - encoding: Set by user.
  2882. - decoding: unused
  2883. </member>
  2884. <member name="F:libffmpeg.AVCodecContext.frame_skip_cmp">
  2885. frame skip comparison function
  2886. - encoding: Set by user.
  2887. - decoding: unused
  2888. </member>
  2889. <member name="F:libffmpeg.AVCodecContext.frame_skip_exp">
  2890. frame skip exponent
  2891. - encoding: Set by user.
  2892. - decoding: unused
  2893. </member>
  2894. <member name="F:libffmpeg.AVCodecContext.frame_skip_factor">
  2895. frame skip factor
  2896. - encoding: Set by user.
  2897. - decoding: unused
  2898. </member>
  2899. <member name="F:libffmpeg.AVCodecContext.frame_skip_threshold">
  2900. frame skip threshold
  2901. - encoding: Set by user.
  2902. - decoding: unused
  2903. </member>
  2904. <member name="F:libffmpeg.AVCodecContext.coded_width">
  2905. Bitstream width / height, may be different from width/height if lowres enabled.
  2906. - encoding: unused
  2907. - decoding: Set by user before init if known. Codec should override / dynamically change if needed.
  2908. </member>
  2909. <member name="F:libffmpeg.AVCodecContext.lowres">
  2910. low resolution decoding, 1-&gt; 1/2 size, 2-&gt;1/4 size
  2911. - encoding: unused
  2912. - decoding: Set by user.
  2913. </member>
  2914. <member name="F:libffmpeg.AVCodecContext.level">
  2915. level
  2916. - encoding: Set by user.
  2917. - decoding: Set by libavcodec.
  2918. </member>
  2919. <member name="F:libffmpeg.AVCodecContext.profile">
  2920. profile
  2921. - encoding: Set by user.
  2922. - decoding: Set by libavcodec.
  2923. </member>
  2924. <member name="F:libffmpeg.AVCodecContext.skip_bottom">
  2925. Number of macroblock rows at the bottom which are skipped.
  2926. - encoding: unused
  2927. - decoding: Set by user.
  2928. </member>
  2929. <member name="F:libffmpeg.AVCodecContext.skip_top">
  2930. Number of macroblock rows at the top which are skipped.
  2931. - encoding: unused
  2932. - decoding: Set by user.
  2933. </member>
  2934. <member name="F:libffmpeg.AVCodecContext.nsse_weight">
  2935. noise vs. sse weight for the nsse comparsion function
  2936. - encoding: Set by user.
  2937. - decoding: unused
  2938. </member>
  2939. <member name="F:libffmpeg.AVCodecContext.intra_dc_precision">
  2940. precision of the intra DC coefficient - 8
  2941. - encoding: Set by user.
  2942. - decoding: unused
  2943. </member>
  2944. <member name="F:libffmpeg.AVCodecContext.mb_threshold">
  2945. Macroblock threshold below which the user specified macroblock types will be used.
  2946. - encoding: Set by user.
  2947. - decoding: unused
  2948. </member>
  2949. <member name="F:libffmpeg.AVCodecContext.me_threshold">
  2950. Motion estimation threshold below which no motion estimation is
  2951. performed, but instead the user specified motion vectors are used.
  2952. - encoding: Set by user.
  2953. - decoding: unused
  2954. </member>
  2955. <member name="F:libffmpeg.AVCodecContext.thread_opaque">
  2956. thread opaque
  2957. Can be used by execute() to store some per AVCodecContext stuff.
  2958. - encoding: set by execute()
  2959. - decoding: set by execute()
  2960. </member>
  2961. <member name="F:libffmpeg.AVCodecContext.execute">
  2962. The codec may call this to execute several independent things.
  2963. It will return only after finishing all tasks.
  2964. The user may replace this with some multithreaded implementation,
  2965. the default implementation will execute the parts serially.
  2966. @param count the number of things to execute
  2967. - encoding: Set by libavcodec, user can override.
  2968. - decoding: Set by libavcodec, user can override.
  2969. </member>
  2970. <member name="F:libffmpeg.AVCodecContext.thread_count">
  2971. thread count
  2972. is used to decide how many independent tasks should be passed to execute()
  2973. - encoding: Set by user.
  2974. - decoding: Set by user.
  2975. </member>
  2976. <member name="F:libffmpeg.AVCodecContext.quantizer_noise_shaping">
  2977. quantizer noise shaping
  2978. - encoding: Set by user.
  2979. - decoding: unused
  2980. </member>
  2981. <member name="F:libffmpeg.AVCodecContext.antialias_algo">
  2982. MP3 antialias algorithm, see FF_AA_* below.
  2983. - encoding: unused
  2984. - decoding: Set by user.
  2985. </member>
  2986. <member name="F:libffmpeg.AVCodecContext.error_rate">
  2987. Simulates errors in the bitstream to test error concealment.
  2988. - encoding: Set by user.
  2989. - decoding: unused
  2990. </member>
  2991. <member name="F:libffmpeg.AVCodecContext.flags2">
  2992. CODEC_FLAG2_*
  2993. - encoding: Set by user.
  2994. - decoding: Set by user.
  2995. </member>
  2996. <member name="F:libffmpeg.AVCodecContext.inter_threshold">
  2997. - encoding: Set by user.
  2998. - decoding: unused
  2999. </member>
  3000. <member name="F:libffmpeg.AVCodecContext.rc_initial_buffer_occupancy">
  3001. Number of bits which should be loaded into the rc buffer before decoding starts.
  3002. - encoding: Set by user.
  3003. - decoding: unused
  3004. </member>
  3005. <member name="F:libffmpeg.AVCodecContext.reget_buffer">
  3006. Called at the beginning of a frame to get cr buffer for it.
  3007. Buffer type (size, hints) must be the same. libavcodec won't check it.
  3008. libavcodec will pass previous buffer in pic, function should return
  3009. same buffer or new buffer with old frame "painted" into it.
  3010. If pic.data[0] == NULL must behave like get_buffer().
  3011. if CODEC_CAP_DR1 is not set then reget_buffer() must call
  3012. avcodec_default_reget_buffer() instead of providing buffers allocated by
  3013. some other means.
  3014. - encoding: unused
  3015. - decoding: Set by libavcodec, user can override.
  3016. </member>
  3017. <member name="F:libffmpeg.AVCodecContext.noise_reduction">
  3018. noise reduction strength
  3019. - encoding: Set by user.
  3020. - decoding: unused
  3021. </member>
  3022. <member name="T:libffmpeg.AVPaletteControl">
  3023. palette control structure
  3024. - encoding: ??? (no palette-enabled encoder yet)
  3025. - decoding: Set by user.
  3026. AVPaletteControl
  3027. This structure defines a method for communicating palette changes
  3028. between and demuxer and a decoder.
  3029. @deprecated Use AVPacket to send palette changes instead.
  3030. This is totally broken.
  3031. </member>
  3032. <member name="F:libffmpeg.AVCodecContext.lmax">
  3033. maximum Lagrange multipler
  3034. - encoding: Set by user.
  3035. - decoding: unused
  3036. </member>
  3037. <member name="F:libffmpeg.AVCodecContext.lmin">
  3038. minimum Lagrange multipler
  3039. - encoding: Set by user.
  3040. - decoding: unused
  3041. </member>
  3042. <member name="F:libffmpeg.AVCodecContext.scenechange_threshold">
  3043. scene change detection threshold
  3044. 0 is default, larger means fewer detected scene changes.
  3045. - encoding: Set by user.
  3046. - decoding: unused
  3047. </member>
  3048. <member name="F:libffmpeg.AVCodecContext.inter_matrix">
  3049. custom inter quantization matrix
  3050. - encoding: Set by user, can be NULL.
  3051. - decoding: Set by libavcodec.
  3052. </member>
  3053. <member name="F:libffmpeg.AVCodecContext.intra_matrix">
  3054. custom intra quantization matrix
  3055. - encoding: Set by user, can be NULL.
  3056. - decoding: Set by libavcodec.
  3057. </member>
  3058. <member name="F:libffmpeg.AVCodecContext.mb_decision">
  3059. macroblock decision mode
  3060. - encoding: Set by user.
  3061. - decoding: unused
  3062. </member>
  3063. <member name="F:libffmpeg.AVCodecContext.xvmc_acceleration">
  3064. XVideo Motion Acceleration
  3065. - encoding: forbidden
  3066. - decoding: set by decoder
  3067. </member>
  3068. <member name="F:libffmpeg.AVCodecContext.slice_flags">
  3069. slice flags
  3070. - encoding: unused
  3071. - decoding: Set by user.
  3072. </member>
  3073. <member name="F:libffmpeg.AVCodecContext.context_model">
  3074. context model
  3075. - encoding: Set by user.
  3076. - decoding: unused
  3077. </member>
  3078. <member name="F:libffmpeg.AVCodecContext.coder_type">
  3079. coder type
  3080. - encoding: Set by user.
  3081. - decoding: unused
  3082. </member>
  3083. <member name="F:libffmpeg.AVCodecContext.global_quality">
  3084. Global quality for codecs which cannot change it per frame.
  3085. This should be proportional to MPEG-1/2/4 qscale.
  3086. - encoding: Set by user.
  3087. - decoding: unused
  3088. </member>
  3089. <member name="F:libffmpeg.AVCodecContext.internal_buffer">
  3090. internal_buffers
  3091. Don't touch, used by libavcodec default_get_buffer().
  3092. @deprecated this field was moved to an internal context
  3093. </member>
  3094. <member name="F:libffmpeg.AVCodecContext.internal_buffer_count">
  3095. internal_buffer count
  3096. Don't touch, used by libavcodec default_get_buffer().
  3097. @deprecated this field was moved to an internal context
  3098. </member>
  3099. <member name="F:libffmpeg.AVCodecContext.color_table_id">
  3100. color table ID
  3101. - encoding: unused
  3102. - decoding: Which clrtable should be used for 8bit RGB images.
  3103. Tables have to be stored somewhere. FIXME
  3104. </member>
  3105. <member name="F:libffmpeg.AVCodecContext.inter_quant_bias">
  3106. inter quantizer bias
  3107. - encoding: Set by user.
  3108. - decoding: unused
  3109. </member>
  3110. <member name="F:libffmpeg.AVCodecContext.intra_quant_bias">
  3111. intra quantizer bias
  3112. - encoding: Set by user.
  3113. - decoding: unused
  3114. </member>
  3115. <member name="F:libffmpeg.AVCodecContext.me_range">
  3116. maximum motion estimation search range in subpel units
  3117. If 0 then no limit.
  3118. - encoding: Set by user.
  3119. - decoding: unused
  3120. </member>
  3121. <member name="F:libffmpeg.AVCodecContext.dtg_active_format">
  3122. DTG active format information (additional aspect ratio
  3123. information only used in DVB MPEG-2 transport streams)
  3124. 0 if not set.
  3125. - encoding: unused
  3126. - decoding: Set by decoder.
  3127. </member>
  3128. <member name="F:libffmpeg.AVCodecContext.me_subpel_quality">
  3129. subpel ME quality
  3130. - encoding: Set by user.
  3131. - decoding: unused
  3132. </member>
  3133. <member name="F:libffmpeg.AVCodecContext.me_pre_cmp">
  3134. motion estimation prepass comparison function
  3135. - encoding: Set by user.
  3136. - decoding: unused
  3137. </member>
  3138. <member name="F:libffmpeg.AVCodecContext.pre_me">
  3139. prepass for motion estimation
  3140. - encoding: Set by user.
  3141. - decoding: unused
  3142. </member>
  3143. <member name="F:libffmpeg.AVCodecContext.last_predictor_count">
  3144. amount of previous MV predictors (2a+1 x 2a+1 square)
  3145. - encoding: Set by user.
  3146. - decoding: unused
  3147. </member>
  3148. <member name="F:libffmpeg.AVCodecContext.ildct_cmp">
  3149. interlaced DCT comparison function
  3150. - encoding: Set by user.
  3151. - decoding: unused
  3152. </member>
  3153. <member name="F:libffmpeg.AVCodecContext.mb_cmp">
  3154. macroblock comparison function (not supported yet)
  3155. - encoding: Set by user.
  3156. - decoding: unused
  3157. </member>
  3158. <member name="F:libffmpeg.AVCodecContext.me_sub_cmp">
  3159. subpixel motion estimation comparison function
  3160. - encoding: Set by user.
  3161. - decoding: unused
  3162. </member>
  3163. <member name="F:libffmpeg.AVCodecContext.me_cmp">
  3164. motion estimation comparison function
  3165. - encoding: Set by user.
  3166. - decoding: unused
  3167. </member>
  3168. <member name="F:libffmpeg.AVCodecContext.debug_mv">
  3169. debug
  3170. - encoding: Set by user.
  3171. - decoding: Set by user.
  3172. </member>
  3173. <member name="F:libffmpeg.AVCodecContext.debug">
  3174. debug
  3175. - encoding: Set by user.
  3176. - decoding: Set by user.
  3177. </member>
  3178. <member name="F:libffmpeg.AVCodecContext.coded_frame">
  3179. the picture in the bitstream
  3180. - encoding: Set by libavcodec.
  3181. - decoding: Set by libavcodec.
  3182. </member>
  3183. <member name="F:libffmpeg.AVCodecContext.sample_aspect_ratio">
  3184. sample aspect ratio (0 if unknown)
  3185. That is the width of a pixel divided by the height of the pixel.
  3186. Numerator and denominator must be relatively prime and smaller than 256 for some video standards.
  3187. - encoding: Set by user.
  3188. - decoding: Set by libavcodec.
  3189. </member>
  3190. <member name="F:libffmpeg.AVCodecContext.prediction_method">
  3191. prediction method (needed for huffyuv)
  3192. - encoding: Set by user.
  3193. - decoding: unused
  3194. </member>
  3195. <member name="F:libffmpeg.AVCodecContext.bits_per_coded_sample">
  3196. bits per sample/pixel from the demuxer (needed for huffyuv).
  3197. - encoding: Set by libavcodec.
  3198. - decoding: Set by user.
  3199. </member>
  3200. <member name="F:libffmpeg.AVCodecContext.dsp_mask">
  3201. dsp_mask could be add used to disable unwanted CPU features
  3202. CPU features (i.e. MMX, SSE. ...)
  3203. With the FORCE flag you may instead enable given CPU features.
  3204. (Dangerous: Usable in case of misdetection, improper usage however will
  3205. result into program crash.)
  3206. </member>
  3207. <member name="F:libffmpeg.AVCodecContext.error_concealment">
  3208. error concealment flags
  3209. - encoding: unused
  3210. - decoding: Set by user.
  3211. </member>
  3212. <member name="F:libffmpeg.AVCodecContext.slice_offset">
  3213. slice offsets in the frame in bytes
  3214. - encoding: Set/allocated by libavcodec.
  3215. - decoding: Set/allocated by user (or NULL).
  3216. </member>
  3217. <member name="F:libffmpeg.AVCodecContext.slice_count">
  3218. slice count
  3219. - encoding: Set by libavcodec.
  3220. - decoding: Set by user (or 0).
  3221. </member>
  3222. <member name="F:libffmpeg.AVCodecContext.idct_algo">
  3223. IDCT algorithm, see FF_IDCT_* below.
  3224. - encoding: Set by user.
  3225. - decoding: Set by user.
  3226. </member>
  3227. <member name="F:libffmpeg.AVCodecContext.dark_masking">
  3228. darkness masking (0-&gt; disabled)
  3229. - encoding: Set by user.
  3230. - decoding: unused
  3231. </member>
  3232. <member name="F:libffmpeg.AVCodecContext.p_masking">
  3233. p block masking (0-&gt; disabled)
  3234. - encoding: Set by user.
  3235. - decoding: unused
  3236. </member>
  3237. <member name="F:libffmpeg.AVCodecContext.spatial_cplx_masking">
  3238. spatial complexity masking (0-&gt; disabled)
  3239. - encoding: Set by user.
  3240. - decoding: unused
  3241. </member>
  3242. <member name="F:libffmpeg.AVCodecContext.temporal_cplx_masking">
  3243. temporary complexity masking (0-&gt; disabled)
  3244. - encoding: Set by user.
  3245. - decoding: unused
  3246. </member>
  3247. <member name="F:libffmpeg.AVCodecContext.lumi_masking">
  3248. luminance masking (0-&gt; disabled)
  3249. - encoding: Set by user.
  3250. - decoding: unused
  3251. </member>
  3252. <member name="F:libffmpeg.AVCodecContext.dct_algo">
  3253. DCT algorithm, see FF_DCT_* below
  3254. - encoding: Set by user.
  3255. - decoding: unused
  3256. </member>
  3257. <member name="F:libffmpeg.AVCodecContext.rc_initial_cplx">
  3258. initial complexity for pass1 ratecontrol
  3259. - encoding: Set by user.
  3260. - decoding: unused
  3261. </member>
  3262. <member name="F:libffmpeg.AVCodecContext.i_quant_offset">
  3263. qscale offset between P and I-frames
  3264. - encoding: Set by user.
  3265. - decoding: unused
  3266. </member>
  3267. <member name="F:libffmpeg.AVCodecContext.rc_buffer_size">
  3268. decoder bitstream buffer size
  3269. - encoding: Set by user.
  3270. - decoding: unused
  3271. </member>
  3272. <member name="F:libffmpeg.AVCodecContext.rc_min_rate">
  3273. minimum bitrate
  3274. - encoding: Set by user.
  3275. - decoding: unused
  3276. </member>
  3277. <member name="F:libffmpeg.AVCodecContext.rc_max_rate">
  3278. maximum bitrate
  3279. - encoding: Set by user.
  3280. - decoding: unused
  3281. </member>
  3282. <member name="F:libffmpeg.AVCodecContext.rc_eq">
  3283. rate control equation
  3284. - encoding: Set by user
  3285. - decoding: unused
  3286. </member>
  3287. <member name="F:libffmpeg.AVCodecContext.rc_override">
  3288. ratecontrol override, see RcOverride
  3289. - encoding: Allocated/set/freed by user.
  3290. - decoding: unused
  3291. </member>
  3292. <member name="F:libffmpeg.AVCodecContext.rc_qsquish">
  3293. ratecontrol qmin qmax limiting method
  3294. 0-&gt; clipping, 1-&gt; use a nice continous function to limit qscale wthin qmin/qmax.
  3295. - encoding: Set by user.
  3296. - decoding: unused
  3297. </member>
  3298. <member name="F:libffmpeg.AVCodecContext.stats_in">
  3299. pass2 encoding statistics input buffer
  3300. Concatenated stuff from stats_out of pass1 should be placed here.
  3301. - encoding: Allocated/set/freed by user.
  3302. - decoding: unused
  3303. </member>
  3304. <member name="F:libffmpeg.AVCodecContext.stats_out">
  3305. pass1 encoding statistics output buffer
  3306. - encoding: Set by libavcodec.
  3307. - decoding: unused
  3308. </member>
  3309. <member name="F:libffmpeg.AVCodecContext.mpeg_quant">
  3310. 0-&gt; h263 quant 1-&gt; mpeg quant
  3311. - encoding: Set by user.
  3312. - decoding: unused
  3313. </member>
  3314. <member name="F:libffmpeg.AVCodecContext.parse_only">
  3315. If true, only parsing is done. The frame data is returned.
  3316. Only MPEG audio decoders support this now.
  3317. - encoding: unused
  3318. - decoding: Set by user
  3319. </member>
  3320. <member name="F:libffmpeg.AVCodecContext.block_align">
  3321. number of bytes per packet if constant and known or 0
  3322. Used by some WAV based audio codecs.
  3323. </member>
  3324. <member name="F:libffmpeg.AVCodecContext.has_b_frames">
  3325. Size of the frame reordering buffer in the decoder.
  3326. For MPEG-2 it is 1 IPB or 0 low delay IP.
  3327. - encoding: Set by libavcodec.
  3328. - decoding: Set by libavcodec.
  3329. </member>
  3330. <member name="F:libffmpeg.AVCodecContext.release_buffer">
  3331. Called to release buffers which were allocated with get_buffer.
  3332. A released buffer can be reused in get_buffer().
  3333. pic.data[*] must be set to NULL.
  3334. May be called from a different thread if frame multithreading is used,
  3335. but not by more than one thread at once, so does not need to be reentrant.
  3336. - encoding: unused
  3337. - decoding: Set by libavcodec, user can override.
  3338. </member>
  3339. <member name="F:libffmpeg.AVCodecContext.get_buffer">
  3340. Called at the beginning of each frame to get a buffer for it.
  3341. The function will set AVFrame.data[], AVFrame.linesize[].
  3342. AVFrame.extended_data[] must also be set, but it should be the same as
  3343. AVFrame.data[] except for planar audio with more channels than can fit
  3344. in AVFrame.data[]. In that case, AVFrame.data[] shall still contain as
  3345. many data pointers as it can hold.
  3346. if CODEC_CAP_DR1 is not set then get_buffer() must call
  3347. avcodec_default_get_buffer() instead of providing buffers allocated by
  3348. some other means.
  3349. AVFrame.data[] should be 32- or 16-byte-aligned unless the CPU doesn't
  3350. need it. avcodec_default_get_buffer() aligns the output buffer properly,
  3351. but if get_buffer() is overridden then alignment considerations should
  3352. be taken into account.
  3353. @see avcodec_default_get_buffer()
  3354. Video:
  3355. If pic.reference is set then the frame will be read later by libavcodec.
  3356. avcodec_align_dimensions2() should be used to find the required width and
  3357. height, as they normally need to be rounded up to the next multiple of 16.
  3358. If frame multithreading is used and thread_safe_callbacks is set,
  3359. it may be called from a different thread, but not from more than one at
  3360. once. Does not need to be reentrant.
  3361. @see release_buffer(), reget_buffer()
  3362. @see avcodec_align_dimensions2()
  3363. Audio:
  3364. Decoders request a buffer of a particular size by setting
  3365. AVFrame.nb_samples prior to calling get_buffer(). The decoder may,
  3366. however, utilize only part of the buffer by setting AVFrame.nb_samples
  3367. to a smaller value in the output frame.
  3368. Decoders cannot use the buffer after returning from
  3369. avcodec_decode_audio4(), so they will not call release_buffer(), as it
  3370. is assumed to be released immediately upon return.
  3371. As a convenience, av_samples_get_buffer_size() and
  3372. av_samples_fill_arrays() in libavutil may be used by custom get_buffer()
  3373. functions to find the required data size and to fill data pointers and
  3374. linesize. In AVFrame.linesize, only linesize[0] may be set for audio
  3375. since all planes must be the same size.
  3376. @see av_samples_get_buffer_size(), av_samples_fill_arrays()
  3377. - encoding: unused
  3378. - decoding: Set by libavcodec, user can override.
  3379. </member>
  3380. <member name="F:libffmpeg.AVCodecContext.error_recognition">
  3381. Error recognition; higher values will detect more errors but may
  3382. misdetect some more or less valid parts as errors.
  3383. - encoding: unused
  3384. - decoding: Set by user.
  3385. </member>
  3386. <member name="F:libffmpeg.AVCodecContext.b_quant_offset">
  3387. qscale offset between IP and B-frames
  3388. - encoding: Set by user.
  3389. - decoding: unused
  3390. </member>
  3391. <member name="F:libffmpeg.AVCodecContext.strict_std_compliance">
  3392. strictly follow the standard (MPEG4, ...).
  3393. - encoding: Set by user.
  3394. - decoding: Set by user.
  3395. Setting this to STRICT or higher means the encoder and decoder will
  3396. generally do stupid things, whereas setting it to unofficial or lower
  3397. will mean the encoder might produce output that is not supported by all
  3398. spec-compliant decoders. Decoders don't differentiate between normal,
  3399. unofficial and experimental (that is, they always try to decode things
  3400. when they can) unless they are explicitly asked to behave stupidly
  3401. (=strictly conform to the specs)
  3402. </member>
  3403. <member name="F:libffmpeg.AVCodecContext.chroma_elim_threshold">
  3404. chroma single coeff elimination threshold
  3405. - encoding: Set by user.
  3406. - decoding: unused
  3407. </member>
  3408. <member name="F:libffmpeg.AVCodecContext.luma_elim_threshold">
  3409. luma single coefficient elimination threshold
  3410. - encoding: Set by user.
  3411. - decoding: unused
  3412. </member>
  3413. <member name="F:libffmpeg.AVCodecContext.workaround_bugs">
  3414. Work around bugs in encoders which sometimes cannot be detected automatically.
  3415. - encoding: Set by user
  3416. - decoding: Set by user
  3417. </member>
  3418. <member name="F:libffmpeg.AVCodecContext.opaque">
  3419. Private data of the user, can be used to carry app specific stuff.
  3420. - encoding: Set by user.
  3421. - decoding: Set by user.
  3422. </member>
  3423. <member name="F:libffmpeg.AVCodecContext.frame_bits">
  3424. number of bits used for the previously encoded frame
  3425. - encoding: Set by libavcodec.
  3426. - decoding: unused
  3427. </member>
  3428. <member name="F:libffmpeg.AVCodecContext.rc_strategy">
  3429. obsolete FIXME remove
  3430. </member>
  3431. <member name="F:libffmpeg.AVCodecContext.max_b_frames">
  3432. maximum number of B-frames between non-B-frames
  3433. Note: The output will be delayed by max_b_frames+1 relative to the input.
  3434. - encoding: Set by user.
  3435. - decoding: unused
  3436. </member>
  3437. <member name="F:libffmpeg.AVCodecContext.max_qdiff">
  3438. maximum quantizer difference between frames
  3439. - encoding: Set by user.
  3440. - decoding: unused
  3441. </member>
  3442. <member name="F:libffmpeg.AVCodecContext.qmax">
  3443. maximum quantizer
  3444. - encoding: Set by user.
  3445. - decoding: unused
  3446. </member>
  3447. <member name="F:libffmpeg.AVCodecContext.qmin">
  3448. minimum quantizer
  3449. - encoding: Set by user.
  3450. - decoding: unused
  3451. </member>
  3452. <member name="F:libffmpeg.AVCodecContext.delay">
  3453. Encoding: Number of frames delay there will be from the encoder input to
  3454. the decoder output. (we assume the decoder matches the spec)
  3455. Decoding: Number of frames delay in addition to what a standard decoder
  3456. as specified in the spec would produce.
  3457. - encoding: Set by libavcodec.
  3458. - decoding: Set by libavcodec.
  3459. </member>
  3460. <member name="F:libffmpeg.AVCodecContext.frame_size">
  3461. Samples per packet, initialized when calling 'init'.
  3462. </member>
  3463. <member name="F:libffmpeg.AVCodecContext.draw_horiz_band">
  3464. If non NULL, 'draw_horiz_band' is called by the libavcodec
  3465. decoder to draw a horizontal band. It improves cache usage. Not
  3466. all codecs can do that. You must check the codec capabilities
  3467. beforehand.
  3468. When multithreading is used, it may be called from multiple threads
  3469. at the same time; threads might draw different parts of the same AVFrame,
  3470. or multiple AVFrames, and there is no guarantee that slices will be drawn
  3471. in order.
  3472. The function is also used by hardware acceleration APIs.
  3473. It is called at least once during frame decoding to pass
  3474. the data needed for hardware render.
  3475. In that mode instead of pixel data, AVFrame points to
  3476. a structure specific to the acceleration API. The application
  3477. reads the structure and can change some fields to indicate progress
  3478. or mark state.
  3479. - encoding: unused
  3480. - decoding: Set by user.
  3481. @param height the height of the slice
  3482. @param y the y position of the slice
  3483. @param type 1-&gt;top field, 2-&gt;bottom field, 3-&gt;frame
  3484. @param offset offset into the AVFrame.data from which the slice should be read
  3485. </member>
  3486. <member name="T:libffmpeg.PixelFormat">
  3487. Pixel format, see PIX_FMT_xxx.
  3488. May be set by the demuxer if known from headers.
  3489. May be overriden by the decoder if it knows better.
  3490. - encoding: Set by user.
  3491. - decoding: Set by user if known, overridden by libavcodec if known
  3492. callback to negotiate the pixelFormat
  3493. @param fmt is the list of formats which are supported by the codec,
  3494. it is terminated by -1 as 0 is a valid format, the formats are ordered by quality.
  3495. The first is always the native one.
  3496. @return the chosen format
  3497. - encoding: unused
  3498. - decoding: Set by user, if not set the native format will be chosen.
  3499. Supported pixel format.
  3500. Only hardware accelerated formats are supported here.
  3501. </member>
  3502. <member name="F:libffmpeg.AVCodecContext.gop_size">
  3503. the number of pictures in a group of pictures, or 0 for intra_only
  3504. - encoding: Set by user.
  3505. - decoding: unused
  3506. </member>
  3507. <member name="F:libffmpeg.AVCodecContext.width">
  3508. picture width / height.
  3509. - encoding: MUST be set by user.
  3510. - decoding: Set by libavcodec.
  3511. Note: For compatibility it is possible to set this instead of
  3512. coded_width/height before decoding.
  3513. </member>
  3514. <member name="F:libffmpeg.AVCodecContext.time_base">
  3515. This is the fundamental unit of time (in seconds) in terms
  3516. of which frame timestamps are represented. For fixed-fps content,
  3517. timebase should be 1/framerate and timestamp increments should be
  3518. identically 1.
  3519. - encoding: MUST be set by user.
  3520. - decoding: Set by libavcodec.
  3521. </member>
  3522. <member name="F:libffmpeg.AVCodecContext.extradata">
  3523. some codecs need / can use extradata like Huffman tables.
  3524. mjpeg: Huffman tables
  3525. rv10: additional flags
  3526. mpeg4: global headers (they can be in the bitstream or here)
  3527. The allocated memory should be FF_INPUT_BUFFER_PADDING_SIZE bytes larger
  3528. than extradata_size to avoid prolems if it is read with the bitstream reader.
  3529. The bytewise contents of extradata must not depend on the architecture or CPU endianness.
  3530. - encoding: Set/allocated/freed by libavcodec.
  3531. - decoding: Set/allocated/freed by user.
  3532. </member>
  3533. <member name="F:libffmpeg.AVCodecContext.me_method">
  3534. Motion estimation algorithm used for video coding.
  3535. 1 (zero), 2 (full), 3 (log), 4 (phods), 5 (epzs), 6 (x1), 7 (hex),
  3536. 8 (umh), 9 (iter), 10 (tesa) [7, 8, 10 are x264 specific, 9 is snow specific]
  3537. - encoding: MUST be set by user.
  3538. - decoding: unused
  3539. </member>
  3540. <member name="F:libffmpeg.AVCodecContext.sub_id">
  3541. Some codecs need additional format info. It is stored here.
  3542. If any muxer uses this then ALL demuxers/parsers AND encoders for the
  3543. specific codec MUST set it correctly otherwise stream copy breaks.
  3544. In general use of this field by muxers is not recommended.
  3545. - encoding: Set by libavcodec.
  3546. - decoding: Set by libavcodec. (FIXME: Is this OK?)
  3547. </member>
  3548. <member name="F:libffmpeg.AVCodecContext.flags">
  3549. CODEC_FLAG_*.
  3550. - encoding: Set by user.
  3551. - decoding: Set by user.
  3552. </member>
  3553. <member name="F:libffmpeg.AVCodecContext.bit_rate_tolerance">
  3554. number of bits the bitstream is allowed to diverge from the reference.
  3555. the reference can be CBR (for CBR pass1) or VBR (for pass2)
  3556. - encoding: Set by user; unused for constant quantizer encoding.
  3557. - decoding: unused
  3558. </member>
  3559. <member name="F:libffmpeg.AVCodecContext.bit_rate">
  3560. the average bitrate
  3561. - encoding: Set by user; unused for constant quantizer encoding.
  3562. - decoding: Set by libavcodec. 0 or some bitrate if this info is available in the stream.
  3563. </member>
  3564. <member name="F:libffmpeg.AVCodecContext.av_class">
  3565. information on struct for av_log
  3566. - set by avcodec_alloc_context3
  3567. </member>
  3568. <member name="F:libffmpeg.AVFrame.pkt_pos">
  3569. reordered pos from the last AVPacket that has been input into the decoder
  3570. Code outside libavcodec should access this field using:
  3571. av_opt_ptr(avcodec_get_frame_class(), frame, "pkt_pos");
  3572. - encoding: unused
  3573. - decoding: Read by user.
  3574. </member>
  3575. <member name="F:libffmpeg.AVFrame.best_effort_timestamp">
  3576. frame timestamp estimated using various heuristics, in stream time base
  3577. Code outside libavcodec should access this field using:
  3578. av_opt_ptr(avcodec_get_frame_class(), frame, "best_effort_timestamp");
  3579. - encoding: unused
  3580. - decoding: set by libavcodec, read by user.
  3581. </member>
  3582. <member name="F:libffmpeg.AVFrame.format">
  3583. format of the frame, -1 if unknown or unset
  3584. Values correspond to enum PixelFormat for video frames,
  3585. enum AVSampleFormat for audio)
  3586. - encoding: unused
  3587. - decoding: Read by user.
  3588. </member>
  3589. <member name="F:libffmpeg.AVFrame.width">
  3590. width and height of the video frame
  3591. - encoding: unused
  3592. - decoding: Read by user.
  3593. </member>
  3594. <member name="F:libffmpeg.AVFrame.sample_aspect_ratio">
  3595. sample aspect ratio for the video frame, 0/1 if unknown\unspecified
  3596. - encoding: unused
  3597. - decoding: Read by user.
  3598. </member>
  3599. <member name="F:libffmpeg.AVFrame.extended_data">
  3600. pointers to the data planes/channels.
  3601. For video, this should simply point to data[].
  3602. For planar audio, each channel has a separate data pointer, and
  3603. linesize[0] contains the size of each channel buffer.
  3604. For packed audio, there is just one data pointer, and linesize[0]
  3605. contains the total size of the buffer for all channels.
  3606. Note: Both data and extended_data will always be set by get_buffer(),
  3607. but for planar audio with more channels that can fit in data,
  3608. extended_data must be used by the decoder in order to access all
  3609. channels.
  3610. encoding: unused
  3611. decoding: set by AVCodecContext.get_buffer()
  3612. </member>
  3613. <member name="F:libffmpeg.AVFrame.nb_samples">
  3614. number of audio samples (per channel) described by this frame
  3615. - encoding: unused
  3616. - decoding: Set by libavcodec
  3617. </member>
  3618. <member name="F:libffmpeg.AVFrame.thread_opaque">
  3619. used by multithreading to store frame-specific info
  3620. - encoding: Set by libavcodec.
  3621. - decoding: Set by libavcodec.
  3622. </member>
  3623. <member name="T:libffmpeg.AVCodecContext">
  3624. the AVCodecContext which ff_thread_get_buffer() was last called on
  3625. - encoding: Set by libavcodec.
  3626. - decoding: Set by libavcodec.
  3627. main external API structure.
  3628. New fields can be added to the end with minor version bumps.
  3629. Removal, reordering and changes to existing fields require a major
  3630. version bump.
  3631. Please use AVOptions (av_opt* / av_set/get*()) to access these fields from user
  3632. applications.
  3633. sizeof(AVCodecContext) must not be used outside libav*.
  3634. </member>
  3635. <member name="F:libffmpeg.AVFrame.pkt_dts">
  3636. dts from the last AVPacket that has been input into the decoder
  3637. - encoding: unused
  3638. - decoding: Read by user.
  3639. </member>
  3640. <member name="F:libffmpeg.AVFrame.pkt_pts">
  3641. reordered pts from the last AVPacket that has been input into the decoder
  3642. - encoding: unused
  3643. - decoding: Read by user.
  3644. </member>
  3645. <member name="F:libffmpeg.AVFrame.hwaccel_picture_private">
  3646. hardware accelerator private data (FFmpeg-allocated)
  3647. - encoding: unused
  3648. - decoding: Set by libavcodec
  3649. </member>
  3650. <member name="F:libffmpeg.AVFrame.reordered_opaque">
  3651. reordered opaque 64bit (generally an integer or a double precision float
  3652. PTS but can be anything).
  3653. The user sets AVCodecContext.reordered_opaque to represent the input at
  3654. that time,
  3655. the decoder reorders values as needed and sets AVFrame.reordered_opaque
  3656. to exactly one of the values provided by the user through AVCodecContext.reordered_opaque
  3657. @deprecated in favor of pkt_pts
  3658. - encoding: unused
  3659. - decoding: Read by user.
  3660. </member>
  3661. <member name="F:libffmpeg.AVFrame.ref_index">
  3662. motion reference frame index
  3663. the order in which these are stored can depend on the codec.
  3664. - encoding: Set by user.
  3665. - decoding: Set by libavcodec.
  3666. </member>
  3667. <member name="F:libffmpeg.AVFrame.dct_coeff">
  3668. DCT coefficients
  3669. - encoding: unused
  3670. - decoding: Set by libavcodec.
  3671. </member>
  3672. <member name="F:libffmpeg.AVFrame.buffer_hints">
  3673. codec suggestion on buffer type if != 0
  3674. - encoding: unused
  3675. - decoding: Set by libavcodec. (before get_buffer() call)).
  3676. </member>
  3677. <member name="F:libffmpeg.AVFrame.palette_has_changed">
  3678. Tell user application that palette has changed from previous frame.
  3679. - encoding: ??? (no palette-enabled encoder yet)
  3680. - decoding: Set by libavcodec. (default 0).
  3681. </member>
  3682. <member name="F:libffmpeg.AVFrame.pan_scan">
  3683. Pan scan.
  3684. - encoding: Set by user.
  3685. - decoding: Set by libavcodec.
  3686. </member>
  3687. <member name="F:libffmpeg.AVFrame.top_field_first">
  3688. If the content is interlaced, is top field displayed first.
  3689. - encoding: Set by user.
  3690. - decoding: Set by libavcodec.
  3691. </member>
  3692. <member name="F:libffmpeg.AVFrame.interlaced_frame">
  3693. The content of the picture is interlaced.
  3694. - encoding: Set by user.
  3695. - decoding: Set by libavcodec. (default 0)
  3696. </member>
  3697. <member name="F:libffmpeg.AVFrame.repeat_pict">
  3698. When decoding, this signals how much the picture must be delayed.
  3699. extra_delay = repeat_pict / (2*fps)
  3700. - encoding: unused
  3701. - decoding: Set by libavcodec.
  3702. </member>
  3703. <member name="F:libffmpeg.AVFrame.opaque">
  3704. for some private data of the user
  3705. - encoding: unused
  3706. - decoding: Set by user.
  3707. </member>
  3708. <member name="F:libffmpeg.AVFrame.motion_subsample_log2">
  3709. log2 of the size of the block which a single vector in motion_val represents:
  3710. (4-&gt;16x16, 3-&gt;8x8, 2-&gt; 4x4, 1-&gt; 2x2)
  3711. - encoding: unused
  3712. - decoding: Set by libavcodec.
  3713. </member>
  3714. <member name="F:libffmpeg.AVFrame.mb_type">
  3715. macroblock type table
  3716. mb_type_base + mb_width + 2
  3717. - encoding: Set by user.
  3718. - decoding: Set by libavcodec.
  3719. </member>
  3720. <member name="F:libffmpeg.AVFrame.mbskip_table">
  3721. mbskip_table[mb]&gt;=1 if MB didn't change
  3722. stride= mb_width = (width+15)&gt;&gt;4
  3723. - encoding: unused
  3724. - decoding: Set by libavcodec.
  3725. </member>
  3726. <member name="F:libffmpeg.AVFrame.qstride">
  3727. QP store stride
  3728. - encoding: unused
  3729. - decoding: Set by libavcodec.
  3730. </member>
  3731. <member name="F:libffmpeg.AVFrame.qscale_table">
  3732. QP table
  3733. - encoding: unused
  3734. - decoding: Set by libavcodec.
  3735. </member>
  3736. <member name="F:libffmpeg.AVFrame.reference">
  3737. is this picture used as reference
  3738. The values for this are the same as the MpegEncContext.picture_structure
  3739. variable, that is 1-&gt;top field, 2-&gt;bottom field, 3-&gt;frame/both fields.
  3740. Set to 4 for delayed, non-reference frames.
  3741. - encoding: unused
  3742. - decoding: Set by libavcodec. (before get_buffer() call)).
  3743. </member>
  3744. <member name="F:libffmpeg.AVFrame.age">
  3745. @deprecated unused
  3746. </member>
  3747. <member name="F:libffmpeg.AVFrame.quality">
  3748. quality (between 1 (good) and FF_LAMBDA_MAX (bad))
  3749. - encoding: Set by libavcodec. for coded_picture (and set by user for input).
  3750. - decoding: Set by libavcodec.
  3751. </member>
  3752. <member name="F:libffmpeg.AVFrame.display_picture_number">
  3753. picture number in display order
  3754. - encoding: set by
  3755. - decoding: Set by libavcodec.
  3756. </member>
  3757. <member name="F:libffmpeg.AVFrame.coded_picture_number">
  3758. picture number in bitstream order
  3759. - encoding: set by
  3760. - decoding: Set by libavcodec.
  3761. </member>
  3762. <member name="F:libffmpeg.AVFrame.pts">
  3763. presentation timestamp in time_base units (time when frame should be shown to user)
  3764. If AV_NOPTS_VALUE then frame_rate = 1/time_base will be assumed.
  3765. - encoding: MUST be set by user.
  3766. - decoding: Set by libavcodec.
  3767. </member>
  3768. <member name="F:libffmpeg.AVFrame.key_frame">
  3769. 1 -&gt; keyframe, 0-&gt; not
  3770. - encoding: Set by libavcodec.
  3771. - decoding: Set by libavcodec.
  3772. </member>
  3773. <member name="F:libffmpeg.AVFrame.base">
  3774. pointer to the first allocated byte of the picture. Can be used in get_buffer/release_buffer.
  3775. This isn't used by libavcodec unless the default get/release_buffer() is used.
  3776. - encoding:
  3777. - decoding:
  3778. </member>
  3779. <member name="F:libffmpeg.AVFrame.linesize">
  3780. Size, in bytes, of the data for each picture/channel plane.
  3781. For audio, only linesize[0] may be set. For planar audio, each channel
  3782. plane must be the same size.
  3783. - encoding: Set by user (video only)
  3784. - decoding: set by AVCodecContext.get_buffer()
  3785. </member>
  3786. <member name="F:libffmpeg.AVFrame.data">
  3787. pointer to the picture/channel planes.
  3788. This might be different from the first allocated byte
  3789. - encoding: Set by user
  3790. - decoding: set by AVCodecContext.get_buffer()
  3791. </member>
  3792. <member name="T:libffmpeg.AVFrame">
  3793. Audio Video Frame.
  3794. New fields can be added to the end of AVFRAME with minor version
  3795. bumps. Similarly fields that are marked as to be only accessed by
  3796. av_opt_ptr() can be reordered. This allows 2 forks to add fields
  3797. without breaking compatibility with each other.
  3798. Removal, reordering and changes in the remaining cases require
  3799. a major version bump.
  3800. sizeof(AVFrame) must not be used outside libavcodec.
  3801. </member>
  3802. <member name="F:libffmpeg.AVPacket.convergence_duration">
  3803. Time difference in AVStream-&gt;time_base units from the pts of this
  3804. packet to the point at which the output from the decoder has converged
  3805. independent from the availability of previous frames. That is, the
  3806. frames are virtually identical no matter if decoding started from
  3807. the very first frame or from this keyframe.
  3808. Is AV_NOPTS_VALUE if unknown.
  3809. This field is not the display duration of the current packet.
  3810. This field has no meaning if the packet does not have AV_PKT_FLAG_KEY
  3811. set.
  3812. The purpose of this field is to allow seeking in streams that have no
  3813. keyframes in the conventional sense. It corresponds to the
  3814. recovery point SEI in H.264 and match_time_delta in NUT. It is also
  3815. essential for some types of subtitle streams to ensure that all
  3816. subtitles are correctly displayed after seeking.
  3817. </member>
  3818. <member name="F:libffmpeg.AVPacket.duration">
  3819. Duration of this packet in AVStream-&gt;time_base units, 0 if unknown.
  3820. Equals next_pts - this_pts in presentation order.
  3821. </member>
  3822. <member name="F:libffmpeg.AVPacket.flags">
  3823. A combination of AV_PKT_FLAG values
  3824. </member>
  3825. <member name="F:libffmpeg.AVPacket.dts">
  3826. Decompression timestamp in AVStream-&gt;time_base units; the time at which
  3827. the packet is decompressed.
  3828. Can be AV_NOPTS_VALUE if it is not stored in the file.
  3829. </member>
  3830. <member name="F:libffmpeg.AVPacket.pts">
  3831. Presentation timestamp in AVStream-&gt;time_base units; the time at which
  3832. the decompressed packet will be presented to the user.
  3833. Can be AV_NOPTS_VALUE if it is not stored in the file.
  3834. pts MUST be larger or equal to dts as presentation cannot happen before
  3835. decompression, unless one wants to view hex dumps. Some formats misuse
  3836. the terms dts and pts/cts to mean something different. Such timestamps
  3837. must be converted to true pts/dts before they are stored in AVPacket.
  3838. </member>
  3839. <member name="F:libffmpeg.AVPanScan.position">
  3840. position of the top left corner in 1/16 pel for up to 3 fields/frames
  3841. - encoding: Set by user.
  3842. - decoding: Set by libavcodec.
  3843. </member>
  3844. <member name="F:libffmpeg.AVPanScan.width">
  3845. width and height in 1/16 pel
  3846. - encoding: Set by user.
  3847. - decoding: Set by libavcodec.
  3848. </member>
  3849. <member name="F:libffmpeg.AVPanScan.id">
  3850. id
  3851. - encoding: Set by user.
  3852. - decoding: Set by libavcodec.
  3853. </member>
  3854. <member name="T:libffmpeg.AVPanScan">
  3855. The parent program guarantees that the input for B-frames containing
  3856. streams is not written to for at least s-&gt;max_b_frames+1 frames, if
  3857. this is not set the input will be copied.
  3858. @defgroup deprecated_flags Deprecated codec flags
  3859. Use corresponding private codec options instead.
  3860. @{
  3861. @}
  3862. Codec uses get_buffer() for allocating buffers and supports custom allocators.
  3863. If not set, it might not use get_buffer() at all or use operations that
  3864. assume the buffer was allocated by avcodec_default_get_buffer.
  3865. Encoder or decoder requires flushing with NULL input at the end in order to
  3866. give the complete and correct output.
  3867. NOTE: If this flag is not set, the codec is guaranteed to never be fed with
  3868. with NULL data. The user can still send NULL data to the public encode
  3869. or decode function, but libavcodec will not pass it along to the codec
  3870. unless this flag is set.
  3871. Decoders:
  3872. The decoder has a non-zero delay and needs to be fed with avpkt-&gt;data=NULL,
  3873. avpkt-&gt;size=0 at the end to get the delayed data until the decoder no longer
  3874. returns frames.
  3875. Encoders:
  3876. The encoder needs to be fed with NULL data at the end of encoding until the
  3877. encoder no longer returns data.
  3878. NOTE: For encoders implementing the AVCodec.encode2() function, setting this
  3879. flag also means that the encoder must set the pts and duration for
  3880. each output packet. If this flag is not set, the pts and duration will
  3881. be determined by libavcodec from the input frame.
  3882. Codec can be fed a final frame with a smaller size.
  3883. This can be used to prevent truncation of the last audio samples.
  3884. Codec can export data for HW decoding (VDPAU).
  3885. Codec can output multiple frames per AVPacket
  3886. Normally demuxers return one frame at a time, demuxers which do not do
  3887. are connected to a parser to split what they return into proper frames.
  3888. This flag is reserved to the very rare category of codecs which have a
  3889. bitstream that cannot be split into frames without timeconsuming
  3890. operations like full decoding. Demuxers carring such bitstreams thus
  3891. may return multiple frames in a packet. This has many disadvantages like
  3892. prohibiting stream copy in many cases thus it should only be considered
  3893. as a last resort.
  3894. Codec is experimental and is thus avoided in favor of non experimental
  3895. encoders
  3896. Codec should fill in channel configuration and samplerate instead of container
  3897. Codec is able to deal with negative linesizes
  3898. Codec supports frame-level multithreading.
  3899. Codec supports slice-based (or partition-based) multithreading.
  3900. Codec supports changed parameters at any point.
  3901. Codec supports avctx-&gt;thread_count == 0 (auto).
  3902. Audio encoder supports receiving a different number of samples in each call.
  3903. Codec is lossless.
  3904. Pan Scan area.
  3905. This specifies the area which should be displayed.
  3906. Note there may be multiple such areas for one frame.
  3907. </member>
  3908. <member name="T:libffmpeg.AVLPCType">
  3909. LPC analysis type
  3910. Determine which LPC analysis algorithm to use.
  3911. - encoding: Set by user
  3912. - decoding: unused
  3913. </member>
  3914. <member name="T:libffmpeg.AVChromaLocation">
  3915. X X 3 4 X X are luma samples,
  3916. 1 2 1-6 are possible chroma positions
  3917. X X 5 6 X 0 is undefined/unknown position
  3918. This defines the location of chroma samples.
  3919. - encoding: Set by user
  3920. - decoding: Set by libavcodec
  3921. </member>
  3922. <member name="M:libffmpeg.av_get_default_channel_layout(System.Int32)">
  3923. Return default channel layout for a given number of channels.
  3924. </member>
  3925. <member name="M:libffmpeg.av_get_channel_layout_nb_channels(System.UInt64)">
  3926. Return the number of channels in the channel layout.
  3927. </member>
  3928. <member name="M:libffmpeg.av_get_channel_layout(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  3929. @file
  3930. audio conversion routines
  3931. @addtogroup lavu_audio
  3932. @{
  3933. @defgroup channel_masks Audio channel masks
  3934. @{
  3935. Channel mask value used for AVCodecContext.request_channel_layout
  3936. to indicate that the user requests the channel order of the decoder output
  3937. to be the native codec channel order.
  3938. @}
  3939. @defgroup channel_mask_c Audio channel convenience macros
  3940. @{
  3941. @}
  3942. * Return a channel layout id that matches name, 0 if no match.
  3943. * name can be one or several of the following notations,
  3944. * separated by '+' or '|':
  3945. * - the name of an usual channel layout (mono, stereo, 4.0, quad, 5.0,
  3946. * 5.0(side), 5.1, 5.1(side), 7.1, 7.1(wide), downmix);
  3947. * - the name of a single channel (FL, FR, FC, LFE, BL, BR, FLC, FRC, BC,
  3948. * SL, SR, TC, TFL, TFC, TFR, TBL, TBC, TBR, DL, DR);
  3949. * - a number of channels, in decimal, optionnally followed by 'c', yielding
  3950. * the default channel layout for that number of channels (@see
  3951. * av_get_default_channel_layout);
  3952. * - a channel layout mask, in hexadecimal starting with "0x" (see the
  3953. * AV_CH_* macros).
  3954. + Example: "stereo+FC" = "2+FC" = "2c+1c" = "0x7"
  3955. </member>
  3956. <member name="M:libffmpeg.av_dict_free(libffmpeg.AVDictionary**)">
  3957. Free all the memory allocated for an AVDictionary struct
  3958. and all keys and values.
  3959. </member>
  3960. <member name="M:libffmpeg.av_dict_copy(libffmpeg.AVDictionary**,libffmpeg.AVDictionary*,System.Int32)">
  3961. Copy entries from one AVDictionary struct into another.
  3962. @param dst pointer to a pointer to a AVDictionary struct. If *dst is NULL,
  3963. this function will allocate a struct for you and put it in *dst
  3964. @param src pointer to source AVDictionary struct
  3965. @param flags flags to use when setting entries in *dst
  3966. @note metadata is read using the AV_DICT_IGNORE_SUFFIX flag
  3967. </member>
  3968. <member name="M:libffmpeg.av_dict_get(libffmpeg.AVDictionary*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,libffmpeg.AVDictionaryEntry!System.Runtime.CompilerServices.IsConst*,System.Int32)">
  3969. Get a dictionary entry with matching key.
  3970. @param prev Set to the previous matching element to find the next.
  3971. If set to NULL the first matching element is returned.
  3972. @param flags Allows case as well as suffix-insensitive comparisons.
  3973. @return Found entry or NULL, changing key or value leads to undefined behavior.
  3974. </member>
  3975. <member name="M:libffmpeg.av_force_cpu_flags(System.Int32)">
  3976. Disables cpu detection and forces the specified flags.
  3977. </member>
  3978. <member name="M:libffmpeg.av_get_cpu_flags">
  3979. Return the flags which specify extensions supported by the CPU.
  3980. </member>
  3981. <member name="M:libffmpeg.av_samples_fill_arrays(System.Byte**,System.Int32*,System.Byte*,System.Int32,System.Int32,libffmpeg.AVSampleFormat,System.Int32)">
  3982. Fill channel data pointers and linesize for samples with sample
  3983. format sample_fmt.
  3984. The pointers array is filled with the pointers to the samples data:
  3985. for planar, set the start point of each channel's data within the buffer,
  3986. for packed, set the start point of the entire buffer only.
  3987. The linesize array is filled with the aligned size of each channel's data
  3988. buffer for planar layout, or the aligned size of the buffer for all channels
  3989. for packed layout.
  3990. @param[out] audio_data array to be filled with the pointer for each channel
  3991. @param[out] linesize calculated linesize
  3992. @param buf the pointer to a buffer containing the samples
  3993. @param nb_channels the number of channels
  3994. @param nb_samples the number of samples in a single channel
  3995. @param sample_fmt the sample format
  3996. @param align buffer size alignment (1 = no alignment required)
  3997. @return 0 on success or a negative error code on failure
  3998. </member>
  3999. <member name="M:libffmpeg.av_samples_get_buffer_size(System.Int32*,System.Int32,System.Int32,libffmpeg.AVSampleFormat,System.Int32)">
  4000. Get the required buffer size for the given audio parameters.
  4001. @param[out] linesize calculated linesize, may be NULL
  4002. @param nb_channels the number of channels
  4003. @param nb_samples the number of samples in a single channel
  4004. @param sample_fmt the sample format
  4005. @return required buffer size, or negative error code on failure
  4006. </member>
  4007. <member name="M:libffmpeg.av_sample_fmt_is_planar(libffmpeg.AVSampleFormat)">
  4008. Check if the sample format is planar.
  4009. @param sample_fmt the sample format to inspect
  4010. @return 1 if the sample format is planar, 0 if it is interleaved
  4011. </member>
  4012. <member name="M:libffmpeg.av_get_bytes_per_sample(libffmpeg.AVSampleFormat)">
  4013. Return number of bytes per sample.
  4014. @param sample_fmt the sample format
  4015. @return number of bytes per sample or zero if unknown for the given
  4016. sample format
  4017. </member>
  4018. <member name="M:libffmpeg.av_get_bits_per_sample_fmt(libffmpeg.AVSampleFormat)">
  4019. @deprecated Use av_get_bytes_per_sample() instead.
  4020. </member>
  4021. <member name="M:libffmpeg.av_get_sample_fmt_string(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,libffmpeg.AVSampleFormat)">
  4022. Generate a string corresponding to the sample format with
  4023. sample_fmt, or a header if sample_fmt is negative.
  4024. @param buf the buffer where to write the string
  4025. @param buf_size the size of buf
  4026. @param sample_fmt the number of the sample format to print the
  4027. corresponding info string, or a negative value to print the
  4028. corresponding header.
  4029. @return the pointer to the filled buffer or NULL if sample_fmt is
  4030. unknown or in case of other errors
  4031. </member>
  4032. <member name="M:libffmpeg.av_get_sample_fmt_name(libffmpeg.AVSampleFormat)">
  4033. Return the name of sample_fmt, or NULL if sample_fmt is not
  4034. recognized.
  4035. </member>
  4036. <member name="T:libffmpeg.AVSampleFormat">
  4037. @}
  4038. @}
  4039. all in native-endian format
  4040. Return a sample format corresponding to name, or AV_SAMPLE_FMT_NONE
  4041. on error.
  4042. audio sample format
  4043. - encoding: Set by user.
  4044. - decoding: Set by libavcodec.
  4045. desired sample format
  4046. - encoding: Not used.
  4047. - decoding: Set by user.
  4048. Decoder will decode to this format if it can.
  4049. </member>
  4050. <member name="M:libffmpeg.av_x_if_null(System.Void!System.Runtime.CompilerServices.IsConst*,System.Void!System.Runtime.CompilerServices.IsConst*)">
  4051. Return x default pointer in case p is NULL.
  4052. </member>
  4053. <member name="M:libffmpeg.av_log_set_flags(System.Int32)">
  4054. av_dlog macros
  4055. Useful to print debug messages that shouldn't get compiled in normally.
  4056. Skip repeated messages, this requires the user app to use av_log() instead of
  4057. (f)printf as the 2 would otherwise interfere and lead to
  4058. "Last message repeated x times" messages below (f)printf messages with some
  4059. bad luck.
  4060. Also to receive the last, "last repeated" line if any, the user app must
  4061. call av_log(NULL, AV_LOG_QUIET, "%s", ""); at the end
  4062. </member>
  4063. <member name="M:libffmpeg.av_log_format_line(System.Void*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.Int32*)">
  4064. Format a line of log the same way as the default callback.
  4065. @param line buffer to receive the formated line
  4066. @param line_size size of the buffer
  4067. @param print_prefix used to store whether the prefix must be printed;
  4068. must point to a persistent integer initially set to 1
  4069. </member>
  4070. <member name="M:libffmpeg.av_log(System.Void*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,BTEllipsis)">
  4071. Something went really wrong and we will crash now.
  4072. Something went wrong and recovery is not possible.
  4073. For example, no header was found for a format which depends
  4074. on headers or an illegal combination of parameters is used.
  4075. Something went wrong and cannot losslessly be recovered.
  4076. However, not all future data is affected.
  4077. Something somehow does not look correct. This may or may not
  4078. lead to problems. An example would be the use of '-vstrict -2'.
  4079. Stuff which is only useful for libav* developers.
  4080. Send the specified message to the log if the level is less than or equal
  4081. to the current av_log_level. By default, all logging messages are sent to
  4082. stderr. This behavior can be altered by setting a different av_vlog callback
  4083. function.
  4084. @param avcl A pointer to an arbitrary struct of which the first field is a
  4085. pointer to an AVClass struct.
  4086. @param level The importance level of the message, lower values signifying
  4087. higher importance.
  4088. @param fmt The format string (printf-compatible) that specifies how
  4089. subsequent arguments are converted to output.
  4090. @see av_vlog
  4091. </member>
  4092. <member name="T:libffmpeg.AVClass">
  4093. Return an AVClass corresponding to next potential
  4094. AVOptions-enabled child.
  4095. The difference between child_next and this is that
  4096. child_next iterates over _already existing_ objects, while
  4097. child_class_next iterates over _all possible_ children.
  4098. </member>
  4099. <member name="F:libffmpeg.AVClass.child_next">
  4100. Return next AVOptions-enabled child or NULL
  4101. </member>
  4102. <member name="F:libffmpeg.AVClass.parent_log_context_offset">
  4103. Offset in the structure where a pointer to the parent context for loging is stored.
  4104. for example a decoder that uses eval.c could pass its AVCodecContext to eval as such
  4105. parent context. And a av_log() implementation could then display the parent context
  4106. can be NULL of course
  4107. </member>
  4108. <member name="F:libffmpeg.AVClass.log_level_offset_offset">
  4109. Offset in the structure where log_level_offset is stored.
  4110. 0 means there is no such variable
  4111. </member>
  4112. <member name="F:libffmpeg.AVClass.version">
  4113. LIBAVUTIL_VERSION with which this structure was created.
  4114. This is used to allow fields to be added without requiring major
  4115. version bumps everywhere.
  4116. </member>
  4117. <member name="T:libffmpeg.AVOption">
  4118. a pointer to the first option specified in the class if any or NULL
  4119. @see av_set_default_options()
  4120. </member>
  4121. <member name="F:libffmpeg.AVClass.item_name">
  4122. A pointer to a function which returns the name of a context
  4123. instance ctx associated with the class.
  4124. </member>
  4125. <member name="F:libffmpeg.AVClass.class_name">
  4126. The name of the class; usually it is the same name as the
  4127. context structure type to which the AVClass is associated.
  4128. </member>
  4129. <member name="M:libffmpeg.av_compare_mod(System.UInt64,System.UInt64,System.UInt64)">
  4130. Compare 2 integers modulo mod.
  4131. That is we compare integers a and b for which only the least
  4132. significant log2(mod) bits are known.
  4133. @param mod must be a power of 2
  4134. @return a negative value if a is smaller than b
  4135. a positive value if a is greater than b
  4136. 0 if a equals b
  4137. </member>
  4138. <member name="M:libffmpeg.av_compare_ts(System.Int64,libffmpeg.AVRational,System.Int64,libffmpeg.AVRational)">
  4139. Compare 2 timestamps each in its own timebases.
  4140. The result of the function is undefined if one of the timestamps
  4141. is outside the int64_t range when represented in the others timebase.
  4142. @return -1 if ts_a is before ts_b, 1 if ts_a is after ts_b or 0 if they represent the same position
  4143. </member>
  4144. <member name="M:libffmpeg.av_rescale_q(System.Int64,libffmpeg.AVRational,libffmpeg.AVRational)">
  4145. Rescale a 64-bit integer by 2 rational numbers.
  4146. </member>
  4147. <member name="M:libffmpeg.av_rescale_rnd(System.Int64,System.Int64,System.Int64,libffmpeg.AVRounding)">
  4148. Rescale a 64-bit integer with specified rounding.
  4149. A simple a*b/c isn't possible as it can overflow.
  4150. </member>
  4151. <member name="M:libffmpeg.av_rescale(System.Int64,System.Int64,System.Int64)">
  4152. Rescale a 64-bit integer with rounding to nearest.
  4153. A simple a*b/c isn't possible as it can overflow.
  4154. </member>
  4155. <member name="T:libffmpeg.AVRounding">
  4156. @}
  4157. @addtogroup lavu_math
  4158. @{
  4159. </member>
  4160. <member name="M:libffmpeg.av_find_nearest_q_idx(libffmpeg.AVRational,libffmpeg.AVRational!System.Runtime.CompilerServices.IsConst*)">
  4161. Find the nearest value in q_list to q.
  4162. @param q_list an array of rationals terminated by {0, 0}
  4163. @return the index of the nearest value found in the array
  4164. </member>
  4165. <member name="M:libffmpeg.av_nearer_q(libffmpeg.AVRational,libffmpeg.AVRational,libffmpeg.AVRational)">
  4166. @return 1 if q1 is nearer to q than q2, -1 if q2 is nearer
  4167. than q1, 0 if they have the same distance.
  4168. </member>
  4169. <member name="M:libffmpeg.av_d2q(System.Double,System.Int32)">
  4170. Convert a double precision floating point number to a rational.
  4171. inf is expressed as {1,0} or {-1,0} depending on the sign.
  4172. @param d double to convert
  4173. @param max the maximum allowed numerator and denominator
  4174. @return (AVRational) d
  4175. </member>
  4176. <member name="M:libffmpeg.av_sub_q(libffmpeg.AVRational,libffmpeg.AVRational)">
  4177. Subtract one rational from another.
  4178. @param b first rational
  4179. @param c second rational
  4180. @return b-c
  4181. </member>
  4182. <member name="M:libffmpeg.av_add_q(libffmpeg.AVRational,libffmpeg.AVRational)">
  4183. Add two rationals.
  4184. @param b first rational
  4185. @param c second rational
  4186. @return b+c
  4187. </member>
  4188. <member name="M:libffmpeg.av_div_q(libffmpeg.AVRational,libffmpeg.AVRational)">
  4189. Divide one rational by another.
  4190. @param b first rational
  4191. @param c second rational
  4192. @return b/c
  4193. </member>
  4194. <member name="M:libffmpeg.av_mul_q(libffmpeg.AVRational,libffmpeg.AVRational)">
  4195. Multiply two rationals.
  4196. @param b first rational
  4197. @param c second rational
  4198. @return b*c
  4199. </member>
  4200. <member name="M:libffmpeg.av_q2d(libffmpeg.AVRational)">
  4201. Convert rational to double.
  4202. @param a rational to convert
  4203. @return (double) a
  4204. </member>
  4205. <member name="M:libffmpeg.av_max_alloc(System.UInt32)">
  4206. Set the maximum size that may me allocated in one block.
  4207. </member>
  4208. <member name="M:libffmpeg.av_size_mult(System.UInt32,System.UInt32,System.UInt32*)">
  4209. Multiply two size_t values checking for overflow.
  4210. @return 0 if success, AVERROR(EINVAL) if overflow.
  4211. </member>
  4212. <member name="M:libffmpeg.av_dynarray_add(System.Void*,System.Int32*,System.Void*)">
  4213. Add an element to a dynamic array.
  4214. @param tab_ptr Pointer to the array.
  4215. @param nb_ptr Pointer to the number of elements in the array.
  4216. @param elem Element to be added.
  4217. </member>
  4218. <member name="M:libffmpeg.av_freep(System.Void*)">
  4219. Free a memory block which has been allocated with av_malloc(z)() or
  4220. av_realloc() and set the pointer pointing to it to NULL.
  4221. @param ptr Pointer to the pointer to the memory block which should
  4222. be freed.
  4223. @see av_free()
  4224. </member>
  4225. <member name="M:libffmpeg.av_strdup(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*)">
  4226. Duplicate the string s.
  4227. @param s string to be duplicated
  4228. @return Pointer to a newly allocated string containing a
  4229. copy of s or NULL if the string cannot be allocated.
  4230. </member>
  4231. <member name="M:libffmpeg.av_calloc(System.UInt32,System.UInt32)">
  4232. Allocate a block of nmemb * size bytes with alignment suitable for all
  4233. memory accesses (including vectors if available on the CPU) and
  4234. zero all the bytes of the block.
  4235. The allocation will fail if nmemb * size is greater than or equal
  4236. to INT_MAX.
  4237. @param nmemb
  4238. @param size
  4239. @return Pointer to the allocated block, NULL if it cannot be allocated.
  4240. </member>
  4241. <member name="M:libffmpeg.av_mallocz(System.UInt32)">
  4242. Allocate a block of size bytes with alignment suitable for all
  4243. memory accesses (including vectors if available on the CPU) and
  4244. zero all the bytes of the block.
  4245. @param size Size in bytes for the memory block to be allocated.
  4246. @return Pointer to the allocated block, NULL if it cannot be allocated.
  4247. @see av_malloc()
  4248. </member>
  4249. <member name="M:libffmpeg.av_free(System.Void*)">
  4250. Free a memory block which has been allocated with av_malloc(z)() or
  4251. av_realloc().
  4252. @param ptr Pointer to the memory block which should be freed.
  4253. @note ptr = NULL is explicitly allowed.
  4254. @note It is recommended that you use av_freep() instead.
  4255. @see av_freep()
  4256. </member>
  4257. <member name="M:libffmpeg.av_realloc_f(System.Void*,System.UInt32,System.UInt32)">
  4258. Allocate or reallocate a block of memory.
  4259. This function does the same thing as av_realloc, except:
  4260. - It takes two arguments and checks the result of the multiplication for
  4261. integer overflow.
  4262. - It frees the input block in case of failure, thus avoiding the memory
  4263. leak with the classic "buf = realloc(buf); if (!buf) return -1;".
  4264. </member>
  4265. <member name="M:libffmpeg.av_realloc(System.Void*,System.UInt32)">
  4266. Allocate or reallocate a block of memory.
  4267. If ptr is NULL and size &gt; 0, allocate a new block. If
  4268. size is zero, free the memory block pointed to by ptr.
  4269. @param ptr Pointer to a memory block already allocated with
  4270. av_malloc(z)() or av_realloc() or NULL.
  4271. @param size Size in bytes for the memory block to be allocated or
  4272. reallocated.
  4273. @return Pointer to a newly reallocated block or NULL if the block
  4274. cannot be reallocated or the function is used to free the memory block.
  4275. @see av_fast_realloc()
  4276. </member>
  4277. <member name="M:libffmpeg.av_malloc(System.UInt32)">
  4278. @}
  4279. @addtogroup lavu_mem
  4280. @{
  4281. Allocate a block of size bytes with alignment suitable for all
  4282. memory accesses (including vectors if available on the CPU).
  4283. @param size Size in bytes for the memory block to be allocated.
  4284. @return Pointer to the allocated block, NULL if the block cannot
  4285. be allocated.
  4286. @see av_mallocz()
  4287. </member>
  4288. <member name="M:libffmpeg.av_strerror(System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.UInt32)">
  4289. Convert a UTF-8 character (up to 4 bytes) to its 32-bit UCS-4 encoded form.
  4290. @param val Output value, must be an lvalue of type uint32_t.
  4291. @param GET_BYTE Expression reading one byte from the input.
  4292. Evaluated up to 7 times (4 for the currently
  4293. assigned Unicode range). With a memory buffer
  4294. input, this could be *ptr++.
  4295. @param ERROR Expression to be evaluated on invalid input,
  4296. typically a goto statement.
  4297. Convert a UTF-16 character (2 or 4 bytes) to its 32-bit UCS-4 encoded form.
  4298. @param val Output value, must be an lvalue of type uint32_t.
  4299. @param GET_16BIT Expression returning two bytes of UTF-16 data converted
  4300. to native byte order. Evaluated one or two times.
  4301. @param ERROR Expression to be evaluated on invalid input,
  4302. typically a goto statement.
  4303. @def PUT_UTF8(val, tmp, PUT_BYTE)
  4304. Convert a 32-bit Unicode character to its UTF-8 encoded form (up to 4 bytes long).
  4305. @param val is an input-only argument and should be of type uint32_t. It holds
  4306. a UCS-4 encoded Unicode character that is to be converted to UTF-8. If
  4307. val is given as a function it is executed only once.
  4308. @param tmp is a temporary variable and should be of type uint8_t. It
  4309. represents an intermediate value during conversion that is to be
  4310. output by PUT_BYTE.
  4311. @param PUT_BYTE writes the converted UTF-8 bytes to any proper destination.
  4312. It could be a function or a statement, and uses tmp as the input byte.
  4313. For example, PUT_BYTE could be "*output++ = tmp;" PUT_BYTE will be
  4314. executed up to 4 times for values in the valid UTF-8 range and up to
  4315. 7 times in the general case, depending on the length of the converted
  4316. Unicode character.
  4317. @def PUT_UTF16(val, tmp, PUT_16BIT)
  4318. Convert a 32-bit Unicode character to its UTF-16 encoded form (2 or 4 bytes).
  4319. @param val is an input-only argument and should be of type uint32_t. It holds
  4320. a UCS-4 encoded Unicode character that is to be converted to UTF-16. If
  4321. val is given as a function it is executed only once.
  4322. @param tmp is a temporary variable and should be of type uint16_t. It
  4323. represents an intermediate value during conversion that is to be
  4324. output by PUT_16BIT.
  4325. @param PUT_16BIT writes the converted UTF-16 data to any proper destination
  4326. in desired endianness. It could be a function or a statement, and uses tmp
  4327. as the input byte. For example, PUT_BYTE could be "*output++ = tmp;"
  4328. PUT_BYTE will be executed 1 or 2 times depending on input character.
  4329. @file
  4330. memory handling functions
  4331. @file
  4332. Macro definitions for various function/variable attributes
  4333. @file
  4334. error code definitions
  4335. @addtogroup lavu_error
  4336. @{
  4337. This is semantically identical to AVERROR_BUG
  4338. it has been introduced in Libav after our AVERROR_BUG and with a modified value.
  4339. Put a description of the AVERROR code errnum in errbuf.
  4340. In case of failure the global variable errno is set to indicate the
  4341. error. Even in case of failure av_strerror() will print a generic
  4342. error message indicating the errnum provided to errbuf.
  4343. @param errnum error code to describe
  4344. @param errbuf buffer to which description is written
  4345. @param errbuf_size the size in bytes of errbuf
  4346. @return 0 on success, a negative value if a description for errnum
  4347. cannot be found
  4348. </member>
  4349. <member name="M:libffmpeg.av_popcount64_c(System.UInt64)">
  4350. Count number of bits set to one in x
  4351. @param x value to count bits of
  4352. @return the number of bits set to one in x
  4353. </member>
  4354. <member name="M:libffmpeg.av_popcount_c(System.UInt32)">
  4355. Count number of bits set to one in x
  4356. @param x value to count bits of
  4357. @return the number of bits set to one in x
  4358. </member>
  4359. <member name="M:libffmpeg.av_ceil_log2_c(System.Int32)">
  4360. Compute ceil(log2(x)).
  4361. * @param x value used to compute ceil(log2(x))
  4362. * @return computed ceiling of log2(x)
  4363. </member>
  4364. <member name="M:libffmpeg.av_clipf_c(System.Single,System.Single,System.Single)">
  4365. Clip a float value into the amin-amax range.
  4366. @param a value to clip
  4367. @param amin minimum value of the clip range
  4368. @param amax maximum value of the clip range
  4369. @return clipped value
  4370. </member>
  4371. <member name="M:libffmpeg.av_clip_uintp2_c(System.Int32,System.Int32)">
  4372. Clip a signed integer to an unsigned power of two range.
  4373. @param a value to clip
  4374. @param p bit position to clip at
  4375. @return clipped value
  4376. </member>
  4377. <member name="M:libffmpeg.av_clipl_int32_c(System.Int64)">
  4378. Clip a signed 64-bit integer value into the -2147483648,2147483647 range.
  4379. @param a value to clip
  4380. @return clipped value
  4381. </member>
  4382. <member name="M:libffmpeg.av_clip_int16_c(System.Int32)">
  4383. Clip a signed integer value into the -32768,32767 range.
  4384. @param a value to clip
  4385. @return clipped value
  4386. </member>
  4387. <member name="M:libffmpeg.av_clip_uint16_c(System.Int32)">
  4388. Clip a signed integer value into the 0-65535 range.
  4389. @param a value to clip
  4390. @return clipped value
  4391. </member>
  4392. <member name="M:libffmpeg.av_clip_int8_c(System.Int32)">
  4393. Clip a signed integer value into the -128,127 range.
  4394. @param a value to clip
  4395. @return clipped value
  4396. </member>
  4397. <member name="M:libffmpeg.av_clip_uint8_c(System.Int32)">
  4398. Clip a signed integer value into the 0-255 range.
  4399. @param a value to clip
  4400. @return clipped value
  4401. </member>
  4402. <member name="M:libffmpeg.av_clip_c(System.Int32,System.Int32,System.Int32)">
  4403. @file
  4404. common internal and external API header
  4405. Clip a signed integer value into the amin-amax range.
  4406. @param a value to clip
  4407. @param amin minimum value of the clip range
  4408. @param amax maximum value of the clip range
  4409. @return clipped value
  4410. </member>
  4411. <member name="F:libffmpeg.ff_log2_tab">
  4412. @file
  4413. Macro definitions for various function/variable attributes
  4414. Disable warnings about deprecated features
  4415. This is useful for sections of code kept for backward compatibility and
  4416. scheduled for removal.
  4417. Mark a variable as used and prevent the compiler from optimizing it
  4418. away. This is useful for variables accessed only from inline
  4419. assembler without the compiler being aware.
  4420. </member>
  4421. <member name="T:libffmpeg._iobuf">
  4422. @}
  4423. @file
  4424. common internal and external API header
  4425. </member>
  4426. <member name="M:libffmpeg.av_get_picture_type_char(libffmpeg.AVPictureType)">
  4427. Return a single letter to describe the given picture type
  4428. pict_type.
  4429. @param[in] pict_type the picture type @return a single character
  4430. representing the picture type, '?' if pict_type is unknown
  4431. </member>
  4432. <member name="T:libffmpeg.AVPictureType">
  4433. @defgroup lavu_const Constants
  4434. @{
  4435. @defgroup lavu_enc Encoding specific
  4436. @note those definition should move to avcodec
  4437. @{
  4438. @}
  4439. @defgroup lavu_time Timestamp specific
  4440. FFmpeg internal timebase and timestamp definitions
  4441. @{
  4442. @brief Undefined timestamp value
  4443. Usually reported by demuxer that work on containers that do not provide
  4444. either pts or dts.
  4445. Internal time base represented as integer
  4446. Internal time base represented as fractional value
  4447. @}
  4448. @}
  4449. @defgroup lavu_picture Image related
  4450. AVPicture types, pixel formats and basic image planes manipulation.
  4451. @{
  4452. Picture type of the frame, see ?_TYPE below.
  4453. - encoding: Set by libavcodec. for coded_picture (and set by user for input).
  4454. - decoding: Set by libavcodec.
  4455. </member>
  4456. <member name="M:libffmpeg.av_get_media_type_string(libffmpeg.AVMediaType)">
  4457. Return a string describing the media_type enum, NULL if media_type
  4458. is unknown.
  4459. </member>
  4460. <member name="T:libffmpeg.AVMediaType">
  4461. @}
  4462. @addtogroup lavu_media Media Type
  4463. @brief Media Type
  4464. Type of codec implemented by the hardware accelerator.
  4465. See AVMEDIA_TYPE_xxx
  4466. Get the type of the given codec.
  4467. </member>
  4468. <member name="M:libffmpeg.avutil_license">
  4469. Return the libavutil license.
  4470. </member>
  4471. <member name="M:libffmpeg.avutil_configuration">
  4472. Return the libavutil build-time configuration.
  4473. </member>
  4474. <member name="M:libffmpeg.avutil_version">
  4475. @file
  4476. external API header
  4477. @mainpage
  4478. @section libav_intro Introduction
  4479. This document describe the usage of the different libraries
  4480. provided by FFmpeg.
  4481. @li @ref libavc "libavcodec" encoding/decoding library
  4482. @li @subpage libavfilter graph based frame editing library
  4483. @li @ref libavf "libavformat" I/O and muxing/demuxing library
  4484. @li @ref lavd "libavdevice" special devices muxing/demuxing library
  4485. @li @ref lavu "libavutil" common utility library
  4486. @li @subpage libpostproc post processing library
  4487. @li @subpage libswscale color conversion and scaling library
  4488. @defgroup lavu Common utility functions
  4489. @brief
  4490. libavutil contains the code shared across all the other FFmpeg
  4491. libraries
  4492. @note In order to use the functions provided by avutil you must include
  4493. the specific header.
  4494. @{
  4495. @defgroup lavu_crypto Crypto and Hashing
  4496. @{
  4497. @}
  4498. @defgroup lavu_math Maths
  4499. @{
  4500. @}
  4501. @defgroup lavu_string String Manipulation
  4502. @{
  4503. @}
  4504. @defgroup lavu_mem Memory Management
  4505. @{
  4506. @}
  4507. @defgroup lavu_data Data Structures
  4508. @{
  4509. @}
  4510. @defgroup lavu_audio Audio related
  4511. @{
  4512. @}
  4513. @defgroup lavu_error Error Codes
  4514. @{
  4515. @}
  4516. @defgroup lavu_misc Other
  4517. @{
  4518. @defgroup lavu_internal Internal
  4519. Not exported functions, for internal usage only
  4520. @{
  4521. @}
  4522. @defgroup preproc_misc Preprocessor String Macros
  4523. String manipulation macros
  4524. @{
  4525. @}
  4526. @defgroup version_utils Library Version Macros
  4527. Useful to check and match library version in order to maintain
  4528. backward compatibility.
  4529. @{
  4530. @}
  4531. @defgroup lavu_ver Version and Build diagnostics
  4532. Macros and function useful to check at compiletime and at runtime
  4533. which version of libavutil is in use.
  4534. @{
  4535. @}
  4536. @defgroup depr_guards Deprecation guards
  4537. Those FF_API_* defines are not part of public API.
  4538. They may change, break or disappear at any time.
  4539. They are used mostly internally to mark code that will be removed
  4540. on the next major version.
  4541. @{
  4542. @}
  4543. @addtogroup lavu_ver
  4544. @{
  4545. Return the LIBAVUTIL_VERSION_INT constant.
  4546. </member>
  4547. <member name="T:AForge.Video.FFMPEG.VideoCodec">
  4548. <summary>
  4549. Enumeration of some video codecs from FFmpeg library, which are available for writing video files.
  4550. </summary>
  4551. </member>
  4552. <member name="F:AForge.Video.FFMPEG.VideoCodec.Raw">
  4553. <summary>
  4554. Raw (uncompressed) video.
  4555. </summary>
  4556. </member>
  4557. <member name="F:AForge.Video.FFMPEG.VideoCodec.MPEG2">
  4558. <summary>
  4559. MPEG-2 part 2.
  4560. </summary>
  4561. </member>
  4562. <member name="F:AForge.Video.FFMPEG.VideoCodec.FLV1">
  4563. <summary>
  4564. Flash Video (FLV) / Sorenson Spark / Sorenson H.263.
  4565. </summary>
  4566. </member>
  4567. <member name="F:AForge.Video.FFMPEG.VideoCodec.H263P">
  4568. <summary>
  4569. H.263+ / H.263-1998 / H.263 version 2.
  4570. </summary>
  4571. </member>
  4572. <member name="F:AForge.Video.FFMPEG.VideoCodec.MSMPEG4v3">
  4573. <summary>
  4574. MPEG-4 part 2 Microsoft variant version 3.
  4575. </summary>
  4576. </member>
  4577. <member name="F:AForge.Video.FFMPEG.VideoCodec.MSMPEG4v2">
  4578. <summary>
  4579. MPEG-4 part 2 Microsoft variant version 2.
  4580. </summary>
  4581. </member>
  4582. <member name="F:AForge.Video.FFMPEG.VideoCodec.WMV2">
  4583. <summary>
  4584. Windows Media Video 8.
  4585. </summary>
  4586. </member>
  4587. <member name="F:AForge.Video.FFMPEG.VideoCodec.WMV1">
  4588. <summary>
  4589. Windows Media Video 7.
  4590. </summary>
  4591. </member>
  4592. <member name="F:AForge.Video.FFMPEG.VideoCodec.MPEG4">
  4593. <summary>
  4594. MPEG-4 part 2.
  4595. </summary>
  4596. </member>
  4597. <member name="F:AForge.Video.FFMPEG.VideoCodec.Default">
  4598. <summary>
  4599. Default video codec, which FFmpeg library selects for the specified file format.
  4600. </summary>
  4601. </member>
  4602. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVRational'. -->
  4603. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_cmp_q(libffmpeg.AVRational,libffmpeg.AVRational)'. -->
  4604. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_reduce(System.Int32*,System.Int32*,System.Int64,System.Int64,System.Int64)'. -->
  4605. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_gcd(System.Int64,System.Int64)'. -->
  4606. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVExtFloat'. -->
  4607. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.PixelFormat'. -->
  4608. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVSampleFormat'. -->
  4609. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_samples_alloc(System.Byte**,System.Int32*,System.Int32,System.Int32,libffmpeg.AVSampleFormat,System.Int32)'. -->
  4610. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_dict_set(libffmpeg.AVDictionary**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)'. -->
  4611. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.CodecID'. -->
  4612. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_get_channel_layout_string(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.Int32,System.UInt64)'. -->
  4613. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.Motion_Est_ID'. -->
  4614. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVSideDataParamChangeFlags'. -->
  4615. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFrame.motion_val'. -->
  4616. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFrame.error'. -->
  4617. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFrame.type'. -->
  4618. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.b_quant_factor'. -->
  4619. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.codec_tag'. -->
  4620. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.i_quant_factor'. -->
  4621. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.error'. -->
  4622. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.dia_size'. -->
  4623. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.pre_dia_size'. -->
  4624. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.stream_codec_tag'. -->
  4625. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.rc_max_available_vbv_use'. -->
  4626. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.rc_min_vbv_overflow_use'. -->
  4627. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.execute2'. -->
  4628. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.PixelFormat'. -->
  4629. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.PixelFormat'. -->
  4630. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avcodec_open(libffmpeg.AVCodecContext*,libffmpeg.AVCodec*)'. -->
  4631. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avcodec_open2(libffmpeg.AVCodecContext*,libffmpeg.AVCodec*,libffmpeg.AVDictionary**)'. -->
  4632. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avcodec_decode_video2(libffmpeg.AVCodecContext*,libffmpeg.AVFrame*,System.Int32*,libffmpeg.AVPacket!System.Runtime.CompilerServices.IsConst*)'. -->
  4633. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecParserContext.dts_sync_point'. -->
  4634. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_parser_parse2(libffmpeg.AVCodecParserContext*,libffmpeg.AVCodecContext*,System.Byte**,System.Int32*,System.Byte!System.Runtime.CompilerServices.IsConst*,System.Int32,System.Int64,System.Int64,System.Int64)'. -->
  4635. <!-- Discarding badly formed XML document comment for member 'D:libffmpeg.clock_t'. -->
  4636. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVRational'. -->
  4637. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_cmp_q(libffmpeg.AVRational,libffmpeg.AVRational)'. -->
  4638. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_reduce(System.Int32*,System.Int32*,System.Int64,System.Int64,System.Int64)'. -->
  4639. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_gcd(System.Int64,System.Int64)'. -->
  4640. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVExtFloat'. -->
  4641. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.PixelFormat'. -->
  4642. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVSampleFormat'. -->
  4643. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_samples_alloc(System.Byte**,System.Int32*,System.Int32,System.Int32,libffmpeg.AVSampleFormat,System.Int32)'. -->
  4644. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_dict_set(libffmpeg.AVDictionary**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)'. -->
  4645. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.CodecID'. -->
  4646. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_get_channel_layout_string(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.Int32,System.UInt64)'. -->
  4647. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.Motion_Est_ID'. -->
  4648. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVSideDataParamChangeFlags'. -->
  4649. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFrame.motion_val'. -->
  4650. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFrame.error'. -->
  4651. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFrame.type'. -->
  4652. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.b_quant_factor'. -->
  4653. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.codec_tag'. -->
  4654. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.i_quant_factor'. -->
  4655. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.error'. -->
  4656. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.dia_size'. -->
  4657. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.pre_dia_size'. -->
  4658. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.stream_codec_tag'. -->
  4659. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.rc_max_available_vbv_use'. -->
  4660. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.rc_min_vbv_overflow_use'. -->
  4661. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.execute2'. -->
  4662. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.PixelFormat'. -->
  4663. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.PixelFormat'. -->
  4664. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avcodec_open(libffmpeg.AVCodecContext*,libffmpeg.AVCodec*)'. -->
  4665. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avcodec_open2(libffmpeg.AVCodecContext*,libffmpeg.AVCodec*,libffmpeg.AVDictionary**)'. -->
  4666. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avcodec_decode_video2(libffmpeg.AVCodecContext*,libffmpeg.AVFrame*,System.Int32*,libffmpeg.AVPacket!System.Runtime.CompilerServices.IsConst*)'. -->
  4667. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecParserContext.dts_sync_point'. -->
  4668. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_parser_parse2(libffmpeg.AVCodecParserContext*,libffmpeg.AVCodecContext*,System.Byte**,System.Int32*,System.Byte!System.Runtime.CompilerServices.IsConst*,System.Int32,System.Int64,System.Int64,System.Int64)'. -->
  4669. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avio_seek(libffmpeg.AVIOContext*,System.Int64,System.Int32)'. -->
  4670. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avio_get_str(libffmpeg.AVIOContext*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32)'. -->
  4671. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avio_get_str16le(libffmpeg.AVIOContext*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32)'. -->
  4672. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avio_close(libffmpeg.AVIOContext*)'. -->
  4673. <!-- Discarding badly formed XML document comment for member 'D:libffmpeg.AVMetadata'. -->
  4674. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_metadata_set2(libffmpeg.AVDictionary**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)'. -->
  4675. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVFrac'. -->
  4676. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFormatParameters.mpeg2ts_compute_pcr'. -->
  4677. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVInputFormat.read_packet'. -->
  4678. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVInputFormat.read_seek2'. -->
  4679. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_probe_input_format2(libffmpeg.AVProbeData*,System.Int32,System.Int32*)'. -->
  4680. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_read_frame(libffmpeg.AVFormatContext*,libffmpeg.AVPacket*)'. -->
  4681. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avformat_seek_file(libffmpeg.AVFormatContext*,System.Int32,System.Int64,System.Int64,System.Int64,System.Int32)'. -->
  4682. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_write_frame(libffmpeg.AVFormatContext*,libffmpeg.AVPacket*)'. -->
  4683. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_interleave_packet_per_dts(libffmpeg.AVFormatContext*,libffmpeg.AVPacket*,libffmpeg.AVPacket*,System.Int32)'. -->
  4684. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_index_search_timestamp(libffmpeg.AVStream*,System.Int64,System.Int32)'. -->
  4685. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.sws_getCoefficients(System.Int32)'. -->
  4686. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.sws_printVec2(libffmpeg.SwsVector*,libffmpeg.AVClass*,System.Int32)'. -->
  4687. <!-- Discarding badly formed XML document comment for member 'D:libffmpeg.clock_t'. -->
  4688. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVRational'. -->
  4689. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_cmp_q(libffmpeg.AVRational,libffmpeg.AVRational)'. -->
  4690. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_reduce(System.Int32*,System.Int32*,System.Int64,System.Int64,System.Int64)'. -->
  4691. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_gcd(System.Int64,System.Int64)'. -->
  4692. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVExtFloat'. -->
  4693. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.PixelFormat'. -->
  4694. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVSampleFormat'. -->
  4695. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_samples_alloc(System.Byte**,System.Int32*,System.Int32,System.Int32,libffmpeg.AVSampleFormat,System.Int32)'. -->
  4696. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_dict_set(libffmpeg.AVDictionary**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)'. -->
  4697. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.CodecID'. -->
  4698. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_get_channel_layout_string(System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32,System.Int32,System.UInt64)'. -->
  4699. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.Motion_Est_ID'. -->
  4700. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVSideDataParamChangeFlags'. -->
  4701. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFrame.motion_val'. -->
  4702. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFrame.error'. -->
  4703. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFrame.type'. -->
  4704. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.b_quant_factor'. -->
  4705. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.codec_tag'. -->
  4706. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.i_quant_factor'. -->
  4707. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.error'. -->
  4708. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.dia_size'. -->
  4709. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.pre_dia_size'. -->
  4710. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.stream_codec_tag'. -->
  4711. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.rc_max_available_vbv_use'. -->
  4712. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.rc_min_vbv_overflow_use'. -->
  4713. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecContext.execute2'. -->
  4714. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.PixelFormat'. -->
  4715. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.PixelFormat'. -->
  4716. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avcodec_open(libffmpeg.AVCodecContext*,libffmpeg.AVCodec*)'. -->
  4717. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avcodec_open2(libffmpeg.AVCodecContext*,libffmpeg.AVCodec*,libffmpeg.AVDictionary**)'. -->
  4718. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avcodec_decode_video2(libffmpeg.AVCodecContext*,libffmpeg.AVFrame*,System.Int32*,libffmpeg.AVPacket!System.Runtime.CompilerServices.IsConst*)'. -->
  4719. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVCodecParserContext.dts_sync_point'. -->
  4720. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_parser_parse2(libffmpeg.AVCodecParserContext*,libffmpeg.AVCodecContext*,System.Byte**,System.Int32*,System.Byte!System.Runtime.CompilerServices.IsConst*,System.Int32,System.Int64,System.Int64,System.Int64)'. -->
  4721. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avio_seek(libffmpeg.AVIOContext*,System.Int64,System.Int32)'. -->
  4722. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avio_get_str(libffmpeg.AVIOContext*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32)'. -->
  4723. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avio_get_str16le(libffmpeg.AVIOContext*,System.Int32,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte*,System.Int32)'. -->
  4724. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avio_close(libffmpeg.AVIOContext*)'. -->
  4725. <!-- Discarding badly formed XML document comment for member 'D:libffmpeg.AVMetadata'. -->
  4726. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_metadata_set2(libffmpeg.AVDictionary**,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.SByte!System.Runtime.CompilerServices.IsSignUnspecifiedByte!System.Runtime.CompilerServices.IsConst*,System.Int32)'. -->
  4727. <!-- Discarding badly formed XML document comment for member 'T:libffmpeg.AVFrac'. -->
  4728. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVFormatParameters.mpeg2ts_compute_pcr'. -->
  4729. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVInputFormat.read_packet'. -->
  4730. <!-- Discarding badly formed XML document comment for member 'F:libffmpeg.AVInputFormat.read_seek2'. -->
  4731. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_probe_input_format2(libffmpeg.AVProbeData*,System.Int32,System.Int32*)'. -->
  4732. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_read_frame(libffmpeg.AVFormatContext*,libffmpeg.AVPacket*)'. -->
  4733. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.avformat_seek_file(libffmpeg.AVFormatContext*,System.Int32,System.Int64,System.Int64,System.Int64,System.Int32)'. -->
  4734. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_write_frame(libffmpeg.AVFormatContext*,libffmpeg.AVPacket*)'. -->
  4735. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_interleave_packet_per_dts(libffmpeg.AVFormatContext*,libffmpeg.AVPacket*,libffmpeg.AVPacket*,System.Int32)'. -->
  4736. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.av_index_search_timestamp(libffmpeg.AVStream*,System.Int64,System.Int32)'. -->
  4737. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.sws_getCoefficients(System.Int32)'. -->
  4738. <!-- Discarding badly formed XML document comment for member 'M:libffmpeg.sws_printVec2(libffmpeg.SwsVector*,libffmpeg.AVClass*,System.Int32)'. -->
  4739. </members>
  4740. </doc>