1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261 |
- {
- File: QuickTime/ImageCompression.h
-
- Contains: QuickTime Image Compression Interfaces.
-
- Version: QuickTime 7.7.1
-
- Copyright: © 1990-2012 by Apple Inc., all rights reserved
-
- Bugs?: For bug reports, consult the following page on
- the World Wide Web:
-
- http://bugs.freepascal.org
-
- }
- { Pascal Translation Updated: Jonas Maebe, <[email protected]>, October 2009 }
- { Pascal Translation Updated: Jonas Maebe, <[email protected]>, October 2012 }
- {
- Modified for use with Free Pascal
- Version 308
- Please report any bugs to <[email protected]>
- }
- {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
- {$mode macpas}
- {$packenum 1}
- {$macro on}
- {$inline on}
- {$calling mwpascal}
- unit ImageCompression;
- interface
- {$setc UNIVERSAL_INTERFACES_VERSION := $0400}
- {$setc GAP_INTERFACES_VERSION := $0308}
- {$ifc not defined USE_CFSTR_CONSTANT_MACROS}
- {$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
- {$endc}
- {$ifc defined CPUPOWERPC and defined CPUI386}
- {$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
- {$endc}
- {$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
- {$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
- {$endc}
- {$ifc not defined __ppc__ and defined CPUPOWERPC32}
- {$setc __ppc__ := 1}
- {$elsec}
- {$setc __ppc__ := 0}
- {$endc}
- {$ifc not defined __ppc64__ and defined CPUPOWERPC64}
- {$setc __ppc64__ := 1}
- {$elsec}
- {$setc __ppc64__ := 0}
- {$endc}
- {$ifc not defined __i386__ and defined CPUI386}
- {$setc __i386__ := 1}
- {$elsec}
- {$setc __i386__ := 0}
- {$endc}
- {$ifc not defined __x86_64__ and defined CPUX86_64}
- {$setc __x86_64__ := 1}
- {$elsec}
- {$setc __x86_64__ := 0}
- {$endc}
- {$ifc not defined __arm__ and defined CPUARM}
- {$setc __arm__ := 1}
- {$elsec}
- {$setc __arm__ := 0}
- {$endc}
- {$ifc not defined __arm64__ and defined CPUAARCH64}
- {$setc __arm64__ := 1}
- {$elsec}
- {$setc __arm64__ := 0}
- {$endc}
- {$ifc defined cpu64}
- {$setc __LP64__ := 1}
- {$elsec}
- {$setc __LP64__ := 0}
- {$endc}
- {$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
- {$error Conflicting definitions for __ppc__ and __i386__}
- {$endc}
- {$ifc defined __ppc__ and __ppc__}
- {$setc TARGET_CPU_PPC := TRUE}
- {$setc TARGET_CPU_PPC64 := FALSE}
- {$setc TARGET_CPU_X86 := FALSE}
- {$setc TARGET_CPU_X86_64 := FALSE}
- {$setc TARGET_CPU_ARM := FALSE}
- {$setc TARGET_CPU_ARM64 := FALSE}
- {$setc TARGET_OS_MAC := TRUE}
- {$setc TARGET_OS_IPHONE := FALSE}
- {$setc TARGET_IPHONE_SIMULATOR := FALSE}
- {$setc TARGET_OS_EMBEDDED := FALSE}
- {$elifc defined __ppc64__ and __ppc64__}
- {$setc TARGET_CPU_PPC := FALSE}
- {$setc TARGET_CPU_PPC64 := TRUE}
- {$setc TARGET_CPU_X86 := FALSE}
- {$setc TARGET_CPU_X86_64 := FALSE}
- {$setc TARGET_CPU_ARM := FALSE}
- {$setc TARGET_CPU_ARM64 := FALSE}
- {$setc TARGET_OS_MAC := TRUE}
- {$setc TARGET_OS_IPHONE := FALSE}
- {$setc TARGET_IPHONE_SIMULATOR := FALSE}
- {$setc TARGET_OS_EMBEDDED := FALSE}
- {$elifc defined __i386__ and __i386__}
- {$setc TARGET_CPU_PPC := FALSE}
- {$setc TARGET_CPU_PPC64 := FALSE}
- {$setc TARGET_CPU_X86 := TRUE}
- {$setc TARGET_CPU_X86_64 := FALSE}
- {$setc TARGET_CPU_ARM := FALSE}
- {$setc TARGET_CPU_ARM64 := FALSE}
- {$ifc defined(iphonesim)}
- {$setc TARGET_OS_MAC := FALSE}
- {$setc TARGET_OS_IPHONE := TRUE}
- {$setc TARGET_IPHONE_SIMULATOR := TRUE}
- {$elsec}
- {$setc TARGET_OS_MAC := TRUE}
- {$setc TARGET_OS_IPHONE := FALSE}
- {$setc TARGET_IPHONE_SIMULATOR := FALSE}
- {$endc}
- {$setc TARGET_OS_EMBEDDED := FALSE}
- {$elifc defined __x86_64__ and __x86_64__}
- {$setc TARGET_CPU_PPC := FALSE}
- {$setc TARGET_CPU_PPC64 := FALSE}
- {$setc TARGET_CPU_X86 := FALSE}
- {$setc TARGET_CPU_X86_64 := TRUE}
- {$setc TARGET_CPU_ARM := FALSE}
- {$setc TARGET_CPU_ARM64 := FALSE}
- {$ifc defined(iphonesim)}
- {$setc TARGET_OS_MAC := FALSE}
- {$setc TARGET_OS_IPHONE := TRUE}
- {$setc TARGET_IPHONE_SIMULATOR := TRUE}
- {$elsec}
- {$setc TARGET_OS_MAC := TRUE}
- {$setc TARGET_OS_IPHONE := FALSE}
- {$setc TARGET_IPHONE_SIMULATOR := FALSE}
- {$endc}
- {$setc TARGET_OS_EMBEDDED := FALSE}
- {$elifc defined __arm__ and __arm__}
- {$setc TARGET_CPU_PPC := FALSE}
- {$setc TARGET_CPU_PPC64 := FALSE}
- {$setc TARGET_CPU_X86 := FALSE}
- {$setc TARGET_CPU_X86_64 := FALSE}
- {$setc TARGET_CPU_ARM := TRUE}
- {$setc TARGET_CPU_ARM64 := FALSE}
- { will require compiler define when/if other Apple devices with ARM cpus ship }
- {$setc TARGET_OS_MAC := FALSE}
- {$setc TARGET_OS_IPHONE := TRUE}
- {$setc TARGET_IPHONE_SIMULATOR := FALSE}
- {$setc TARGET_OS_EMBEDDED := TRUE}
- {$elifc defined __arm64__ and __arm64__}
- {$setc TARGET_CPU_PPC := FALSE}
- {$setc TARGET_CPU_PPC64 := FALSE}
- {$setc TARGET_CPU_X86 := FALSE}
- {$setc TARGET_CPU_X86_64 := FALSE}
- {$setc TARGET_CPU_ARM := FALSE}
- {$setc TARGET_CPU_ARM64 := TRUE}
- { will require compiler define when/if other Apple devices with ARM cpus ship }
- {$setc TARGET_OS_MAC := FALSE}
- {$setc TARGET_OS_IPHONE := TRUE}
- {$setc TARGET_IPHONE_SIMULATOR := FALSE}
- {$setc TARGET_OS_EMBEDDED := TRUE}
- {$elsec}
- {$error __ppc__ nor __ppc64__ nor __i386__ nor __x86_64__ nor __arm__ nor __arm64__ is defined.}
- {$endc}
- {$ifc defined __LP64__ and __LP64__ }
- {$setc TARGET_CPU_64 := TRUE}
- {$elsec}
- {$setc TARGET_CPU_64 := FALSE}
- {$endc}
- {$ifc defined FPC_BIG_ENDIAN}
- {$setc TARGET_RT_BIG_ENDIAN := TRUE}
- {$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
- {$elifc defined FPC_LITTLE_ENDIAN}
- {$setc TARGET_RT_BIG_ENDIAN := FALSE}
- {$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
- {$elsec}
- {$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
- {$endc}
- {$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
- {$setc CALL_NOT_IN_CARBON := FALSE}
- {$setc OLDROUTINENAMES := FALSE}
- {$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
- {$setc OPAQUE_UPP_TYPES := TRUE}
- {$setc OTCARBONAPPLICATION := TRUE}
- {$setc OTKERNEL := FALSE}
- {$setc PM_USE_SESSION_APIS := TRUE}
- {$setc TARGET_API_MAC_CARBON := TRUE}
- {$setc TARGET_API_MAC_OS8 := FALSE}
- {$setc TARGET_API_MAC_OSX := TRUE}
- {$setc TARGET_CARBON := TRUE}
- {$setc TARGET_CPU_68K := FALSE}
- {$setc TARGET_CPU_MIPS := FALSE}
- {$setc TARGET_CPU_SPARC := FALSE}
- {$setc TARGET_OS_UNIX := FALSE}
- {$setc TARGET_OS_WIN32 := FALSE}
- {$setc TARGET_RT_MAC_68881 := FALSE}
- {$setc TARGET_RT_MAC_CFM := FALSE}
- {$setc TARGET_RT_MAC_MACHO := TRUE}
- {$setc TYPED_FUNCTION_POINTERS := TRUE}
- {$setc TYPE_BOOL := FALSE}
- {$setc TYPE_EXTENDED := FALSE}
- {$setc TYPE_LONGLONG := TRUE}
- uses MacTypes,Components,CGLTypes,ColorSyncDeprecated,CVBase,CVImageBuffer,CVPixelBuffer,CVPixelBufferPool,Files,Dialogs,OSUtils,QuickdrawTypes,QDOffscreen,CFBase,CFData,CFDictionary,CGContext,CGImage;
- {$endc} {not MACOSALLINCLUDE}
- {$ifc TARGET_OS_MAC}
- {$ALIGN MAC68K}
- type
- MatrixRecord = record
- matrix: array [0..2,0..2] of Fixed;
- end;
- MatrixRecordPtr = ^MatrixRecord;
- const
- kRawCodecType = FourCharCode('raw ');
- kCinepakCodecType = FourCharCode('cvid');
- kGraphicsCodecType = FourCharCode('smc ');
- kAnimationCodecType = FourCharCode('rle ');
- kVideoCodecType = FourCharCode('rpza');
- kComponentVideoCodecType = FourCharCode('yuv2');
- kJPEGCodecType = FourCharCode('jpeg');
- kMotionJPEGACodecType = FourCharCode('mjpa');
- kMotionJPEGBCodecType = FourCharCode('mjpb');
- kSGICodecType = FourCharCode('.SGI');
- kPlanarRGBCodecType = FourCharCode('8BPS');
- kMacPaintCodecType = FourCharCode('PNTG');
- kGIFCodecType = FourCharCode('gif ');
- kPhotoCDCodecType = FourCharCode('kpcd');
- kQuickDrawGXCodecType = FourCharCode('qdgx');
- kAVRJPEGCodecType = FourCharCode('avr ');
- kOpenDMLJPEGCodecType = FourCharCode('dmb1');
- kBMPCodecType = FourCharCode('WRLE');
- kWindowsRawCodecType = FourCharCode('WRAW');
- kVectorCodecType = FourCharCode('path');
- kQuickDrawCodecType = FourCharCode('qdrw');
- kWaterRippleCodecType = FourCharCode('ripl');
- kFireCodecType = FourCharCode('fire');
- kCloudCodecType = FourCharCode('clou');
- kH261CodecType = FourCharCode('h261');
- kH263CodecType = FourCharCode('h263');
- kDVCNTSCCodecType = FourCharCode('dvc '); { DV - NTSC and DVCPRO NTSC (available in QuickTime 6.0 or later)}
- { NOTE: kDVCProNTSCCodecType is deprecated. }
- { Use kDVCNTSCCodecType instead -- as far as the codecs are concerned, }
- { the two data formats are identical.}
- kDVCPALCodecType = FourCharCode('dvcp');
- kDVCProPALCodecType = FourCharCode('dvpp'); { available in QuickTime 6.0 or later}
- kDVCPro50NTSCCodecType = FourCharCode('dv5n');
- kDVCPro50PALCodecType = FourCharCode('dv5p');
- kDVCPROHD720p60CodecType = FourCharCode('dvhp');
- kDVCPROHD720p50CodecType = FourCharCode('dvhq');
- kDVCPROHD720pCodecType = kDVCPROHD720p60CodecType;
- kDVCPro100NTSCCodecType = FourCharCode('dv1n');
- kDVCPro100PALCodecType = FourCharCode('dv1p');
- kDVCPROHD1080i60CodecType = FourCharCode('dvh6');
- kDVCPROHD1080i50CodecType = FourCharCode('dvh5');
- kDVCPROHD1080p30CodecType = FourCharCode('dvh3');
- kDVCPROHD1080p25CodecType = FourCharCode('dvh2');
- kBaseCodecType = FourCharCode('base');
- kFLCCodecType = FourCharCode('flic');
- kTargaCodecType = FourCharCode('tga ');
- kPNGCodecType = FourCharCode('png ');
- kTIFFCodecType = FourCharCode('tiff'); { NOTE: despite what might seem obvious from the two constants}
- { below and their names, they really are correct. 'yuvu' really }
- { does mean signed, and 'yuvs' really does mean unsigned. Really. }
- kComponentVideoSigned = FourCharCode('yuvu');
- kComponentVideoUnsigned = FourCharCode('yuvs');
- kCMYKCodecType = FourCharCode('cmyk');
- kMicrosoftVideo1CodecType = FourCharCode('msvc');
- kSorensonCodecType = FourCharCode('SVQ1');
- kSorenson3CodecType = FourCharCode('SVQ3'); { available in QuickTime 5 and later}
- kIndeo4CodecType = FourCharCode('IV41');
- kMPEG4VisualCodecType = FourCharCode('mp4v');
- k64ARGBCodecType = FourCharCode('b64a');
- k48RGBCodecType = FourCharCode('b48r');
- k32AlphaGrayCodecType = FourCharCode('b32a');
- k16GrayCodecType = FourCharCode('b16g');
- kMpegYUV420CodecType = FourCharCode('myuv');
- kYUV420CodecType = FourCharCode('y420');
- kSorensonYUV9CodecType = FourCharCode('syv9');
- k422YpCbCr8CodecType = FourCharCode('2vuy'); { Component Y'CbCr 8-bit 4:2:2 }
- k444YpCbCr8CodecType = FourCharCode('v308'); { Component Y'CbCr 8-bit 4:4:4 }
- k4444YpCbCrA8CodecType = FourCharCode('v408'); { Component Y'CbCrA 8-bit 4:4:4:4 }
- k422YpCbCr16CodecType = FourCharCode('v216'); { Component Y'CbCr 10,12,14,16-bit 4:2:2}
- k422YpCbCr10CodecType = FourCharCode('v210'); { Component Y'CbCr 10-bit 4:2:2 }
- k444YpCbCr10CodecType = FourCharCode('v410'); { Component Y'CbCr 10-bit 4:4:4 }
- k4444YpCbCrA8RCodecType = FourCharCode('r408'); { Component Y'CbCrA 8-bit 4:4:4:4, rendering format. full range alpha, zero biased yuv}
- kJPEG2000CodecType = FourCharCode('mjp2');
- kPixletCodecType = FourCharCode('pxlt');
- kH264CodecType = FourCharCode('avc1');
- {$ifc not TARGET_CPU_64}
- { one source effects }
- const
- kBlurImageFilterType = FourCharCode('blur');
- kSharpenImageFilterType = FourCharCode('shrp');
- kEdgeDetectImageFilterType = FourCharCode('edge');
- kEmbossImageFilterType = FourCharCode('embs');
- kConvolveImageFilterType = FourCharCode('genk');
- kAlphaGainImageFilterType = FourCharCode('gain');
- kRGBColorBalanceImageFilterType = FourCharCode('rgbb');
- kHSLColorBalanceImageFilterType = FourCharCode('hslb');
- kColorSyncImageFilterType = FourCharCode('sync');
- kFilmNoiseImageFilterType = FourCharCode('fmns');
- kSolarizeImageFilterType = FourCharCode('solr');
- kColorTintImageFilterType = FourCharCode('tint');
- kLensFlareImageFilterType = FourCharCode('lens');
- kBrightnessContrastImageFilterType = FourCharCode('brco');
- { two source effects }
- const
- kAlphaCompositorTransitionType = FourCharCode('blnd');
- kCrossFadeTransitionType = FourCharCode('dslv');
- kChannelCompositeEffectType = FourCharCode('chan');
- kChromaKeyTransitionType = FourCharCode('ckey');
- kImplodeTransitionType = FourCharCode('mplo');
- kExplodeTransitionType = FourCharCode('xplo');
- kGradientTransitionType = FourCharCode('matt');
- kPushTransitionType = FourCharCode('push');
- kSlideTransitionType = FourCharCode('slid');
- kWipeTransitionType = FourCharCode('smpt');
- kIrisTransitionType = FourCharCode('smp2');
- kRadialTransitionType = FourCharCode('smp3');
- kMatrixTransitionType = FourCharCode('smp4');
- kZoomTransitionType = FourCharCode('zoom');
- { three source effects }
- const
- kTravellingMatteEffectType = FourCharCode('trav');
- { Supported by QTNewGWorld in QuickTime 4.0 and later }
- const
- kCMYKPixelFormat = FourCharCode('cmyk'); { CMYK, 8-bit }
- k64ARGBPixelFormat = FourCharCode('b64a'); { ARGB, 16-bit big-endian samples }
- k48RGBPixelFormat = FourCharCode('b48r'); { RGB, 16-bit big-endian samples }
- k32AlphaGrayPixelFormat = FourCharCode('b32a'); { AlphaGray, 16-bit big-endian samples }
- k16GrayPixelFormat = FourCharCode('b16g'); { Grayscale, 16-bit big-endian samples }
- k422YpCbCr8PixelFormat = FourCharCode('2vuy'); { Component Y'CbCr 8-bit 4:2:2, ordered Cb Y'0 Cr Y'1 }
- { Supported by QTNewGWorld in QuickTime 4.1.2 and later }
- const
- k4444YpCbCrA8PixelFormat = FourCharCode('v408'); { Component Y'CbCrA 8-bit 4:4:4:4, ordered Cb Y' Cr A }
- k4444YpCbCrA8RPixelFormat = FourCharCode('r408'); { Component Y'CbCrA 8-bit 4:4:4:4, rendering format. full range alpha, zero biased yuv, ordered A Y' Cb Cr }
- { Supported by QTNewGWorld in QuickTime 6.0 and later }
- const
- kYUV420PixelFormat = FourCharCode('y420'); { Planar Component Y'CbCr 8-bit 4:2:0. PixMap baseAddr points to a big-endian PlanarPixmapInfoYUV420 struct; see ImageCodec.i. }
- { These are the bits that are set in the Component flags, and also in the codecInfo struct. }
- const
- codecInfoDoes1 = 1 shl 0; { codec can work with 1-bit pixels }
- codecInfoDoes2 = 1 shl 1; { codec can work with 2-bit pixels }
- codecInfoDoes4 = 1 shl 2; { codec can work with 4-bit pixels }
- codecInfoDoes8 = 1 shl 3; { codec can work with 8-bit pixels }
- codecInfoDoes16 = 1 shl 4; { codec can work with 16-bit pixels }
- codecInfoDoes32 = 1 shl 5; { codec can work with 32-bit pixels }
- codecInfoDoesDither = 1 shl 6; { codec can do ditherMode }
- codecInfoDoesStretch = 1 shl 7; { codec can stretch to arbitrary sizes }
- codecInfoDoesShrink = 1 shl 8; { codec can shrink to arbitrary sizes }
- codecInfoDoesMask = 1 shl 9; { codec can mask to clipping regions }
- codecInfoDoesTemporal = 1 shl 10; { codec can handle temporal redundancy }
- codecInfoDoesDouble = 1 shl 11; { codec can stretch to double size exactly }
- codecInfoDoesQuad = 1 shl 12; { codec can stretch to quadruple size exactly }
- codecInfoDoesHalf = 1 shl 13; { codec can shrink to half size }
- codecInfoDoesQuarter = 1 shl 14; { codec can shrink to quarter size }
- codecInfoDoesRotate = 1 shl 15; { codec can rotate on decompress }
- codecInfoDoesHorizFlip = 1 shl 16; { codec can flip horizontally on decompress }
- codecInfoDoesVertFlip = 1 shl 17; { codec can flip vertically on decompress }
- codecInfoHasEffectParameterList = 1 shl 18; { codec implements get effects parameter list call, once was codecInfoDoesSkew }
- codecInfoDoesBlend = 1 shl 19; { codec can blend on decompress }
- codecInfoDoesReorder = 1 shl 19; { codec can rearrange frames during compression }
- codecInfoDoesWarp = 1 shl 20; { codec can warp arbitrarily on decompress }
- codecInfoDoesMultiPass = 1 shl 20; { codec can perform multi-pass compression }
- codecInfoDoesRecompress = 1 shl 21; { codec can recompress image without accumulating errors }
- codecInfoDoesSpool = 1 shl 22; { codec can spool image data }
- codecInfoDoesRateConstrain = 1 shl 23; { codec can data rate constrain }
- const
- codecInfoDepth1 = 1 shl 0; { compressed data at 1 bpp depth available }
- codecInfoDepth2 = 1 shl 1; { compressed data at 2 bpp depth available }
- codecInfoDepth4 = 1 shl 2; { compressed data at 4 bpp depth available }
- codecInfoDepth8 = 1 shl 3; { compressed data at 8 bpp depth available }
- codecInfoDepth16 = 1 shl 4; { compressed data at 16 bpp depth available }
- codecInfoDepth32 = 1 shl 5; { compressed data at 32 bpp depth available }
- codecInfoDepth24 = 1 shl 6; { compressed data at 24 bpp depth available }
- codecInfoDepth33 = 1 shl 7; { compressed data at 1 bpp monochrome depth available }
- codecInfoDepth34 = 1 shl 8; { compressed data at 2 bpp grayscale depth available }
- codecInfoDepth36 = 1 shl 9; { compressed data at 4 bpp grayscale depth available }
- codecInfoDepth40 = 1 shl 10; { compressed data at 8 bpp grayscale depth available }
- codecInfoStoresClut = 1 shl 11; { compressed data can have custom cluts }
- codecInfoDoesLossless = 1 shl 12; { compressed data can be stored in lossless format }
- codecInfoSequenceSensitive = 1 shl 13; { compressed data is sensitive to out of sequence decoding }
- { input sequence flags}
- const
- codecFlagUseImageBuffer = 1 shl 0; { decompress}
- codecFlagUseScreenBuffer = 1 shl 1; { decompress}
- codecFlagUpdatePrevious = 1 shl 2; { compress}
- codecFlagNoScreenUpdate = 1 shl 3; { decompress}
- codecFlagWasCompressed = 1 shl 4; { compress}
- codecFlagDontOffscreen = 1 shl 5; { decompress}
- codecFlagUpdatePreviousComp = 1 shl 6; { compress}
- codecFlagForceKeyFrame = 1 shl 7; { compress}
- codecFlagOnlyScreenUpdate = 1 shl 8; { decompress}
- codecFlagLiveGrab = 1 shl 9; { compress}
- codecFlagDiffFrame = 1 shl 9; { decompress}
- codecFlagDontUseNewImageBuffer = 1 shl 10; { decompress}
- codecFlagInterlaceUpdate = 1 shl 11; { decompress}
- codecFlagCatchUpDiff = 1 shl 12; { decompress}
- codecFlagSupportDisable = 1 shl 13; { decompress}
- codecFlagReenable = 1 shl 14; { decompress}
- { output sequence flags}
- const
- codecFlagOutUpdateOnNextIdle = 1 shl 9;
- codecFlagOutUpdateOnDataSourceChange = 1 shl 10;
- codecFlagSequenceSensitive = 1 shl 11;
- codecFlagOutUpdateOnTimeChange = 1 shl 12;
- codecFlagImageBufferNotSourceImage = 1 shl 13;
- codecFlagUsedNewImageBuffer = 1 shl 14;
- codecFlagUsedImageBuffer = 1 shl 15;
- const
- { The minimum data size for spooling in or out data }
- codecMinimumDataSize = 32768;
- const
- compressorComponentType = FourCharCode('imco'); { the type for "Components" which compress images }
- decompressorComponentType = FourCharCode('imdc'); { the type for "Components" which decompress images }
- type
- CompressorComponent = Component;
- DecompressorComponent = Component;
- CodecComponent = Component;
- const
- anyCodec = 0; { take first working codec of given type }
- bestSpeedCodec = -1; { take fastest codec of given type }
- bestFidelityCodec = -2; { take codec which is most accurate }
- bestCompressionCodec = -3; { take codec of given type that is most accurate }
- {$endc} {not TARGET_CPU_64}
- type
- CodecType = OSType;
- CodecType_fix = CodecType; { used as field type when a record declaration contains a CodecType field identifier }
- CodecFlags = UInt16;
- CodecQ = UInt32;
- {$ifc not TARGET_CPU_64}
- const
- codecLosslessQuality = $00000400;
- codecMaxQuality = $000003FF;
- codecMinQuality = $00000000;
- codecLowQuality = $00000100;
- codecNormalQuality = $00000200;
- codecHighQuality = $00000300;
- const
- codecLockBitsShieldCursor = 1 shl 0; { shield cursor }
- const
- codecCompletionSource = 1 shl 0; { asynchronous codec is done with source data }
- codecCompletionDest = 1 shl 1; { asynchronous codec is done with destination data }
- codecCompletionDontUnshield = 1 shl 2; { on dest complete don't unshield cursor }
- codecCompletionWentOffscreen = 1 shl 3; { codec used offscreen buffer }
- codecCompletionUnlockBits = 1 shl 4; { on dest complete, call ICMSequenceUnlockBits }
- codecCompletionForceChainFlush = 1 shl 5; { ICM needs to flush the whole chain }
- codecCompletionDropped = 1 shl 6; { codec decided to drop this frame }
- codecCompletionDecoded = 1 shl 10; { codec has decoded this frame; if it is cancelled and rescheduled, set icmFrameAlreadyDecoded in ICMFrameTimeRecord.flags }
- codecCompletionNotDisplayable = 1 shl 11; { the frame may still be scheduled for decode, but will not be able to be displayed because the buffer containing it will need to be recycled to display earlier frames. }
- codecCompletionNotDrawn = 1 shl 12; { set in conjunction with codecCompletionDest to indicate that the frame was not drawn }
- const
- codecProgressOpen = 0;
- codecProgressUpdatePercent = 1;
- codecProgressClose = 2;
- type
- ICMDataProcPtr = function( var dataP: Ptr; bytesNeeded: SIGNEDLONG; refcon: SIGNEDLONG ): OSErr;
- ICMFlushProcPtr = function( data: Ptr; bytesAdded: SIGNEDLONG; refcon: SIGNEDLONG ): OSErr;
- ICMCompletionProcPtr = procedure( result: OSErr; flags: SInt16; refcon: SIGNEDLONG );
- ICMProgressProcPtr = function( message: SInt16; completeness: Fixed; refcon: SIGNEDLONG ): OSErr;
- StdPixProcPtr = procedure( var src: PixMap; var srcRect: Rect; var matrix: MatrixRecord; mode: SInt16; mask: RgnHandle; var matte: PixMap; var matteRect: Rect; flags: SInt16 );
- QDPixProcPtr = procedure( var src: PixMap; var srcRect: Rect; var matrix: MatrixRecord; mode: SInt16; mask: RgnHandle; var matte: PixMap; var matteRect: Rect; flags: SInt16 );
- ICMAlignmentProcPtr = procedure( var rp: Rect; refcon: SIGNEDLONG );
- ICMCursorShieldedProcPtr = procedure( const (*var*) r: Rect; refcon: UnivPtr; flags: SIGNEDLONG );
- ICMMemoryDisposedProcPtr = procedure( memoryBlock: Ptr; refcon: UnivPtr );
- ICMCursorNotify = UnivPtr;
- ICMConvertDataFormatProcPtr = function( refCon: UnivPtr; flags: SIGNEDLONG; desiredFormat: Handle; sourceDataFormat: Handle; srcData: UnivPtr; srcDataSize: SIGNEDLONG; var dstData: UnivPtr; var dstDataSize: SIGNEDLONG ): OSErr;
- ICMDataUPP = ICMDataProcPtr;
- ICMFlushUPP = ICMFlushProcPtr;
- ICMCompletionUPP = ICMCompletionProcPtr;
- ICMProgressUPP = ICMProgressProcPtr;
- StdPixUPP = StdPixProcPtr;
- QDPixUPP = QDPixProcPtr;
- ICMAlignmentUPP = ICMAlignmentProcPtr;
- ICMCursorShieldedUPP = ICMCursorShieldedProcPtr;
- ICMMemoryDisposedUPP = ICMMemoryDisposedProcPtr;
- ICMConvertDataFormatUPP = ICMConvertDataFormatProcPtr;
- ImageSequence = SIGNEDLONG;
- ImageSequenceDataSource = SIGNEDLONG;
- ImageTranscodeSequence = SIGNEDLONG;
- ImageFieldSequence = SIGNEDLONG;
- ICMProgressProcRecord = record
- progressProc: ICMProgressUPP;
- progressRefCon: SIGNEDLONG;
- end;
- ICMProgressProcRecordPtr = ^ICMProgressProcRecord;
- type
- ICMCompletionProcRecord = record
- completionProc: ICMCompletionUPP;
- completionRefCon: SIGNEDLONG;
- end;
- ICMCompletionProcRecordPtr = ^ICMCompletionProcRecord;
- type
- ICMDataProcRecord = record
- dataProc: ICMDataUPP;
- dataRefCon: SIGNEDLONG;
- end;
- ICMDataProcRecordPtr = ^ICMDataProcRecord;
- type
- ICMFlushProcRecord = record
- flushProc: ICMFlushUPP;
- flushRefCon: SIGNEDLONG;
- end;
- ICMFlushProcRecordPtr = ^ICMFlushProcRecord;
- type
- ICMAlignmentProcRecord = record
- alignmentProc: ICMAlignmentUPP;
- alignmentRefCon: SIGNEDLONG;
- end;
- ICMAlignmentProcRecordPtr = ^ICMAlignmentProcRecord;
- type
- DataRateParams = record
- dataRate: SIGNEDLONG;
- dataOverrun: SIGNEDLONG;
- frameDuration: SIGNEDLONG;
- keyFrameRate: SIGNEDLONG;
- minSpatialQuality: CodecQ;
- minTemporalQuality: CodecQ;
- end;
- DataRateParamsPtr = ^DataRateParams;
- {$endc} {not TARGET_CPU_64}
- type
- ImageDescription = packed record
- idSize: SInt32; { total size of ImageDescription including extra data ( CLUTs and other per sequence data ) }
- cType: CodecType; { what kind of codec compressed this data }
- resvd1: SInt32; { reserved for Apple use }
- resvd2: SInt16; { reserved for Apple use }
- dataRefIndex: SInt16; { set to zero }
- version: SInt16; { which version is this data }
- revisionLevel: SInt16; { what version of that codec did this }
- vendor: SInt32; { whose codec compressed this data }
- temporalQuality: CodecQ; { what was the temporal quality factor }
- spatialQuality: CodecQ; { what was the spatial quality factor }
- width: SInt16; { how many pixels wide is this data }
- height: SInt16; { how many pixels high is this data }
- hRes: Fixed; { horizontal resolution }
- vRes: Fixed; { vertical resolution }
- dataSize: SInt32; { if known, the size of data for this image descriptor }
- frameCount: SInt16; { number of frames this description applies to }
- name: Str31; { name of codec ( in case not installed ) }
- depth: SInt16; { what depth is this data (1-32) or ( 33-40 grayscale ) }
- clutID: SInt16; { clut id or if 0 clut follows or -1 if no clut }
- end;
- ImageDescriptionPtr = ^ImageDescription;
- type
- ImageDescriptionHandle = ^ImageDescriptionPtr;
- {$ifc not TARGET_CPU_64}
- type
- CodecInfoPtr = ^CodecInfo;
- CodecInfo = record
- typeName: Str31; { name of the codec type i.e.: 'Apple Image Compression' }
- version: SInt16; { version of the codec data that this codec knows about }
- revisionLevel: SInt16; { revision level of this codec i.e: 0x00010001 (1.0.1) }
- vendor: SIGNEDLONG; { Maker of this codec i.e: 'appl' }
- decompressFlags: SIGNEDLONG; { codecInfo flags for decompression capabilities }
- compressFlags: SIGNEDLONG; { codecInfo flags for compression capabilities }
- formatFlags: SIGNEDLONG; { codecInfo flags for compression format details }
- compressionAccuracy: UInt8; { measure (1-255) of accuracy of this codec for compress (0 if unknown) }
- decompressionAccuracy: UInt8; { measure (1-255) of accuracy of this codec for decompress (0 if unknown) }
- compressionSpeed: UInt16; { ( millisecs for compressing 320x240 on base mac II) (0 if unknown) }
- decompressionSpeed: UInt16; { ( millisecs for decompressing 320x240 on mac II)(0 if unknown) }
- compressionLevel: UInt8; { measure (1-255) of compression level of this codec (0 if unknown) }
- resvd: UInt8; { pad }
- minimumHeight: SInt16; { minimum height of image (block size) }
- minimumWidth: SInt16; { minimum width of image (block size) }
- decompressPipelineLatency: SInt16; { in milliseconds ( for asynchronous codecs ) }
- compressPipelineLatency: SInt16; { in milliseconds ( for asynchronous codecs ) }
- privateData: SIGNEDLONG;
- end;
- type
- CodecNameSpecPtr = ^CodecNameSpec;
- CodecNameSpec = record
- codec: CodecComponent;
- cType: CodecType;
- typeName: Str31;
- name: Handle;
- end;
- type
- CodecNameSpecList = record
- count: SInt16;
- list: array [0..0] of CodecNameSpec;
- end;
- CodecNameSpecListPtr = ^CodecNameSpecList;
- const
- defaultDither = 0;
- forceDither = 1;
- suppressDither = 2;
- useColorMatching = 4;
- const
- callStdBits = 1;
- callOldBits = 2;
- noDefaultOpcodes = 4;
- const
- graphicsModeStraightAlpha = 256;
- graphicsModePreWhiteAlpha = 257;
- graphicsModePreBlackAlpha = 258;
- graphicsModeComposition = 259;
- graphicsModeStraightAlphaBlend = 260;
- graphicsModePreMulColorAlpha = 261;
- graphicsModePerComponentAlpha = 272;
- const
- evenField1ToEvenFieldOut = 1 shl 0;
- evenField1ToOddFieldOut = 1 shl 1;
- oddField1ToEvenFieldOut = 1 shl 2;
- oddField1ToOddFieldOut = 1 shl 3;
- evenField2ToEvenFieldOut = 1 shl 4;
- evenField2ToOddFieldOut = 1 shl 5;
- oddField2ToEvenFieldOut = 1 shl 6;
- oddField2ToOddFieldOut = 1 shl 7;
- { Flags for ICMFrameTimeRecord.flags }
- const
- icmFrameTimeHasVirtualStartTimeAndDuration = 1 shl 0;
- icmFrameAlreadyDecoded = 1 shl 1;
- icmFrameTimeIsNonScheduledDisplayTime = 1 shl 2;
- icmFrameTimeHasDecodeTime = 1 shl 3;
- icmFrameTimeDecodeImmediately = 1 shl 4;
- icmFrameTimeDoNotDisplay = 1 shl 5;
- type
- ICMFrameTimeRecordPtr = ^ICMFrameTimeRecord;
- ICMFrameTimeRecord = record
- value: wide; { frame display time}
- scale: SIGNEDLONG; { timescale of value/duration fields}
- base: UnivPtr; { timebase}
- duration: SIGNEDLONG; { duration frame is to be displayed (0 if unknown)}
- rate: Fixed; { rate of timebase relative to wall-time}
- recordSize: SIGNEDLONG; { total number of bytes in ICMFrameTimeRecord}
- frameNumber: SIGNEDLONG; { number of frame, zero if not known}
- flags: SIGNEDLONG;
- virtualStartTime: wide; { conceptual start time}
- virtualDuration: SIGNEDLONG; { conceptual duration}
- { The following fields only exist for QuickTime 7.0 and greater. }
- decodeTime: TimeValue64; { suggested decode time, if icmFrameTimeHasDecodeTime is set in flags}
- end;
- type
- ICMFrameTimePtr = ICMFrameTimeRecordPtr;
- { QuickTime flavor of universally unique identifier (uuid)}
- type
- QTUUIDPtr = ^QTUUID;
- QTUUID = record
- data1: UInt32;
- data2: UInt16;
- data3: UInt16;
- data4: array[0..7] of UInt8;
- end;
- type
- QTMediaContextID = QTUUID;
- QTMediaContextIDPtr = ^QTMediaContextID;
- {$endc} {not TARGET_CPU_64}
- { See Movies.h for the flags themselves. }
- type
- MediaSampleFlags = UInt32;
- {$ifc not TARGET_CPU_64}
- {
- * NewICMDataUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewICMDataUPP( userRoutine: ICMDataProcPtr ): ICMDataUPP; external name '_NewICMDataUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewICMFlushUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewICMFlushUPP( userRoutine: ICMFlushProcPtr ): ICMFlushUPP; external name '_NewICMFlushUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewICMCompletionUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewICMCompletionUPP( userRoutine: ICMCompletionProcPtr ): ICMCompletionUPP; external name '_NewICMCompletionUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewICMProgressUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewICMProgressUPP( userRoutine: ICMProgressProcPtr ): ICMProgressUPP; external name '_NewICMProgressUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewStdPixUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewStdPixUPP( userRoutine: StdPixProcPtr ): StdPixUPP; external name '_NewStdPixUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewQDPixUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewQDPixUPP( userRoutine: QDPixProcPtr ): QDPixUPP; external name '_NewQDPixUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewICMAlignmentUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewICMAlignmentUPP( userRoutine: ICMAlignmentProcPtr ): ICMAlignmentUPP; external name '_NewICMAlignmentUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewICMCursorShieldedUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewICMCursorShieldedUPP( userRoutine: ICMCursorShieldedProcPtr ): ICMCursorShieldedUPP; external name '_NewICMCursorShieldedUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewICMMemoryDisposedUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewICMMemoryDisposedUPP( userRoutine: ICMMemoryDisposedProcPtr ): ICMMemoryDisposedUPP; external name '_NewICMMemoryDisposedUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewICMConvertDataFormatUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function NewICMConvertDataFormatUPP( userRoutine: ICMConvertDataFormatProcPtr ): ICMConvertDataFormatUPP; external name '_NewICMConvertDataFormatUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeICMDataUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeICMDataUPP( userUPP: ICMDataUPP ); external name '_DisposeICMDataUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeICMFlushUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeICMFlushUPP( userUPP: ICMFlushUPP ); external name '_DisposeICMFlushUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeICMCompletionUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeICMCompletionUPP( userUPP: ICMCompletionUPP ); external name '_DisposeICMCompletionUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeICMProgressUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeICMProgressUPP( userUPP: ICMProgressUPP ); external name '_DisposeICMProgressUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeStdPixUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeStdPixUPP( userUPP: StdPixUPP ); external name '_DisposeStdPixUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeQDPixUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeQDPixUPP( userUPP: QDPixUPP ); external name '_DisposeQDPixUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeICMAlignmentUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeICMAlignmentUPP( userUPP: ICMAlignmentUPP ); external name '_DisposeICMAlignmentUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeICMCursorShieldedUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeICMCursorShieldedUPP( userUPP: ICMCursorShieldedUPP ); external name '_DisposeICMCursorShieldedUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeICMMemoryDisposedUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeICMMemoryDisposedUPP( userUPP: ICMMemoryDisposedUPP ); external name '_DisposeICMMemoryDisposedUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeICMConvertDataFormatUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeICMConvertDataFormatUPP( userUPP: ICMConvertDataFormatUPP ); external name '_DisposeICMConvertDataFormatUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeICMDataUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function InvokeICMDataUPP( var dataP: Ptr; bytesNeeded: SIGNEDLONG; refcon: SIGNEDLONG; userUPP: ICMDataUPP ): OSErr; external name '_InvokeICMDataUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeICMFlushUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function InvokeICMFlushUPP( data: Ptr; bytesAdded: SIGNEDLONG; refcon: SIGNEDLONG; userUPP: ICMFlushUPP ): OSErr; external name '_InvokeICMFlushUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeICMCompletionUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure InvokeICMCompletionUPP( result: OSErr; flags: SInt16; refcon: SIGNEDLONG; userUPP: ICMCompletionUPP ); external name '_InvokeICMCompletionUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeICMProgressUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function InvokeICMProgressUPP( message: SInt16; completeness: Fixed; refcon: SIGNEDLONG; userUPP: ICMProgressUPP ): OSErr; external name '_InvokeICMProgressUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeStdPixUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure InvokeStdPixUPP( var src: PixMap; var srcRect: Rect; var matrix: MatrixRecord; mode: SInt16; mask: RgnHandle; var matte: PixMap; var matteRect: Rect; flags: SInt16; userUPP: StdPixUPP ); external name '_InvokeStdPixUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeQDPixUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure InvokeQDPixUPP( var src: PixMap; var srcRect: Rect; var matrix: MatrixRecord; mode: SInt16; mask: RgnHandle; var matte: PixMap; var matteRect: Rect; flags: SInt16; userUPP: QDPixUPP ); external name '_InvokeQDPixUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeICMAlignmentUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure InvokeICMAlignmentUPP( var rp: Rect; refcon: SIGNEDLONG; userUPP: ICMAlignmentUPP ); external name '_InvokeICMAlignmentUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeICMCursorShieldedUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure InvokeICMCursorShieldedUPP( const (*var*) r: Rect; refcon: UnivPtr; flags: SIGNEDLONG; userUPP: ICMCursorShieldedUPP ); external name '_InvokeICMCursorShieldedUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeICMMemoryDisposedUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- procedure InvokeICMMemoryDisposedUPP( memoryBlock: Ptr; refcon: UnivPtr; userUPP: ICMMemoryDisposedUPP ); external name '_InvokeICMMemoryDisposedUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InvokeICMConvertDataFormatUPP()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: available as macro/inline
- }
- function InvokeICMConvertDataFormatUPP( refCon: UnivPtr; flags: SIGNEDLONG; desiredFormat: Handle; sourceDataFormat: Handle; srcData: UnivPtr; srcDataSize: SIGNEDLONG; var dstData: UnivPtr; var dstDataSize: SIGNEDLONG; userUPP: ICMConvertDataFormatUPP ): OSErr; external name '_InvokeICMConvertDataFormatUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CodecManagerVersion()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CodecManagerVersion( var version: SIGNEDLONG ): OSErr; external name '_CodecManagerVersion';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCodecNameList()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCodecNameList( var list: CodecNameSpecListPtr; showAll: SInt16 ): OSErr; external name '_GetCodecNameList';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DisposeCodecNameList()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DisposeCodecNameList( list: CodecNameSpecListPtr ): OSErr; external name '_DisposeCodecNameList';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCodecInfo()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCodecInfo( var info: CodecInfo; cType: CodecType; codec: CodecComponent ): OSErr; external name '_GetCodecInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetMaxCompressionSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetMaxCompressionSize( src: PixMapHandle; const (*var*) srcRect: Rect; colorDepth: SInt16; quality: CodecQ; cType: CodecType; codec: CompressorComponent; var size: SIGNEDLONG ): OSErr; external name '_GetMaxCompressionSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCSequenceMaxCompressionSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCSequenceMaxCompressionSize( seqID: ImageSequence; src: PixMapHandle; var size: SIGNEDLONG ): OSErr; external name '_GetCSequenceMaxCompressionSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCompressionTime()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCompressionTime( src: PixMapHandle; const (*var*) srcRect: Rect; colorDepth: SInt16; cType: CodecType; codec: CompressorComponent; var spatialQuality: CodecQ; var temporalQuality: CodecQ; var compressTime: UNSIGNEDLONG ): OSErr; external name '_GetCompressionTime';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompressImage()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CompressImage( src: PixMapHandle; const (*var*) srcRect: Rect; quality: CodecQ; cType: CodecType; desc: ImageDescriptionHandle; data: Ptr ): OSErr; external name '_CompressImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FCompressImage()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FCompressImage( src: PixMapHandle; const (*var*) srcRect: Rect; colorDepth: SInt16; quality: CodecQ; cType: CodecType; codec: CompressorComponent; ctable: CTabHandle; flags: CodecFlags; bufferSize: SIGNEDLONG; flushProc: ICMFlushProcRecordPtr; progressProc: ICMProgressProcRecordPtr; desc: ImageDescriptionHandle; data: Ptr ): OSErr; external name '_FCompressImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DecompressImage()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DecompressImage( data: Ptr; desc: ImageDescriptionHandle; dst: PixMapHandle; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect; mode: SInt16; mask: RgnHandle ): OSErr; external name '_DecompressImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FDecompressImage()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FDecompressImage( data: Ptr; desc: ImageDescriptionHandle; dst: PixMapHandle; const (*var*) srcRect: Rect; matrix: MatrixRecordPtr; mode: SInt16; mask: RgnHandle; matte: PixMapHandle; const (*var*) matteRect: Rect; accuracy: CodecQ; codec: DecompressorComponent; bufferSize: SIGNEDLONG; dataProc: ICMDataProcRecordPtr; progressProc: ICMProgressProcRecordPtr ): OSErr; external name '_FDecompressImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { For video compression, consider using ICMCompressionSessionCreate etc. instead of CompressSequenceBegin etc. }
- {
- * CompressSequenceBegin()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CompressSequenceBegin( var seqID: ImageSequence; src: PixMapHandle; prev: PixMapHandle; const (*var*) srcRect: Rect; const (*var*) prevRect: Rect; colorDepth: SInt16; cType: CodecType; codec: CompressorComponent; spatialQuality: CodecQ; temporalQuality: CodecQ; keyFrameRate: SIGNEDLONG; ctable: CTabHandle; flags: CodecFlags; desc: ImageDescriptionHandle ): OSErr; external name '_CompressSequenceBegin';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompressSequenceFrame()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CompressSequenceFrame( seqID: ImageSequence; src: PixMapHandle; const (*var*) srcRect: Rect; flags: CodecFlags; data: Ptr; var dataSize: SIGNEDLONG; var similarity: UInt8; asyncCompletionProc: ICMCompletionProcRecordPtr ): OSErr; external name '_CompressSequenceFrame';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { For video decompression, consider using ICMDecompressionSessionCreate etc. instead of DecompressSequenceBegin etc. }
- {
- * DecompressSequenceBegin()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DecompressSequenceBegin( var seqID: ImageSequence; desc: ImageDescriptionHandle; port: CGrafPtr; gdh: GDHandle; const (*var*) srcRect: Rect; matrix: MatrixRecordPtr; mode: SInt16; mask: RgnHandle; flags: CodecFlags; accuracy: CodecQ; codec: DecompressorComponent ): OSErr; external name '_DecompressSequenceBegin';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { For video decompression, consider using ICMDecompressionSessionCreate etc. instead of DecompressSequenceBeginS etc. }
- {
- * DecompressSequenceBeginS()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DecompressSequenceBeginS( var seqID: ImageSequence; desc: ImageDescriptionHandle; data: Ptr; dataSize: SIGNEDLONG; port: CGrafPtr; gdh: GDHandle; const (*var*) srcRect: Rect; matrix: MatrixRecordPtr; mode: SInt16; mask: RgnHandle; flags: CodecFlags; accuracy: CodecQ; codec: DecompressorComponent ): OSErr; external name '_DecompressSequenceBeginS';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DecompressSequenceFrame()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DecompressSequenceFrame( seqID: ImageSequence; data: Ptr; inFlags: CodecFlags; var outFlags: CodecFlags; asyncCompletionProc: ICMCompletionProcRecordPtr ): OSErr; external name '_DecompressSequenceFrame';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DecompressSequenceFrameS()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DecompressSequenceFrameS( seqID: ImageSequence; data: Ptr; dataSize: SIGNEDLONG; inFlags: CodecFlags; var outFlags: CodecFlags; asyncCompletionProc: ICMCompletionProcRecordPtr ): OSErr; external name '_DecompressSequenceFrameS';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DecompressSequenceFrameWhen()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DecompressSequenceFrameWhen( seqID: ImageSequence; data: Ptr; dataSize: SIGNEDLONG; inFlags: CodecFlags; var outFlags: CodecFlags; asyncCompletionProc: ICMCompletionProcRecordPtr; const (*var*) frameTime: ICMFrameTimeRecord ): OSErr; external name '_DecompressSequenceFrameWhen';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceFlush()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceFlush( seqID: ImageSequence ): OSErr; external name '_CDSequenceFlush';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetDSequenceMatrix( seqID: ImageSequence; matrix: MatrixRecordPtr ): OSErr; external name '_SetDSequenceMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetDSequenceMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GetDSequenceMatrix( seqID: ImageSequence; matrix: MatrixRecordPtr ): OSErr; external name '_GetDSequenceMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceMatte()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetDSequenceMatte( seqID: ImageSequence; matte: PixMapHandle; const (*var*) matteRect: Rect ): OSErr; external name '_SetDSequenceMatte';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceMask()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetDSequenceMask( seqID: ImageSequence; mask: RgnHandle ): OSErr; external name '_SetDSequenceMask';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceTransferMode()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetDSequenceTransferMode( seqID: ImageSequence; mode: SInt16; const (*var*) opColor: RGBColor ): OSErr; external name '_SetDSequenceTransferMode';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceDataProc()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetDSequenceDataProc( seqID: ImageSequence; dataProc: ICMDataProcRecordPtr; bufferSize: SIGNEDLONG ): OSErr; external name '_SetDSequenceDataProc';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceAccuracy()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetDSequenceAccuracy( seqID: ImageSequence; accuracy: CodecQ ): OSErr; external name '_SetDSequenceAccuracy';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceSrcRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetDSequenceSrcRect( seqID: ImageSequence; const (*var*) srcRect: Rect ): OSErr; external name '_SetDSequenceSrcRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceFlags()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function SetDSequenceFlags( seqID: ImageSequence; flags: SIGNEDLONG; flagsMask: SIGNEDLONG ): OSErr; external name '_SetDSequenceFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- const
- codecDSequenceDisableOverlaySurface = 1 shl 5;
- codecDSequenceSingleField = 1 shl 6;
- codecDSequenceBidirectionalPrediction = 1 shl 7;
- codecDSequenceFlushInsteadOfDirtying = 1 shl 8;
- codecDSequenceEnableSubPixelPositioning = 1 shl 9;
- codecDSequenceDeinterlaceFields = 1 shl 10;
- type
- CodecComponentPtr = ^CodecComponent;
- CodecComponentHandle = ^CodecComponentPtr;
- { selectors for ICMSequenceGet/SetInfo}
- const
- kICMSequenceTaskWeight = FourCharCode('twei'); { data is pointer to UInt32}
- kICMSequenceTaskName = FourCharCode('tnam'); { data is pointer to OSType}
- kICMSequenceUserPreferredCodecs = FourCharCode('punt'); { data is pointer to CodecComponentHandle}
- {
- * ICMSequenceGetInfo()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function ICMSequenceGetInfo( seqID: ImageSequence; which: OSType; data: UnivPtr ): OSErr; external name '_ICMSequenceGetInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ICMSequenceSetInfo()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function ICMSequenceSetInfo( seqID: ImageSequence; which: OSType; data: UnivPtr; dataSize: Size ): OSErr; external name '_ICMSequenceSetInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetDSequenceImageBuffer()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetDSequenceImageBuffer( seqID: ImageSequence; var gworld: GWorldPtr ): OSErr; external name '_GetDSequenceImageBuffer';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetDSequenceScreenBuffer()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetDSequenceScreenBuffer( seqID: ImageSequence; var gworld: GWorldPtr ): OSErr; external name '_GetDSequenceScreenBuffer';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetCSequenceQuality()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetCSequenceQuality( seqID: ImageSequence; spatialQuality: CodecQ; temporalQuality: CodecQ ): OSErr; external name '_SetCSequenceQuality';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetCSequencePrev()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetCSequencePrev( seqID: ImageSequence; prev: PixMapHandle; const (*var*) prevRect: Rect ): OSErr; external name '_SetCSequencePrev';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetCSequenceFlushProc()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetCSequenceFlushProc( seqID: ImageSequence; flushProc: ICMFlushProcRecordPtr; bufferSize: SIGNEDLONG ): OSErr; external name '_SetCSequenceFlushProc';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetCSequenceKeyFrameRate()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetCSequenceKeyFrameRate( seqID: ImageSequence; keyFrameRate: SIGNEDLONG ): OSErr; external name '_SetCSequenceKeyFrameRate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCSequenceKeyFrameRate()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCSequenceKeyFrameRate( seqID: ImageSequence; var keyFrameRate: SIGNEDLONG ): OSErr; external name '_GetCSequenceKeyFrameRate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCSequencePrevBuffer()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCSequencePrevBuffer( seqID: ImageSequence; var gworld: GWorldPtr ): OSErr; external name '_GetCSequencePrevBuffer';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceBusy()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceBusy( seqID: ImageSequence ): OSErr; external name '_CDSequenceBusy';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceEnd()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceEnd( seqID: ImageSequence ): OSErr; external name '_CDSequenceEnd';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceEquivalentImageDescription()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceEquivalentImageDescription( seqID: ImageSequence; newDesc: ImageDescriptionHandle; var equivalent: Boolean ): OSErr; external name '_CDSequenceEquivalentImageDescription';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceEquivalentImageDescriptionS()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function CDSequenceEquivalentImageDescriptionS( seqID: ImageSequence; newDesc: ImageDescriptionHandle; var equivalent: Boolean; var canSwitch: Boolean ): OSErr; external name '_CDSequenceEquivalentImageDescriptionS';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ReplaceDSequenceImageDescription()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function ReplaceDSequenceImageDescription( seqID: ImageSequence; newDesc: ImageDescriptionHandle ): OSErr; external name '_ReplaceDSequenceImageDescription';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCompressedImageSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCompressedImageSize( desc: ImageDescriptionHandle; data: Ptr; bufferSize: SIGNEDLONG; dataProc: ICMDataProcRecordPtr; var dataSize: SIGNEDLONG ): OSErr; external name '_GetCompressedImageSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetSimilarity()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetSimilarity( src: PixMapHandle; const (*var*) srcRect: Rect; desc: ImageDescriptionHandle; data: Ptr; var similarity: Fixed ): OSErr; external name '_GetSimilarity';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- const
- kImageDescriptionSampleFormat = FourCharCode('idfm'); { image description extension describing sample format}
- kImageDescriptionClassicAtomFormat = FourCharCode('atom'); { sample contains classic atom structure (ie, GX codec and Curve codec)}
- kImageDescriptionQTAtomFormat = FourCharCode('qtat'); { sample contains QT atom structure}
- kImageDescriptionEffectDataFormat = FourCharCode('fxat'); { sample describes an effect (as QTAtoms)}
- kImageDescriptionPrivateDataFormat = FourCharCode('priv'); { sample is in a private codec specific format}
- kImageDescriptionAlternateCodec = FourCharCode('subs'); { image description extension containing the OSType of a substitute codec should the main codec not be available}
- kImageDescriptionColorSpace = FourCharCode('cspc'); { image description extension containing an OSType naming the native pixel format of an image (only used for pixel formats not supported by classic Color QuickDraw)}
- {
- * GetImageDescriptionCTable()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetImageDescriptionCTable( desc: ImageDescriptionHandle; var ctable: CTabHandle ): OSErr; external name '_GetImageDescriptionCTable';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetImageDescriptionCTable()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetImageDescriptionCTable( desc: ImageDescriptionHandle; ctable: CTabHandle ): OSErr; external name '_SetImageDescriptionCTable';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetImageDescriptionExtension()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetImageDescriptionExtension( desc: ImageDescriptionHandle; var extension: Handle; idType: SIGNEDLONG; index: SIGNEDLONG ): OSErr; external name '_GetImageDescriptionExtension';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * AddImageDescriptionExtension()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function AddImageDescriptionExtension( desc: ImageDescriptionHandle; extension: Handle; idType: SIGNEDLONG ): OSErr; external name '_AddImageDescriptionExtension';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * RemoveImageDescriptionExtension()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function RemoveImageDescriptionExtension( desc: ImageDescriptionHandle; idType: SIGNEDLONG; index: SIGNEDLONG ): OSErr; external name '_RemoveImageDescriptionExtension';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CountImageDescriptionExtensionType()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CountImageDescriptionExtensionType( desc: ImageDescriptionHandle; idType: SIGNEDLONG; var count: SIGNEDLONG ): OSErr; external name '_CountImageDescriptionExtensionType';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetNextImageDescriptionExtensionType()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetNextImageDescriptionExtensionType( desc: ImageDescriptionHandle; var idType: SIGNEDLONG ): OSErr; external name '_GetNextImageDescriptionExtensionType';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FindCodec()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FindCodec( cType: CodecType; specCodec: CodecComponent; var compressor: CompressorComponent; var decompressor: DecompressorComponent ): OSErr; external name '_FindCodec';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompressPicture()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CompressPicture( srcPicture: PicHandle; dstPicture: PicHandle; quality: CodecQ; cType: CodecType ): OSErr; external name '_CompressPicture';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FCompressPicture()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FCompressPicture( srcPicture: PicHandle; dstPicture: PicHandle; colorDepth: SInt16; ctable: CTabHandle; quality: CodecQ; doDither: SInt16; compressAgain: SInt16; progressProc: ICMProgressProcRecordPtr; cType: CodecType; codec: CompressorComponent ): OSErr; external name '_FCompressPicture';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompressPictureFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CompressPictureFile( srcRefNum: SInt16; dstRefNum: SInt16; quality: CodecQ; cType: CodecType ): OSErr; external name '_CompressPictureFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FCompressPictureFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FCompressPictureFile( srcRefNum: SInt16; dstRefNum: SInt16; colorDepth: SInt16; ctable: CTabHandle; quality: CodecQ; doDither: SInt16; compressAgain: SInt16; progressProc: ICMProgressProcRecordPtr; cType: CodecType; codec: CompressorComponent ): OSErr; external name '_FCompressPictureFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetPictureFileHeader()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetPictureFileHeader( refNum: SInt16; var frame: Rect; var header: OpenCPicParams ): OSErr; external name '_GetPictureFileHeader';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DrawPictureFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DrawPictureFile( refNum: SInt16; const (*var*) frame: Rect; progressProc: ICMProgressProcRecordPtr ): OSErr; external name '_DrawPictureFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DrawTrimmedPicture()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DrawTrimmedPicture( srcPicture: PicHandle; const (*var*) frame: Rect; trimMask: RgnHandle; doDither: SInt16; progressProc: ICMProgressProcRecordPtr ): OSErr; external name '_DrawTrimmedPicture';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DrawTrimmedPictureFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DrawTrimmedPictureFile( srcRefnum: SInt16; const (*var*) frame: Rect; trimMask: RgnHandle; doDither: SInt16; progressProc: ICMProgressProcRecordPtr ): OSErr; external name '_DrawTrimmedPictureFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * MakeThumbnailFromPicture()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function MakeThumbnailFromPicture( picture: PicHandle; colorDepth: SInt16; thumbnail: PicHandle; progressProc: ICMProgressProcRecordPtr ): OSErr; external name '_MakeThumbnailFromPicture';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * MakeThumbnailFromPictureFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function MakeThumbnailFromPictureFile( refNum: SInt16; colorDepth: SInt16; thumbnail: PicHandle; progressProc: ICMProgressProcRecordPtr ): OSErr; external name '_MakeThumbnailFromPictureFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * MakeThumbnailFromPixMap()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function MakeThumbnailFromPixMap( src: PixMapHandle; const (*var*) srcRect: Rect; colorDepth: SInt16; thumbnail: PicHandle; progressProc: ICMProgressProcRecordPtr ): OSErr; external name '_MakeThumbnailFromPixMap';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * TrimImage()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function TrimImage( desc: ImageDescriptionHandle; inData: Ptr; inBufferSize: SIGNEDLONG; dataProc: ICMDataProcRecordPtr; outData: Ptr; outBufferSize: SIGNEDLONG; flushProc: ICMFlushProcRecordPtr; var trimRect: Rect; progressProc: ICMProgressProcRecordPtr ): OSErr; external name '_TrimImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ConvertImage()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ConvertImage( srcDD: ImageDescriptionHandle; srcData: Ptr; colorDepth: SInt16; ctable: CTabHandle; accuracy: CodecQ; quality: CodecQ; cType: CodecType; codec: CodecComponent; dstDD: ImageDescriptionHandle; dstData: Ptr ): OSErr; external name '_ConvertImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCompressedPixMapInfo()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCompressedPixMapInfo( pix: PixMapPtr; var desc: ImageDescriptionHandle; var data: Ptr; var bufferSize: SIGNEDLONG; var dataProc: ICMDataProcRecord; var progressProc: ICMProgressProcRecord ): OSErr; external name '_GetCompressedPixMapInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetCompressedPixMapInfo()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetCompressedPixMapInfo( pix: PixMapPtr; desc: ImageDescriptionHandle; data: Ptr; bufferSize: SIGNEDLONG; dataProc: ICMDataProcRecordPtr; progressProc: ICMProgressProcRecordPtr ): OSErr; external name '_SetCompressedPixMapInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * StdPix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure StdPix( src: PixMapPtr; const (*var*) srcRect: Rect; matrix: MatrixRecordPtr; mode: SInt16; mask: RgnHandle; matte: PixMapPtr; const (*var*) matteRect: Rect; flags: SInt16 ); external name '_StdPix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * TransformRgn()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function TransformRgn( matrix: MatrixRecordPtr; rgn: RgnHandle ): OSErr; external name '_TransformRgn';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {**********
- preview stuff
- **********}
- {
- * SFGetFilePreview()
- *
- * Availability:
- * Mac OS X: not available
- * CarbonLib: not available
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- {
- * SFPGetFilePreview()
- *
- * Availability:
- * Mac OS X: not available
- * CarbonLib: not available
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- {
- * StandardGetFilePreview()
- *
- * Availability:
- * Mac OS X: not available
- * CarbonLib: not available
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- {
- * CustomGetFilePreview()
- *
- * Availability:
- * Mac OS X: not available
- * CarbonLib: not available
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- {
- * MakeFilePreview()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function MakeFilePreview( resRefNum: SInt16; progress: ICMProgressProcRecordPtr ): OSErr; external name '_MakeFilePreview';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * AddFilePreview()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function AddFilePreview( resRefNum: SInt16; previewType: OSType; previewData: Handle ): OSErr; external name '_AddFilePreview';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- type
- PreviewResourceRecordPtr = ^PreviewResourceRecord;
- PreviewResourceRecord = record
- modDate: UNSIGNEDLONG;
- version: SInt16;
- resType: OSType;
- resID: SInt16;
- end;
- type
- PreviewResourcePtr = PreviewResourceRecordPtr;
- PreviewResource = ^PreviewResourcePtr;
- {
- * AlignScreenRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure AlignScreenRect( var rp: Rect; alignmentProc: ICMAlignmentProcRecordPtr ); external name '_AlignScreenRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * AlignWindow()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure AlignWindow( wp: WindowRef; front: Boolean; const (*var*) alignmentRect: Rect; alignmentProc: ICMAlignmentProcRecordPtr ); external name '_AlignWindow';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DragAlignedWindow()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure DragAlignedWindow( wp: WindowRef; startPt: Point; var boundsRect: Rect; var alignmentRect: Rect; alignmentProc: ICMAlignmentProcRecordPtr ); external name '_DragAlignedWindow';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * DragAlignedGrayRgn()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function DragAlignedGrayRgn( theRgn: RgnHandle; startPt: Point; var boundsRect: Rect; var slopRect: Rect; axis: SInt16; actionProc: UniversalProcPtr; var alignmentRect: Rect; alignmentProc: ICMAlignmentProcRecordPtr ): SIGNEDLONG; external name '_DragAlignedGrayRgn';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetCSequenceDataRateParams()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetCSequenceDataRateParams( seqID: ImageSequence; params: DataRateParamsPtr ): OSErr; external name '_SetCSequenceDataRateParams';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetCSequenceFrameNumber()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetCSequenceFrameNumber( seqID: ImageSequence; frameNumber: SIGNEDLONG ): OSErr; external name '_SetCSequenceFrameNumber';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetCSequencePreferredPacketSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetCSequencePreferredPacketSize( seqID: ImageSequence; preferredPacketSizeInBytes: SIGNEDLONG ): OSErr; external name '_SetCSequencePreferredPacketSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * NewImageGWorld()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function NewImageGWorld( var gworld: GWorldPtr; idh: ImageDescriptionHandle; flags: GWorldFlags ): OSErr; external name '_NewImageGWorld';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCSequenceDataRateParams()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCSequenceDataRateParams( seqID: ImageSequence; params: DataRateParamsPtr ): OSErr; external name '_GetCSequenceDataRateParams';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetCSequenceFrameNumber()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetCSequenceFrameNumber( seqID: ImageSequence; var frameNumber: SIGNEDLONG ): OSErr; external name '_GetCSequenceFrameNumber';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetBestDeviceRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetBestDeviceRect( var gdh: GDHandle; var rp: Rect ): OSErr; external name '_GetBestDeviceRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetSequenceProgressProc()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetSequenceProgressProc( seqID: ImageSequence; var progressProc: ICMProgressProcRecord ): OSErr; external name '_SetSequenceProgressProc';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GDHasScale()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GDHasScale( gdh: GDHandle; depth: SInt16; var scale: Fixed ): OSErr; external name '_GDHasScale';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GDGetScale()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GDGetScale( gdh: GDHandle; var scale: Fixed; var flags: SInt16 ): OSErr; external name '_GDGetScale';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GDSetScale()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GDSetScale( gdh: GDHandle; scale: Fixed; flags: SInt16 ): OSErr; external name '_GDSetScale';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ICMShieldSequenceCursor()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ICMShieldSequenceCursor( seqID: ImageSequence ): OSErr; external name '_ICMShieldSequenceCursor';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ICMDecompressComplete()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure ICMDecompressComplete( seqID: ImageSequence; err: OSErr; flag: SInt16; completionRtn: ICMCompletionProcRecordPtr ); external name '_ICMDecompressComplete';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ICMDecompressCompleteS()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.1 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ICMDecompressCompleteS( seqID: ImageSequence; err: OSErr; flag: SInt16; completionRtn: ICMCompletionProcRecordPtr ): OSErr; external name '_ICMDecompressCompleteS';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ICMSequenceLockBits()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ICMSequenceLockBits( seqID: ImageSequence; dst: PixMapPtr; flags: SIGNEDLONG ): OSErr; external name '_ICMSequenceLockBits';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ICMSequenceUnlockBits()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ICMSequenceUnlockBits( seqID: ImageSequence; flags: SIGNEDLONG ): OSErr; external name '_ICMSequenceUnlockBits';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- const
- kICMPixelFormatIsPlanarMask = $0F; { these bits in formatFlags indicate how many planes there are; they're 0 if chunky}
- kICMPixelFormatIsIndexed = 1 shl 4;
- kICMPixelFormatIsSupportedByQD = 1 shl 5;
- kICMPixelFormatIsMonochrome = 1 shl 6;
- kICMPixelFormatHasAlphaChannel = 1 shl 7;
- type
- ICMPixelFormatInfo = record
- size: SIGNEDLONG; { caller MUST fill this in with sizeof(ICMPixelFormatInfo) before calling ICMGet/SetPixelFormatInfo}
- formatFlags: UNSIGNEDLONG;
- bitsPerPixel: array [0..13] of SInt16; { list each plane's bits per pixel separately if planar}
- { new field for QuickTime 4.1}
- defaultGammaLevel: Fixed;
- { new fields for QuickTime 6.0}
- horizontalSubsampling: array [0..13] of SInt16; { per plane; use 1 if plane is not subsampled}
- verticalSubsampling: array [0..13] of SInt16; { per plane; use 1 if plane is not subsampled}
- { new fields for QuickTime 6.5}
- cmpCount: SInt16; { for use in PixMap.cmpCount}
- cmpSize: SInt16; { for use in PixMap.cmpSize}
- end;
- ICMPixelFormatInfoPtr = ^ICMPixelFormatInfo;
- { IMPORTANT: Fill in theInfo->size with sizeof(ICMPixelFormatInfo) before calling ICMGetPixelFormatInfo }
- {
- * ICMGetPixelFormatInfo()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ICMGetPixelFormatInfo( PixelFormat: OSType; theInfo: ICMPixelFormatInfoPtr ): OSErr; external name '_ICMGetPixelFormatInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { IMPORTANT: Fill in theInfo->size with sizeof(ICMPixelFormatInfo) before calling ICMSetPixelFormatInfo }
- {
- * ICMSetPixelFormatInfo()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.1 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ICMSetPixelFormatInfo( PixelFormat: OSType; theInfo: ICMPixelFormatInfoPtr ): OSErr; external name '_ICMSetPixelFormatInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- const
- kICMGetChainUltimateParent = 0;
- kICMGetChainParent = 1;
- kICMGetChainChild = 2;
- kICMGetChainUltimateChild = 3;
- {
- * ICMSequenceGetChainMember()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ICMSequenceGetChainMember( seqID: ImageSequence; var retSeqID: ImageSequence; flags: SIGNEDLONG ): OSErr; external name '_ICMSequenceGetChainMember';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceTimeCode()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function SetDSequenceTimeCode( seqID: ImageSequence; timeCodeFormat: UnivPtr; timeCodeTime: UnivPtr ): OSErr; external name '_SetDSequenceTimeCode';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceNewMemory()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceNewMemory( seqID: ImageSequence; var data: Ptr; dataSize: Size; dataUse: SIGNEDLONG; memoryGoneProc: ICMMemoryDisposedUPP; refCon: UnivPtr ): OSErr; external name '_CDSequenceNewMemory';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceDisposeMemory()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceDisposeMemory( seqID: ImageSequence; data: Ptr ): OSErr; external name '_CDSequenceDisposeMemory';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceNewDataSource()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceNewDataSource( seqID: ImageSequence; var sourceID: ImageSequenceDataSource; sourceType: OSType; sourceInputNumber: SIGNEDLONG; dataDescription: Handle; transferProc: ICMConvertDataFormatUPP; refCon: UnivPtr ): OSErr; external name '_CDSequenceNewDataSource';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceDisposeDataSource()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceDisposeDataSource( sourceID: ImageSequenceDataSource ): OSErr; external name '_CDSequenceDisposeDataSource';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceSetSourceData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceSetSourceData( sourceID: ImageSequenceDataSource; data: UnivPtr; dataSize: SIGNEDLONG ): OSErr; external name '_CDSequenceSetSourceData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceChangedSourceData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceChangedSourceData( sourceID: ImageSequenceDataSource ): OSErr; external name '_CDSequenceChangedSourceData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceSetSourceDataQueue()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.1 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceSetSourceDataQueue( sourceID: ImageSequenceDataSource; dataQueue: QHdrPtr ): OSErr; external name '_CDSequenceSetSourceDataQueue';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceGetDataSource()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceGetDataSource( seqID: ImageSequence; var sourceID: ImageSequenceDataSource; sourceType: OSType; sourceInputNumber: SIGNEDLONG ): OSErr; external name '_CDSequenceGetDataSource';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * PtInDSequenceData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function PtInDSequenceData( seqID: ImageSequence; data: UnivPtr; dataSize: Size; where: Point; var hit: Boolean ): OSErr; external name '_PtInDSequenceData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * HitTestDSequenceData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function HitTestDSequenceData( seqID: ImageSequence; data: UnivPtr; dataSize: Size; where: Point; var hit: SIGNEDLONG; hitFlags: SIGNEDLONG ): OSErr; external name '_HitTestDSequenceData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetDSequenceNonScheduledDisplayTime()
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
- }
- function SetDSequenceNonScheduledDisplayTime( sequence: ImageSequence; displayTime: TimeValue64; displayTimeScale: TimeScale; flags: UInt32 ): OSErr; external name '_SetDSequenceNonScheduledDisplayTime';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * GetDSequenceNonScheduledDisplayTime()
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
- }
- function GetDSequenceNonScheduledDisplayTime( sequence: ImageSequence; var displayTime: TimeValue64; var displayTimeScale: TimeScale ): OSErr; external name '_GetDSequenceNonScheduledDisplayTime';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * SetDSequenceNonScheduledDisplayDirection()
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
- }
- function SetDSequenceNonScheduledDisplayDirection( sequence: ImageSequence; rate: Fixed ): OSErr; external name '_SetDSequenceNonScheduledDisplayDirection';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * GetDSequenceNonScheduledDisplayDirection()
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib version 10.4 (or QuickTime 7.0) and later
- }
- function GetDSequenceNonScheduledDisplayDirection( sequence: ImageSequence; var rate: Fixed ): OSErr; external name '_GetDSequenceNonScheduledDisplayDirection';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * GetGraphicsImporterForFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetGraphicsImporterForFile( const (*var*) theFile: FSSpec; var gi: ComponentInstance ): OSErr; external name '_GetGraphicsImporterForFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetGraphicsImporterForDataRef()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetGraphicsImporterForDataRef( dataRef: Handle; dataRefType: OSType; var gi: ComponentInstance ): OSErr; external name '_GetGraphicsImporterForDataRef';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- const
- kDontUseValidateToFindGraphicsImporter = 1 shl 0;
- {
- * GetGraphicsImporterForFileWithFlags()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.1 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetGraphicsImporterForFileWithFlags( const (*var*) theFile: FSSpec; var gi: ComponentInstance; flags: SIGNEDLONG ): OSErr; external name '_GetGraphicsImporterForFileWithFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GetGraphicsImporterForDataRefWithFlags()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.1 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetGraphicsImporterForDataRefWithFlags( dataRef: Handle; dataRefType: OSType; var gi: ComponentInstance; flags: SIGNEDLONG ): OSErr; external name '_GetGraphicsImporterForDataRefWithFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTGetFileNameExtension()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function QTGetFileNameExtension(const (*var*) fileName: StrFileName; fileType: OSType; var extension: OSType ): OSErr; external name '_QTGetFileNameExtension';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageTranscodeSequenceBegin()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageTranscodeSequenceBegin( var its: ImageTranscodeSequence; srcDesc: ImageDescriptionHandle; destType: OSType; var dstDesc: ImageDescriptionHandle; data: UnivPtr; dataSize: SIGNEDLONG ): OSErr; external name '_ImageTranscodeSequenceBegin';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageTranscodeSequenceEnd()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageTranscodeSequenceEnd( its: ImageTranscodeSequence ): OSErr; external name '_ImageTranscodeSequenceEnd';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageTranscodeFrame()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageTranscodeFrame( its: ImageTranscodeSequence; srcData: UnivPtr; srcDataSize: SIGNEDLONG; var dstData: UnivPtr; var dstDataSize: SIGNEDLONG ): OSErr; external name '_ImageTranscodeFrame';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageTranscodeDisposeFrameData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageTranscodeDisposeFrameData( its: ImageTranscodeSequence; dstData: UnivPtr ): OSErr; external name '_ImageTranscodeDisposeFrameData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceInvalidate()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceInvalidate( seqID: ImageSequence; invalRgn: RgnHandle ): OSErr; external name '_CDSequenceInvalidate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CDSequenceSetTimeBase()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CDSequenceSetTimeBase( seqID: ImageSequence; base: UnivPtr ): OSErr; external name '_CDSequenceSetTimeBase';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageFieldSequenceBegin()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageFieldSequenceBegin( var ifs: ImageFieldSequence; desc1: ImageDescriptionHandle; desc2: ImageDescriptionHandle; descOut: ImageDescriptionHandle ): OSErr; external name '_ImageFieldSequenceBegin';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageFieldSequenceExtractCombine()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageFieldSequenceExtractCombine( ifs: ImageFieldSequence; fieldFlags: SIGNEDLONG; data1: UnivPtr; dataSize1: SIGNEDLONG; data2: UnivPtr; dataSize2: SIGNEDLONG; outputData: UnivPtr; var outDataSize: SIGNEDLONG ): OSErr; external name '_ImageFieldSequenceExtractCombine';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageFieldSequenceEnd()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageFieldSequenceEnd( ifs: ImageFieldSequence ): OSErr; external name '_ImageFieldSequenceEnd';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- const
- kICMTempThenAppMemory = 1 shl 12;
- kICMAppThenTempMemory = 1 shl 13;
- {
- * QTNewGWorld()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function QTNewGWorld( var offscreenGWorld: GWorldPtr; PixelFormat: OSType; const (*var*) boundsRect: Rect; cTable: CTabHandle; aGDevice: GDHandle; flags: GWorldFlags ): OSErr; external name '_QTNewGWorld';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTNewGWorldFromPtr()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function QTNewGWorldFromPtr( var gw: GWorldPtr; pixelFormat: OSType; const (*var*) boundsRect: Rect; cTable: CTabHandle; aGDevice: GDHandle; flags: GWorldFlags; baseAddr: UnivPtr; rowBytes: SIGNEDLONG ): OSErr; external name '_QTNewGWorldFromPtr';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTUpdateGWorld()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function QTUpdateGWorld( var offscreenGWorld: GWorldPtr; PixelFormat: OSType; const (*var*) boundsRect: Rect; cTable: CTabHandle; aGDevice: GDHandle; flags: GWorldFlags ): GWorldFlags; external name '_QTUpdateGWorld';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * MakeImageDescriptionForPixMap()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function MakeImageDescriptionForPixMap( pixmap: PixMapHandle; var idh: ImageDescriptionHandle ): OSErr; external name '_MakeImageDescriptionForPixMap';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * MakeImageDescriptionForEffect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function MakeImageDescriptionForEffect( effectType: OSType; var idh: ImageDescriptionHandle ): OSErr; external name '_MakeImageDescriptionForEffect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTGetPixelSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function QTGetPixelSize( PixelFormat: OSType ): SInt16; external name '_QTGetPixelSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTGetPixelFormatDepthForImageDescription()
- *
- * Availability:
- * Mac OS X: in version 10.2 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.6 and later
- * Non-Carbon CFM: in QuickTimeLib 6.0 and later
- * Windows: in qtmlClient.lib 6.0 and later
- }
- function QTGetPixelFormatDepthForImageDescription( PixelFormat: OSType ): SInt16; external name '_QTGetPixelFormatDepthForImageDescription';
- (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
- {
- * QTGetPixMapPtrRowBytes()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function QTGetPixMapPtrRowBytes( pm: PixMapPtr ): SIGNEDLONG; external name '_QTGetPixMapPtrRowBytes';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTGetPixMapHandleRowBytes()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function QTGetPixMapHandleRowBytes( pm: PixMapHandle ): SIGNEDLONG; external name '_QTGetPixMapHandleRowBytes';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTSetPixMapPtrRowBytes()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function QTSetPixMapPtrRowBytes( pm: PixMapPtr; rowBytes: SIGNEDLONG ): OSErr; external name '_QTSetPixMapPtrRowBytes';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTSetPixMapHandleRowBytes()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function QTSetPixMapHandleRowBytes( pm: PixMapHandle; rowBytes: SIGNEDLONG ): OSErr; external name '_QTSetPixMapHandleRowBytes';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- const
- kQTUsePlatformDefaultGammaLevel = 0; { When decompressing into this PixMap, gamma-correct to the platform's standard gamma. }
- kQTUseSourceGammaLevel = -1; { When decompressing into this PixMap, don't perform gamma-correction. }
- kQTCCIR601VideoGammaLevel = $00023333; { 2.2, standard television video gamma.}
- {
- * QTGetPixMapPtrGammaLevel()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function QTGetPixMapPtrGammaLevel( pm: PixMapPtr ): Fixed; external name '_QTGetPixMapPtrGammaLevel';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTSetPixMapPtrGammaLevel()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function QTSetPixMapPtrGammaLevel( pm: PixMapPtr; gammaLevel: Fixed ): OSErr; external name '_QTSetPixMapPtrGammaLevel';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTGetPixMapHandleGammaLevel()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function QTGetPixMapHandleGammaLevel( pm: PixMapHandle ): Fixed; external name '_QTGetPixMapHandleGammaLevel';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTSetPixMapHandleGammaLevel()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function QTSetPixMapHandleGammaLevel( pm: PixMapHandle; gammaLevel: Fixed ): OSErr; external name '_QTSetPixMapHandleGammaLevel';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTGetPixMapPtrRequestedGammaLevel()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function QTGetPixMapPtrRequestedGammaLevel( pm: PixMapPtr ): Fixed; external name '_QTGetPixMapPtrRequestedGammaLevel';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTSetPixMapPtrRequestedGammaLevel()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function QTSetPixMapPtrRequestedGammaLevel( pm: PixMapPtr; requestedGammaLevel: Fixed ): OSErr; external name '_QTSetPixMapPtrRequestedGammaLevel';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTGetPixMapHandleRequestedGammaLevel()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function QTGetPixMapHandleRequestedGammaLevel( pm: PixMapHandle ): Fixed; external name '_QTGetPixMapHandleRequestedGammaLevel';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QTSetPixMapHandleRequestedGammaLevel()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.3 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0 and later
- * Windows: in qtmlClient.lib 5.0 and later
- }
- function QTSetPixMapHandleRequestedGammaLevel( pm: PixMapHandle; requestedGammaLevel: Fixed ): OSErr; external name '_QTSetPixMapHandleRequestedGammaLevel';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * QuadToQuadMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- type
- FixedPoint4 = array[0..3] of FixedPoint;
- function QuadToQuadMatrix( const (*var*) source: FixedPoint4; const (*var*) dest: FixedPoint4; var map: MatrixRecord ): OSErr; external name '_QuadToQuadMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- const
- identityMatrixType = $00; { result if matrix is identity }
- translateMatrixType = $01; { result if matrix translates }
- scaleMatrixType = $02; { result if matrix scales }
- scaleTranslateMatrixType = $03; { result if matrix scales and translates }
- linearMatrixType = $04; { result if matrix is general 2 x 2 }
- linearTranslateMatrixType = $05; { result if matrix is general 2 x 2 and translates }
- perspectiveMatrixType = $06; { result if matrix is general 3 x 3 }
- type
- MatrixFlags = UInt16;
- {
- * GetMatrixType()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GetMatrixType( const (*var*) m: MatrixRecord ): SInt16; external name '_GetMatrixType';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CopyMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure CopyMatrix( const (*var*) m1: MatrixRecord; var m2: MatrixRecord ); external name '_CopyMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * EqualMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function EqualMatrix( const (*var*) m1: MatrixRecord; const (*var*) m2: MatrixRecord ): Boolean; external name '_EqualMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SetIdentityMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure SetIdentityMatrix( var matrix: MatrixRecord ); external name '_SetIdentityMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * TranslateMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure TranslateMatrix( var m: MatrixRecord; deltaH: Fixed; deltaV: Fixed ); external name '_TranslateMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * RotateMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure RotateMatrix( var m: MatrixRecord; degrees: Fixed; aboutX: Fixed; aboutY: Fixed ); external name '_RotateMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ScaleMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure ScaleMatrix( var m: MatrixRecord; scaleX: Fixed; scaleY: Fixed; aboutX: Fixed; aboutY: Fixed ); external name '_ScaleMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * SkewMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure SkewMatrix( var m: MatrixRecord; skewX: Fixed; skewY: Fixed; aboutX: Fixed; aboutY: Fixed ); external name '_SkewMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * TransformFixedPoints()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function TransformFixedPoints( const (*var*) m: MatrixRecord; var fpt: FixedPoint; count: SIGNEDLONG ): OSErr; external name '_TransformFixedPoints';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * TransformPoints()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function TransformPoints( const (*var*) mp: MatrixRecord; var pt1: Point; count: SIGNEDLONG ): OSErr; external name '_TransformPoints';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * TransformFixedRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function TransformFixedRect( const (*var*) m: MatrixRecord; var fr: FixedRect; var fpp: FixedPoint ): Boolean; external name '_TransformFixedRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * TransformRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function TransformRect( const (*var*) m: MatrixRecord; var r: Rect; var fpp: FixedPoint ): Boolean; external name '_TransformRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * InverseMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function InverseMatrix( const (*var*) m: MatrixRecord; var im: MatrixRecord ): Boolean; external name '_InverseMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ConcatMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure ConcatMatrix( const (*var*) a: MatrixRecord; var b: MatrixRecord ); external name '_ConcatMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * RectMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure RectMatrix( var matrix: MatrixRecord; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect ); external name '_RectMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * MapMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure MapMatrix( var matrix: MatrixRecord; const (*var*) fromRect: Rect; const (*var*) toRect: Rect ); external name '_MapMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompAdd()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure CompAdd( var src: wide; var dst: wide ); external name '_CompAdd';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompSub()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure CompSub( var src: wide; var dst: wide ); external name '_CompSub';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompNeg()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure CompNeg( var dst: wide ); external name '_CompNeg';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompShift()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure CompShift( var src: wide; shift: SInt16 ); external name '_CompShift';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompMul()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure CompMul( src1: SIGNEDLONG; src2: SIGNEDLONG; var dst: wide ); external name '_CompMul';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompDiv()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CompDiv( var numerator: wide; denominator: SIGNEDLONG; var remainder: SIGNEDLONG ): SIGNEDLONG; external name '_CompDiv';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompFixMul()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure CompFixMul( var compSrc: wide; fixSrc: Fixed; var compDst: wide ); external name '_CompFixMul';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompMulDiv()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure CompMulDiv( var co: wide; mul: SIGNEDLONG; divisor: SIGNEDLONG ); external name '_CompMulDiv';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompMulDivTrunc()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- procedure CompMulDivTrunc( var co: wide; mul: SIGNEDLONG; divisor: SIGNEDLONG; var remainder: SIGNEDLONG ); external name '_CompMulDivTrunc';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompCompare()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CompCompare( const (*var*) a: wide; const (*var*) minusb: wide ): SIGNEDLONG; external name '_CompCompare';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * CompSquareRoot()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function CompSquareRoot( const (*var*) src: wide ): UNSIGNEDLONG; external name '_CompSquareRoot';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FixMulDiv()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FixMulDiv( src: Fixed; mul: Fixed; divisor: Fixed ): Fixed; external name '_FixMulDiv';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * UnsignedFixMulDiv()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function UnsignedFixMulDiv( src: Fixed; mul: Fixed; divisor: Fixed ): Fixed; external name '_UnsignedFixMulDiv';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FracSinCos()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FracSinCos( degree: Fixed; var cosOut: Fract ): Fract; external name '_FracSinCos';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FixExp2()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FixExp2( src: Fixed ): Fixed; external name '_FixExp2';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FixLog2()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FixLog2( src: Fixed ): Fixed; external name '_FixLog2';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * FixPow()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function FixPow( base: Fixed; exp: Fixed ): Fixed; external name '_FixPow';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- type
- GraphicsImportComponent = ComponentInstance;
- const
- GraphicsImporterComponentType = FourCharCode('grip');
- { Component flags for Graphics Importer components }
- const
- graphicsImporterIsBaseImporter = 1 shl 0;
- graphicsImporterCanValidateFile = 1 shl 9;
- graphicsImporterSubTypeIsFileExtension = 1 shl 12;
- graphicsImporterHasMIMEList = 1 shl 14;
- graphicsImporterUsesImageDecompressor = 1 shl 23;
- { Atom types for QuickTime Image files }
- const
- quickTimeImageFileImageDescriptionAtom = FourCharCode('idsc');
- quickTimeImageFileImageDataAtom = FourCharCode('idat');
- quickTimeImageFileMetaDataAtom = FourCharCode('meta');
- quickTimeImageFileColorSyncProfileAtom = FourCharCode('iicc');
- { Flags for GraphicsImportDoesDrawAllPixels }
- const
- graphicsImporterDrawsAllPixels = 0;
- graphicsImporterDoesntDrawAllPixels = 1;
- graphicsImporterDontKnowIfDrawAllPixels = 2;
- { Flags for GraphicsImportSetFlags }
- const
- kGraphicsImporterDontDoGammaCorrection = 1 shl 0;
- kGraphicsImporterTrustResolutionFromFile = 1 shl 1;
- kGraphicsImporterEnableSubPixelPositioning = 1 shl 2;
- kGraphicsImporterDontUseColorMatching = 1 shl 3; { set this flag (*before* calling GraphicsImportGetColorSyncProfile) if you do matching yourself }
- { Flags for GraphicsImportCreateCGImage }
- const
- kGraphicsImportCreateCGImageUsingCurrentSettings = 1 shl 0;
- const
- kGraphicsExportGroup = FourCharCode('expo');
- kGraphicsExportFileType = FourCharCode('ftyp');
- kGraphicsExportMIMEType = FourCharCode('mime');
- kGraphicsExportExtension = FourCharCode('ext ');
- kGraphicsExportDescription = FourCharCode('desc');
- { User data types for layers of Photoshop files }
- const
- kQTPhotoshopLayerMode = FourCharCode('lmod'); { OSType }
- kQTPhotoshopLayerOpacity = FourCharCode('lopa'); { UInt8, 0 = transparent .. 255 = opaque }
- kQTPhotoshopLayerClipping = FourCharCode('lclp'); { UInt8, 0 = base, 1 = non-base }
- kQTPhotoshopLayerFlags = FourCharCode('lflg'); { UInt8 }
- kQTPhotoshopLayerName = FourCharCode('©lnm'); { Text }
- kQTPhotoshopLayerUnicodeName = FourCharCode('luni'); { Unicode characters, not terminated }
- { User data returned by graphics importers to suggest intended use for indexed images }
- const
- kQTIndexedImageType = FourCharCode('nth?'); { 1 or more OSTypes, such as the following values: }
- kQTIndexedImageIsThumbnail = FourCharCode('n=th'); { The image at this index is a thumbnail. }
- kQTIndexedImageIsLayer = FourCharCode('n=ly'); { The image at this index is a layer. }
- kQTIndexedImageIsPage = FourCharCode('n=pg'); { The image at this index is a page. }
- kQTIndexedImageIsMultiResolution = FourCharCode('n=rs'); { The image at this index is one of several identical images at different resolutions. }
- { Other user data types returned by graphics importers }
- const
- kQTTIFFUserDataPrefix = $74690000; { Added to some tag values in TIFF IFDs to generate user data codes. (0x7469 is 'ti'.) }
- { For example, YCbCrPositioning is tag 0x0213, so its user data code is 0x74690213. }
- kQTTIFFExifUserDataPrefix = $65780000; { Added to tag values in Exif IFDs to generate user data codes. (0x6578 is 'ex'.) }
- { For example, DateTimeOriginal is tag 0x9003, so its user data code is 0x65789003. }
- kQTTIFFExifGPSUserDataPrefix = $67700000; { Added to tag values in Exif GPS IFDs to generate user data codes. (0x6770 is 'gp'.) }
- { For example, GPSAltitude is tag 0x0006, so its user data code is 0x6770006. }
- kQTAlphaMode = FourCharCode('almo'); { UInt32; eg, graphicsModeStraightAlpha or graphicsModePreBlackAlpha }
- kQTAlphaModePreMulColor = FourCharCode('almp'); { RGBColor; used if kQTAlphaMode is graphicsModePreMulColorAlpha }
- kUserDataIPTC = FourCharCode('iptc');
- { Found in TIFF and Exif JPEG files }
- const
- kQTTIFFUserDataOrientation = $74690112; { 1 SHORT }
- kQTTIFFUserDataTransferFunction = $7469012D; { n SHORTs }
- kQTTIFFUserDataWhitePoint = $7469013E; { 2 RATIONALs }
- kQTTIFFUserDataPrimaryChromaticities = $7469013F; { 6 RATIONALs }
- kQTTIFFUserDataTransferRange = $74690156; { 6 SHORTs }
- kQTTIFFUserDataYCbCrPositioning = $74690213; { 1 SHORT }
- kQTTIFFUserDataReferenceBlackWhite = $74690214; { n LONGs }
- { Found in GeoTIFF files; defined in the GeoTIFF 1.0 spec }
- const
- kQTTIFFUserDataModelPixelScale = $7469830E; { 3 DOUBLEs }
- kQTTIFFUserDataModelTransformation = $746985D8; { 16 DOUBLEs }
- kQTTIFFUserDataModelTiepoint = $74698482; { n DOUBLEs }
- kQTTIFFUserDataGeoKeyDirectory = $746987AF; { n SHORTs }
- kQTTIFFUserDataGeoDoubleParams = $746987B0; { n DOUBLEs }
- kQTTIFFUserDataGeoAsciiParams = $746987B1; { n ASCIIs }
- kQTTIFFUserDataIntergraphMatrix = $74698480; { 16 or 17 DOUBLEs }
- { Found in Exif TIFF and Exif JPEG files; defined in the Exif 2.1 spec }
- const
- kQTExifUserDataExifVersion = $65789000; { 4 bytes (import only) }
- kQTExifUserDataFlashPixVersion = $6578A000; { 4 bytes }
- kQTExifUserDataColorSpace = $6578A001; { 1 SHORT }
- kQTExifUserDataComponentsConfiguration = $65789101; { 4 bytes }
- kQTExifUserDataCompressedBitsPerPixel = $65789102; { 1 RATIONAL }
- kQTExifUserDataPixelXDimension = $6578A002; { 1 SHORT or LONG }
- kQTExifUserDataPixelYDimension = $6578A003; { 1 SHORT or LONG }
- kQTExifUserDataMakerNote = $6578927C; { n bytes }
- kQTExifUserDataUserComment = $65789286; { n bytes (Note: this constant was erroneously 0x6578928C)}
- kQTExifUserDataRelatedSoundFile = $6578A004; { 13 ASCIIs}
- kQTExifUserDataDateTimeOriginal = $65789003; { 20 ASCIIs }
- kQTExifUserDataDateTimeDigitized = $65789004; { 20 ASCIIs }
- kQTExifUserDataSubSecTime = $65789290; { n ASCIIs }
- kQTExifUserDataSubSecTimeOriginal = $65789291; { n ASCIIs }
- kQTExifUserDataSubSecTimeDigitized = $65789292; { n ASCIIs }
- kQTExifUserDataExposureTime = $6578829A; { 1 RATIONAL }
- kQTExifUserDataFNumber = $6578829D; { 1 RATIONAL }
- kQTExifUserDataExposureProgram = $65788822; { 1 SHORT }
- kQTExifUserDataSpectralSensitivity = $65788824; { n ASCIIs }
- kQTExifUserDataISOSpeedRatings = $65788827; { n SHORTs }
- kQTExifUserDataShutterSpeedValue = $65789201; { 1 SIGNED RATIONAL }
- kQTExifUserDataApertureValue = $65789202; { 1 RATIONAL }
- kQTExifUserDataBrightnessValue = $65789203; { 1 SIGNED RATIONAL }
- kQTExifUserDataExposureBiasValue = $65789204; { 1 SIGNED RATIONAL }
- kQTExifUserDataMaxApertureValue = $65789205; { 1 RATIONAL }
- kQTExifUserDataSubjectDistance = $65789206; { 1 RATIONAL }
- kQTExifUserDataMeteringMode = $65789207; { 1 SHORT }
- kQTExifUserDataLightSource = $65789208; { 1 SHORT }
- kQTExifUserDataFlash = $65789209; { 1 SHORT }
- kQTExifUserDataFocalLength = $6578920A; { 1 RATIONAL }
- kQTExifUserDataFlashEnergy = $6578A20B; { 1 RATIONAL }
- kQTExifUserDataFocalPlaneXResolution = $6578A20E; { 1 RATIONAL }
- kQTExifUserDataFocalPlaneYResolution = $6578A20F; { 1 RATIONAL }
- kQTExifUserDataFocalPlaneResolutionUnit = $6578A210; { 1 SHORT }
- kQTExifUserDataSubjectLocation = $6578A214; { 1 SHORT }
- kQTExifUserDataExposureIndex = $6578A215; { 1 RATIONAL }
- kQTExifUserDataSensingMethod = $6578A217; { 1 SHORT }
- kQTExifUserDataFileSource = $6578A300; { 1 UNDEFINED }
- kQTExifUserDataSceneType = $6578A301; { 1 UNDEFINED }
- { Found in some Exif TIFF and Exif JPEG files; defined in the Exif 2.1 spec }
- { Note: these were wrong in the QuickTime 6.0 headers -- the high two bytes were 0x677 instead of 0x6770. }
- const
- kQTExifUserDataGPSVersionID = $67700000; { 4 BYTEs }
- kQTExifUserDataGPSLatitudeRef = $67700001; { 2 ASCIIs}
- kQTExifUserDataGPSLatitude = $67700002; { 3 RATIONALs }
- kQTExifUserDataGPSLongitudeRef = $67700003; { 2 ASCIIs }
- kQTExifUserDataGPSLongitude = $67700004; { 3 RATIONALs }
- kQTExifUserDataGPSAltitudeRef = $67700005; { 1 BYTE }
- kQTExifUserDataGPSAltitude = $67700006; { 1 RATIONAL }
- kQTExifUserDataGPSTimeStamp = $67700007; { 3 RATIONALs }
- kQTExifUserDataGPSSatellites = $67700008; { n ASCIIs }
- kQTExifUserDataGPSStatus = $67700009; { 2 ASCIIs }
- kQTExifUserDataGPSMeasureMode = $6770000A; { 2 ASCIIs }
- kQTExifUserDataGPSDOP = $6770000B; { 1 RATIONAL }
- kQTExifUserDataGPSSpeedRef = $6770000C; { 2 ASCIIs }
- kQTExifUserDataGPSSpeed = $6770000D; { 1 RATIONAL }
- kQTExifUserDataGPSTrackRef = $6770000E; { 2 ASCIIs }
- kQTExifUserDataGPSTrack = $6770000F; { 1 RATIONAL }
- kQTExifUserDataGPSImgDirectionRef = $67700010; { 2 ASCIIs }
- kQTExifUserDataGPSImgDirection = $67700011; { 1 RATIONAL }
- kQTExifUserDataGPSMapDatum = $67700012; { n ASCII }
- kQTExifUserDataGPSDestLatitudeRef = $67700013; { 2 ASCIIs }
- kQTExifUserDataGPSDestLatitude = $67700014; { 3 RATIONALs }
- kQTExifUserDataGPSDestLongitudeRef = $67700015; { 2 ASCIIs }
- kQTExifUserDataGPSDestLongitude = $67700016; { 3 RATIONALs }
- kQTExifUserDataGPSDestBearingRef = $67700017; { 2 ASCIIs }
- kQTExifUserDataGPSDestBearing = $67700018; { 1 RATIONAL }
- kQTExifUserDataGPSDestDistanceRef = $67700019; { 2 ASCIIs }
- kQTExifUserDataGPSDestDistance = $6770001A; { 1 RATIONAL }
- {* These are GraphicsImport procedures *}
- {
- * GraphicsImportSetDataReference()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetDataReference( ci: GraphicsImportComponent; dataRef: Handle; dataReType: OSType ): ComponentResult; external name '_GraphicsImportSetDataReference';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDataReference()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetDataReference( ci: GraphicsImportComponent; var dataRef: Handle; var dataReType: OSType ): ComponentResult; external name '_GraphicsImportGetDataReference';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetDataFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetDataFile( ci: GraphicsImportComponent; const (*var*) theFile: FSSpec ): ComponentResult; external name '_GraphicsImportSetDataFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDataFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetDataFile( ci: GraphicsImportComponent; var theFile: FSSpec ): ComponentResult; external name '_GraphicsImportGetDataFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetDataHandle()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetDataHandle( ci: GraphicsImportComponent; h: Handle ): ComponentResult; external name '_GraphicsImportSetDataHandle';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDataHandle()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetDataHandle( ci: GraphicsImportComponent; var h: Handle ): ComponentResult; external name '_GraphicsImportGetDataHandle';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetImageDescription()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetImageDescription( ci: GraphicsImportComponent; var desc: ImageDescriptionHandle ): ComponentResult; external name '_GraphicsImportGetImageDescription';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDataOffsetAndSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetDataOffsetAndSize( ci: GraphicsImportComponent; var offset: UNSIGNEDLONG; var size: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsImportGetDataOffsetAndSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportReadData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportReadData( ci: GraphicsImportComponent; dataPtr: UnivPtr; dataOffset: UNSIGNEDLONG; dataSize: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsImportReadData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetClip()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetClip( ci: GraphicsImportComponent; clipRgn: RgnHandle ): ComponentResult; external name '_GraphicsImportSetClip';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetClip()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetClip( ci: GraphicsImportComponent; var clipRgn: RgnHandle ): ComponentResult; external name '_GraphicsImportGetClip';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetSourceRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetSourceRect( ci: GraphicsImportComponent; const (*var*) sourceRect: Rect ): ComponentResult; external name '_GraphicsImportSetSourceRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetSourceRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetSourceRect( ci: GraphicsImportComponent; var sourceRect: Rect ): ComponentResult; external name '_GraphicsImportGetSourceRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetNaturalBounds()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetNaturalBounds( ci: GraphicsImportComponent; var naturalBounds: Rect ): ComponentResult; external name '_GraphicsImportGetNaturalBounds';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportDraw()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportDraw( ci: GraphicsImportComponent ): ComponentResult; external name '_GraphicsImportDraw';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetGWorld()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetGWorld( ci: GraphicsImportComponent; port: CGrafPtr; gd: GDHandle ): ComponentResult; external name '_GraphicsImportSetGWorld';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetGWorld()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetGWorld( ci: GraphicsImportComponent; var port: CGrafPtr; var gd: GDHandle ): ComponentResult; external name '_GraphicsImportGetGWorld';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetMatrix( ci: GraphicsImportComponent; const (*var*) matrix: MatrixRecord ): ComponentResult; external name '_GraphicsImportSetMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetMatrix( ci: GraphicsImportComponent; var matrix: MatrixRecord ): ComponentResult; external name '_GraphicsImportGetMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetBoundsRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetBoundsRect( ci: GraphicsImportComponent; const (*var*) bounds: Rect ): ComponentResult; external name '_GraphicsImportSetBoundsRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetBoundsRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetBoundsRect( ci: GraphicsImportComponent; var bounds: Rect ): ComponentResult; external name '_GraphicsImportGetBoundsRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSaveAsPicture()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSaveAsPicture( ci: GraphicsImportComponent; const (*var*) fss: FSSpec; scriptTag: ScriptCode ): ComponentResult; external name '_GraphicsImportSaveAsPicture';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetGraphicsMode()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetGraphicsMode( ci: GraphicsImportComponent; graphicsMode: SIGNEDLONG; const (*var*) opColor: RGBColor ): ComponentResult; external name '_GraphicsImportSetGraphicsMode';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetGraphicsMode()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetGraphicsMode( ci: GraphicsImportComponent; var graphicsMode: SIGNEDLONG; var opColor: RGBColor ): ComponentResult; external name '_GraphicsImportGetGraphicsMode';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetQuality()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetQuality( ci: GraphicsImportComponent; quality: CodecQ ): ComponentResult; external name '_GraphicsImportSetQuality';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetQuality()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetQuality( ci: GraphicsImportComponent; var quality: CodecQ ): ComponentResult; external name '_GraphicsImportGetQuality';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSaveAsQuickTimeImageFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSaveAsQuickTimeImageFile( ci: GraphicsImportComponent; const (*var*) fss: FSSpec; scriptTag: ScriptCode ): ComponentResult; external name '_GraphicsImportSaveAsQuickTimeImageFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetDataReferenceOffsetAndLimit()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetDataReferenceOffsetAndLimit( ci: GraphicsImportComponent; offset: UNSIGNEDLONG; limit: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsImportSetDataReferenceOffsetAndLimit';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDataReferenceOffsetAndLimit()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetDataReferenceOffsetAndLimit( ci: GraphicsImportComponent; var offset: UNSIGNEDLONG; var limit: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsImportGetDataReferenceOffsetAndLimit';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetAliasedDataReference()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetAliasedDataReference( ci: GraphicsImportComponent; var dataRef: Handle; var dataRefType: OSType ): ComponentResult; external name '_GraphicsImportGetAliasedDataReference';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportValidate()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportValidate( ci: GraphicsImportComponent; var valid: Boolean ): ComponentResult; external name '_GraphicsImportValidate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetMetaData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetMetaData( ci: GraphicsImportComponent; userData: UnivPtr ): ComponentResult; external name '_GraphicsImportGetMetaData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetMIMETypeList()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetMIMETypeList( ci: GraphicsImportComponent; qtAtomContainerPtr: UnivPtr ): ComponentResult; external name '_GraphicsImportGetMIMETypeList';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportDoesDrawAllPixels()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportDoesDrawAllPixels( ci: GraphicsImportComponent; var drawsAllPixels: SInt16 ): ComponentResult; external name '_GraphicsImportDoesDrawAllPixels';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetAsPicture()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetAsPicture( ci: GraphicsImportComponent; var picture: PicHandle ): ComponentResult; external name '_GraphicsImportGetAsPicture';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportExportImageFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportExportImageFile( ci: GraphicsImportComponent; fileType: OSType; fileCreator: OSType; const (*var*) fss: FSSpec; scriptTag: ScriptCode ): ComponentResult; external name '_GraphicsImportExportImageFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetExportImageTypeList()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetExportImageTypeList( ci: GraphicsImportComponent; qtAtomContainerPtr: UnivPtr ): ComponentResult; external name '_GraphicsImportGetExportImageTypeList';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportDoExportImageFileDialog()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportDoExportImageFileDialog( ci: GraphicsImportComponent; const (*var*) inDefaultSpec: FSSpec; prompt: StringPtr; filterProc: ModalFilterYDUPP; var outExportedType: OSType; var outExportedSpec: FSSpec; var outScriptTag: ScriptCode ): ComponentResult; external name '_GraphicsImportDoExportImageFileDialog';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetExportSettingsAsAtomContainer()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetExportSettingsAsAtomContainer( ci: GraphicsImportComponent; qtAtomContainerPtr: UnivPtr ): ComponentResult; external name '_GraphicsImportGetExportSettingsAsAtomContainer';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetExportSettingsFromAtomContainer()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetExportSettingsFromAtomContainer( ci: GraphicsImportComponent; qtAtomContainer: UnivPtr ): ComponentResult; external name '_GraphicsImportSetExportSettingsFromAtomContainer';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetProgressProc()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportSetProgressProc( ci: GraphicsImportComponent; progressProc: ICMProgressProcRecordPtr ): ComponentResult; external name '_GraphicsImportSetProgressProc';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetProgressProc()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 3.0 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function GraphicsImportGetProgressProc( ci: GraphicsImportComponent; progressProc: ICMProgressProcRecordPtr ): ComponentResult; external name '_GraphicsImportGetProgressProc';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetImageCount()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetImageCount( ci: GraphicsImportComponent; var imageCount: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsImportGetImageCount';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetImageIndex()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportSetImageIndex( ci: GraphicsImportComponent; imageIndex: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsImportSetImageIndex';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetImageIndex()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetImageIndex( ci: GraphicsImportComponent; var imageIndex: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsImportGetImageIndex';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDataOffsetAndSize64()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetDataOffsetAndSize64( ci: GraphicsImportComponent; var offset: wide; var size: wide ): ComponentResult; external name '_GraphicsImportGetDataOffsetAndSize64';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportReadData64()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportReadData64( ci: GraphicsImportComponent; dataPtr: UnivPtr; const (*var*) dataOffset: wide; dataSize: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsImportReadData64';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetDataReferenceOffsetAndLimit64()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportSetDataReferenceOffsetAndLimit64( ci: GraphicsImportComponent; const (*var*) offset: wide; const (*var*) limit: wide ): ComponentResult; external name '_GraphicsImportSetDataReferenceOffsetAndLimit64';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDataReferenceOffsetAndLimit64()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetDataReferenceOffsetAndLimit64( ci: GraphicsImportComponent; var offset: wide; var limit: wide ): ComponentResult; external name '_GraphicsImportGetDataReferenceOffsetAndLimit64';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDefaultMatrix()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetDefaultMatrix( ci: GraphicsImportComponent; var defaultMatrix: MatrixRecord ): ComponentResult; external name '_GraphicsImportGetDefaultMatrix';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDefaultClip()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetDefaultClip( ci: GraphicsImportComponent; var defaultRgn: RgnHandle ): ComponentResult; external name '_GraphicsImportGetDefaultClip';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDefaultGraphicsMode()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetDefaultGraphicsMode( ci: GraphicsImportComponent; var defaultGraphicsMode: SIGNEDLONG; var defaultOpColor: RGBColor ): ComponentResult; external name '_GraphicsImportGetDefaultGraphicsMode';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDefaultSourceRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetDefaultSourceRect( ci: GraphicsImportComponent; var defaultSourceRect: Rect ): ComponentResult; external name '_GraphicsImportGetDefaultSourceRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetColorSyncProfile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetColorSyncProfile( ci: GraphicsImportComponent; var profile: Handle ): ComponentResult; external name '_GraphicsImportGetColorSyncProfile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetDestRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportSetDestRect( ci: GraphicsImportComponent; const (*var*) destRect: Rect ): ComponentResult; external name '_GraphicsImportSetDestRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetDestRect()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetDestRect( ci: GraphicsImportComponent; var destRect: Rect ): ComponentResult; external name '_GraphicsImportGetDestRect';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportSetFlags()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportSetFlags( ci: GraphicsImportComponent; flags: SIGNEDLONG ): ComponentResult; external name '_GraphicsImportSetFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsImportGetFlags()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsImportGetFlags( ci: GraphicsImportComponent; var flags: SIGNEDLONG ): ComponentResult; external name '_GraphicsImportGetFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { 2 private selectors }
- {
- * GraphicsImportGetBaseDataOffsetAndSize64()
- *
- * Availability:
- * Mac OS X: in version 10.1 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.4 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0.2 and later
- * Windows: in qtmlClient.lib 5.0.2 and later
- }
- function GraphicsImportGetBaseDataOffsetAndSize64( ci: GraphicsImportComponent; var offset: wide; var size: wide ): ComponentResult; external name '_GraphicsImportGetBaseDataOffsetAndSize64';
- (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
- {
- * GraphicsImportSetImageIndexToThumbnail()
- *
- * Availability:
- * Mac OS X: in version 10.2 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.6 and later
- * Non-Carbon CFM: in QuickTimeLib 6.0 and later
- * Windows: in qtmlClient.lib 6.0 and later
- }
- function GraphicsImportSetImageIndexToThumbnail( ci: GraphicsImportComponent ): ComponentResult; external name '_GraphicsImportSetImageIndexToThumbnail';
- (* AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER *)
- {$ifc TARGET_API_MAC_OSX}
- {
- * GraphicsImportCreateCGImage()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsImportCreateCGImage( ci: GraphicsImportComponent; var imageRefOut: CGImageRef; flags: UInt32 ): ComponentResult; external name '_GraphicsImportCreateCGImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {$endc} {TARGET_API_MAC_OSX}
- {
- * GraphicsImportSaveAsPictureToDataRef()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib 6.5 and later
- }
- function GraphicsImportSaveAsPictureToDataRef( ci: GraphicsImportComponent; dataRef: Handle; dataRefType: OSType ): ComponentResult; external name '_GraphicsImportSaveAsPictureToDataRef';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * GraphicsImportSaveAsQuickTimeImageFileToDataRef()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib 6.5 and later
- }
- function GraphicsImportSaveAsQuickTimeImageFileToDataRef( ci: GraphicsImportComponent; dataRef: Handle; dataRefType: OSType ): ComponentResult; external name '_GraphicsImportSaveAsQuickTimeImageFileToDataRef';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * GraphicsImportExportImageFileToDataRef()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib 6.5 and later
- }
- function GraphicsImportExportImageFileToDataRef( ci: GraphicsImportComponent; fileType: OSType; fileCreator: OSType; dataRef: Handle; dataRefType: OSType ): ComponentResult; external name '_GraphicsImportExportImageFileToDataRef';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * GraphicsImportDoExportImageFileToDataRefDialog()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib 6.5 and later
- }
- function GraphicsImportDoExportImageFileToDataRefDialog( ci: GraphicsImportComponent; inDataRef: Handle; inDataRefType: OSType; prompt: CFStringRef; filterProc: ModalFilterYDUPP; var outExportedType: OSType; var outDataRef: Handle; var outDataRefType: OSType ): ComponentResult; external name '_GraphicsImportDoExportImageFileToDataRefDialog';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {$ifc TARGET_API_MAC_OSX}
- { NOTE: If the source override ColorSync profile is NULL, then the image's ColorSync profile may be used if available, otherwise a generic ColorSync profile may be used. }
- {
- * GraphicsImportSetOverrideSourceColorSyncProfileRef()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsImportSetOverrideSourceColorSyncProfileRef( ci: GraphicsImportComponent; newOverrideSourceProfileRef: CMProfileRef ): ComponentResult; external name '_GraphicsImportSetOverrideSourceColorSyncProfileRef';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * GraphicsImportGetOverrideSourceColorSyncProfileRef()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsImportGetOverrideSourceColorSyncProfileRef( ci: GraphicsImportComponent; var outOverrideSourceProfileRef: CMProfileRef ): ComponentResult; external name '_GraphicsImportGetOverrideSourceColorSyncProfileRef';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- { NOTE: If the destination ColorSync profile is NULL, then a generic ColorSync profile may be used. }
- {
- * GraphicsImportSetDestinationColorSyncProfileRef()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsImportSetDestinationColorSyncProfileRef( ci: GraphicsImportComponent; newDestinationProfileRef: CMProfileRef ): ComponentResult; external name '_GraphicsImportSetDestinationColorSyncProfileRef';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * GraphicsImportGetDestinationColorSyncProfileRef()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsImportGetDestinationColorSyncProfileRef( ci: GraphicsImportComponent; var destinationProfileRef: CMProfileRef ): ComponentResult; external name '_GraphicsImportGetDestinationColorSyncProfileRef';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {$endc} {TARGET_API_MAC_OSX}
- {
- * GraphicsImportWillUseColorMatching()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib 6.5 and later
- }
- function GraphicsImportWillUseColorMatching( ci: GraphicsImportComponent; var outWillMatch: Boolean ): ComponentResult; external name '_GraphicsImportWillUseColorMatching';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {$ifc TARGET_API_MAC_OSX}
- { This convenience API is implemented by the base graphics importer for format-specific importers. }
- {
- * GraphicsImportGetGenericColorSyncProfile()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsImportGetGenericColorSyncProfile( ci: GraphicsImportComponent; pixelFormat: OSType; reservedSetToNULL: UnivPtr; flags: UInt32; var genericColorSyncProfileOut: Handle ): ComponentResult; external name '_GraphicsImportGetGenericColorSyncProfile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {$endc} {TARGET_API_MAC_OSX}
- { Format-specific importers that implement GetColorSyncProfile and that want the base graphics
- importer to automatically support ColorSync matching should:
- (a) implement GraphicsImportSetReturnGenericColorSyncProfile; when it is called, set an internal flag
- (b) change GraphicsImportGetColorSyncProfile so that, if this internal flag is set,
- when the source image file contains a profile
- and the kGraphicsImporterDontUseColorMatching flag is NOT set,
- it returns a generic profile of the appropriate colorspace instead.
- Other importers should *not* implement GraphicsImportSetReturnGenericColorSyncProfile. }
- { WARNING: Applications should not call this API; it is internal graphics importer plumbing.
- Set kGraphicsImporterDontUseColorMatching instead. }
- {
- * GraphicsImportSetReturnGenericColorSyncProfile()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib 6.5 and later
- }
- function GraphicsImportSetReturnGenericColorSyncProfile( ci: GraphicsImportComponent; returnGenericProfilesUnlessDontMatchFlagSet: Boolean ): ComponentResult; external name '_GraphicsImportSetReturnGenericColorSyncProfile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- { WARNING: Applications should not call this API; it is internal graphics importer plumbing. }
- {
- * GraphicsImportGetReturnGenericColorSyncProfile()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- * Windows: in qtmlClient.lib 6.5 and later
- }
- function GraphicsImportGetReturnGenericColorSyncProfile( ci: GraphicsImportComponent; var returnGenericProfilesUnlessDontMatchFlagSet: Boolean ): ComponentResult; external name '_GraphicsImportGetReturnGenericColorSyncProfile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- type
- GraphicsExportComponent = ComponentInstance;
- const
- GraphicsExporterComponentType = FourCharCode('grex');
- kBaseGraphicsExporterSubType = FourCharCode('base');
- { Component flags for Graphics Exporter components }
- const
- graphicsExporterIsBaseExporter = 1 shl 0;
- graphicsExporterCanTranscode = 1 shl 1;
- graphicsExporterUsesImageCompressor = 1 shl 2;
- type
- QTResolutionSettingsPtr = ^QTResolutionSettings;
- QTResolutionSettings = record
- horizontalResolution: Fixed;
- verticalResolution: Fixed;
- end;
- type
- QTTargetDataSizePtr = ^QTTargetDataSize;
- QTTargetDataSize = record
- targetDataSize: UNSIGNEDLONG;
- end;
- type
- QTThumbnailSettingsPtr = ^QTThumbnailSettings;
- QTThumbnailSettings = record
- enableThumbnail: SIGNEDLONG; { a thoroughly padded Boolean}
- maxThumbnailWidth: SIGNEDLONG; { set to zero to let someone else decide}
- maxThumbnailHeight: SIGNEDLONG; { set to zero to let someone else decide}
- end;
- const
- kQTResolutionSettings = FourCharCode('reso');
- kQTTargetDataSize = FourCharCode('dasz');
- kQTDontRecompress = FourCharCode('dntr');
- kQTInterlaceStyle = FourCharCode('ilac');
- kQTColorSyncProfile = FourCharCode('iccp');
- kQTThumbnailSettings = FourCharCode('thum');
- kQTEnableExif = FourCharCode('exif'); { UInt8 (boolean)}
- kQTMetaData = FourCharCode('meta');
- const
- kQTTIFFCompressionMethod = FourCharCode('tifc'); { UInt32}
- kQTTIFFCompression_None = 1;
- kQTTIFFCompression_PackBits = 32773;
- kQTTIFFLittleEndian = FourCharCode('tife'); { UInt8 (boolean)}
- const
- kQTPNGFilterPreference = FourCharCode('pngf'); { UInt32}
- kQTPNGFilterBestForColorType = FourCharCode('bflt');
- kQTPNGFilterNone = 0;
- kQTPNGFilterSub = 1;
- kQTPNGFilterUp = 2;
- kQTPNGFilterAverage = 3;
- kQTPNGFilterPaeth = 4;
- kQTPNGFilterAdaptivePerRow = FourCharCode('aflt');
- kQTPNGInterlaceStyle = FourCharCode('ilac'); { UInt32}
- kQTPNGInterlaceNone = 0;
- kQTPNGInterlaceAdam7 = 1;
- const
- kQTJPEGQuantizationTables = FourCharCode('jpqt');
- kQTJPEGHuffmanTables = FourCharCode('jpht');
- {* These are GraphicsExport procedures *}
- { To use: set the input and output (and other settings as desired) and call GEDoExport. }
- {
- * GraphicsExportDoExport()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportDoExport( ci: GraphicsExportComponent; var actualSizeWritten: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportDoExport';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Used for internal communication between the base and format-specific graphics exporter: }
- {
- * GraphicsExportCanTranscode()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportCanTranscode( ci: GraphicsExportComponent; var canTranscode: Boolean ): ComponentResult; external name '_GraphicsExportCanTranscode';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportDoTranscode()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportDoTranscode( ci: GraphicsExportComponent ): ComponentResult; external name '_GraphicsExportDoTranscode';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportCanUseCompressor()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportCanUseCompressor( ci: GraphicsExportComponent; var canUseCompressor: Boolean; codecSettingsAtomContainerPtr: UnivPtr ): ComponentResult; external name '_GraphicsExportCanUseCompressor';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportDoUseCompressor()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportDoUseCompressor( ci: GraphicsExportComponent; codecSettingsAtomContainer: UnivPtr; var outDesc: ImageDescriptionHandle ): ComponentResult; external name '_GraphicsExportDoUseCompressor';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportDoStandaloneExport()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportDoStandaloneExport( ci: GraphicsExportComponent ): ComponentResult; external name '_GraphicsExportDoStandaloneExport';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Queries applications can make of a format-specific graphics exporter: }
- {
- * GraphicsExportGetDefaultFileTypeAndCreator()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetDefaultFileTypeAndCreator( ci: GraphicsExportComponent; var fileType: OSType; var fileCreator: OSType ): ComponentResult; external name '_GraphicsExportGetDefaultFileTypeAndCreator';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetDefaultFileNameExtension()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetDefaultFileNameExtension( ci: GraphicsExportComponent; var fileNameExtension: OSType ): ComponentResult; external name '_GraphicsExportGetDefaultFileNameExtension';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetMIMETypeList()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetMIMETypeList( ci: GraphicsExportComponent; qtAtomContainerPtr: UnivPtr ): ComponentResult; external name '_GraphicsExportGetMIMETypeList';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { (1 unused selector) }
- { Graphics exporter settings: }
- {
- * GraphicsExportRequestSettings()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportRequestSettings( ci: GraphicsExportComponent; filterProc: ModalFilterYDUPP; yourDataProc: UnivPtr ): ComponentResult; external name '_GraphicsExportRequestSettings';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetSettingsFromAtomContainer()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetSettingsFromAtomContainer( ci: GraphicsExportComponent; qtAtomContainer: UnivPtr ): ComponentResult; external name '_GraphicsExportSetSettingsFromAtomContainer';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetSettingsAsAtomContainer()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetSettingsAsAtomContainer( ci: GraphicsExportComponent; qtAtomContainerPtr: UnivPtr ): ComponentResult; external name '_GraphicsExportGetSettingsAsAtomContainer';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetSettingsAsText()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetSettingsAsText( ci: GraphicsExportComponent; var theText: Handle ): ComponentResult; external name '_GraphicsExportGetSettingsAsText';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Graphics exporters may implement some or none of the following: }
- {
- * GraphicsExportSetDontRecompress()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetDontRecompress( ci: GraphicsExportComponent; dontRecompress: Boolean ): ComponentResult; external name '_GraphicsExportSetDontRecompress';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetDontRecompress()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetDontRecompress( ci: GraphicsExportComponent; var dontRecompress: Boolean ): ComponentResult; external name '_GraphicsExportGetDontRecompress';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetInterlaceStyle()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInterlaceStyle( ci: GraphicsExportComponent; interlaceStyle: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportSetInterlaceStyle';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInterlaceStyle()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInterlaceStyle( ci: GraphicsExportComponent; var interlaceStyle: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetInterlaceStyle';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetMetaData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetMetaData( ci: GraphicsExportComponent; userData: UnivPtr ): ComponentResult; external name '_GraphicsExportSetMetaData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetMetaData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetMetaData( ci: GraphicsExportComponent; userData: UnivPtr ): ComponentResult; external name '_GraphicsExportGetMetaData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetTargetDataSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetTargetDataSize( ci: GraphicsExportComponent; targetDataSize: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportSetTargetDataSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetTargetDataSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetTargetDataSize( ci: GraphicsExportComponent; var targetDataSize: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetTargetDataSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetCompressionMethod()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetCompressionMethod( ci: GraphicsExportComponent; compressionMethod: SIGNEDLONG ): ComponentResult; external name '_GraphicsExportSetCompressionMethod';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetCompressionMethod()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetCompressionMethod( ci: GraphicsExportComponent; var compressionMethod: SIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetCompressionMethod';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetCompressionQuality()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetCompressionQuality( ci: GraphicsExportComponent; spatialQuality: CodecQ ): ComponentResult; external name '_GraphicsExportSetCompressionQuality';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetCompressionQuality()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetCompressionQuality( ci: GraphicsExportComponent; var spatialQuality: CodecQ ): ComponentResult; external name '_GraphicsExportGetCompressionQuality';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetResolution()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetResolution( ci: GraphicsExportComponent; horizontalResolution: Fixed; verticalResolution: Fixed ): ComponentResult; external name '_GraphicsExportSetResolution';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetResolution()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetResolution( ci: GraphicsExportComponent; var horizontalResolution: Fixed; var verticalResolution: Fixed ): ComponentResult; external name '_GraphicsExportGetResolution';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetDepth()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetDepth( ci: GraphicsExportComponent; depth: SIGNEDLONG ): ComponentResult; external name '_GraphicsExportSetDepth';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetDepth()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetDepth( ci: GraphicsExportComponent; var depth: SIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetDepth';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { (2 unused selectors) }
- {
- * GraphicsExportSetColorSyncProfile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetColorSyncProfile( ci: GraphicsExportComponent; colorSyncProfile: Handle ): ComponentResult; external name '_GraphicsExportSetColorSyncProfile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetColorSyncProfile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetColorSyncProfile( ci: GraphicsExportComponent; var colorSyncProfile: Handle ): ComponentResult; external name '_GraphicsExportGetColorSyncProfile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Always implemented by the base graphics exporter: }
- {
- * GraphicsExportSetProgressProc()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetProgressProc( ci: GraphicsExportComponent; progressProc: ICMProgressProcRecordPtr ): ComponentResult; external name '_GraphicsExportSetProgressProc';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetProgressProc()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetProgressProc( ci: GraphicsExportComponent; progressProc: ICMProgressProcRecordPtr ): ComponentResult; external name '_GraphicsExportGetProgressProc';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Sources for the input image: }
- {
- * GraphicsExportSetInputDataReference()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInputDataReference( ci: GraphicsExportComponent; dataRef: Handle; dataRefType: OSType; desc: ImageDescriptionHandle ): ComponentResult; external name '_GraphicsExportSetInputDataReference';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputDataReference()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputDataReference( ci: GraphicsExportComponent; var dataRef: Handle; var dataRefType: OSType ): ComponentResult; external name '_GraphicsExportGetInputDataReference';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetInputFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInputFile( ci: GraphicsExportComponent; const (*var*) theFile: FSSpec; desc: ImageDescriptionHandle ): ComponentResult; external name '_GraphicsExportSetInputFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputFile( ci: GraphicsExportComponent; var theFile: FSSpec ): ComponentResult; external name '_GraphicsExportGetInputFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetInputHandle()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInputHandle( ci: GraphicsExportComponent; h: Handle; desc: ImageDescriptionHandle ): ComponentResult; external name '_GraphicsExportSetInputHandle';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputHandle()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputHandle( ci: GraphicsExportComponent; var h: Handle ): ComponentResult; external name '_GraphicsExportGetInputHandle';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetInputPtr()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInputPtr( ci: GraphicsExportComponent; p: Ptr; size: UNSIGNEDLONG; desc: ImageDescriptionHandle ): ComponentResult; external name '_GraphicsExportSetInputPtr';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputPtr()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputPtr( ci: GraphicsExportComponent; var p: Ptr; var size: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetInputPtr';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetInputGraphicsImporter()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInputGraphicsImporter( ci: GraphicsExportComponent; grip: GraphicsImportComponent ): ComponentResult; external name '_GraphicsExportSetInputGraphicsImporter';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputGraphicsImporter()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputGraphicsImporter( ci: GraphicsExportComponent; var grip: GraphicsImportComponent ): ComponentResult; external name '_GraphicsExportGetInputGraphicsImporter';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetInputPicture()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInputPicture( ci: GraphicsExportComponent; picture: PicHandle ): ComponentResult; external name '_GraphicsExportSetInputPicture';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputPicture()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputPicture( ci: GraphicsExportComponent; var picture: PicHandle ): ComponentResult; external name '_GraphicsExportGetInputPicture';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetInputGWorld()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInputGWorld( ci: GraphicsExportComponent; gworld: GWorldPtr ): ComponentResult; external name '_GraphicsExportSetInputGWorld';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputGWorld()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputGWorld( ci: GraphicsExportComponent; var gworld: GWorldPtr ): ComponentResult; external name '_GraphicsExportGetInputGWorld';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetInputPixmap()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInputPixmap( ci: GraphicsExportComponent; pixmap: PixMapHandle ): ComponentResult; external name '_GraphicsExportSetInputPixmap';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputPixmap()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputPixmap( ci: GraphicsExportComponent; var pixmap: PixMapHandle ): ComponentResult; external name '_GraphicsExportGetInputPixmap';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Only applicable when the input is a data reference, file, handle or ptr: }
- {
- * GraphicsExportSetInputOffsetAndLimit()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetInputOffsetAndLimit( ci: GraphicsExportComponent; offset: UNSIGNEDLONG; limit: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportSetInputOffsetAndLimit';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputOffsetAndLimit()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputOffsetAndLimit( ci: GraphicsExportComponent; var offset: UNSIGNEDLONG; var limit: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetInputOffsetAndLimit';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Used by format-specific graphics exporters when transcoding: }
- {
- * GraphicsExportMayExporterReadInputData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportMayExporterReadInputData( ci: GraphicsExportComponent; var mayReadInputData: Boolean ): ComponentResult; external name '_GraphicsExportMayExporterReadInputData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputDataSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputDataSize( ci: GraphicsExportComponent; var size: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetInputDataSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportReadInputData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportReadInputData( ci: GraphicsExportComponent; dataPtr: UnivPtr; dataOffset: UNSIGNEDLONG; dataSize: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportReadInputData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Used by format-specific graphics exporters, especially when doing standalone export: }
- {
- * GraphicsExportGetInputImageDescription()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputImageDescription( ci: GraphicsExportComponent; var desc: ImageDescriptionHandle ): ComponentResult; external name '_GraphicsExportGetInputImageDescription';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputImageDimensions()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputImageDimensions( ci: GraphicsExportComponent; var dimensions: Rect ): ComponentResult; external name '_GraphicsExportGetInputImageDimensions';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetInputImageDepth()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetInputImageDepth( ci: GraphicsExportComponent; var inputDepth: SIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetInputImageDepth';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportDrawInputImage()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportDrawInputImage( ci: GraphicsExportComponent; gw: CGrafPtr; gd: GDHandle; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect ): ComponentResult; external name '_GraphicsExportDrawInputImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Destinations for the output image: }
- {
- * GraphicsExportSetOutputDataReference()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetOutputDataReference( ci: GraphicsExportComponent; dataRef: Handle; dataRefType: OSType ): ComponentResult; external name '_GraphicsExportSetOutputDataReference';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetOutputDataReference()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetOutputDataReference( ci: GraphicsExportComponent; var dataRef: Handle; var dataRefType: OSType ): ComponentResult; external name '_GraphicsExportGetOutputDataReference';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetOutputFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetOutputFile( ci: GraphicsExportComponent; const (*var*) theFile: FSSpec ): ComponentResult; external name '_GraphicsExportSetOutputFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetOutputFile()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetOutputFile( ci: GraphicsExportComponent; var theFile: FSSpec ): ComponentResult; external name '_GraphicsExportGetOutputFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetOutputHandle()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetOutputHandle( ci: GraphicsExportComponent; h: Handle ): ComponentResult; external name '_GraphicsExportSetOutputHandle';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetOutputHandle()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetOutputHandle( ci: GraphicsExportComponent; var h: Handle ): ComponentResult; external name '_GraphicsExportGetOutputHandle';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetOutputOffsetAndMaxSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetOutputOffsetAndMaxSize( ci: GraphicsExportComponent; offset: UNSIGNEDLONG; maxSize: UNSIGNEDLONG; truncateFile: Boolean ): ComponentResult; external name '_GraphicsExportSetOutputOffsetAndMaxSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetOutputOffsetAndMaxSize()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetOutputOffsetAndMaxSize( ci: GraphicsExportComponent; var offset: UNSIGNEDLONG; var maxSize: UNSIGNEDLONG; var truncateFile: Boolean ): ComponentResult; external name '_GraphicsExportGetOutputOffsetAndMaxSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetOutputFileTypeAndCreator()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetOutputFileTypeAndCreator( ci: GraphicsExportComponent; fileType: OSType; fileCreator: OSType ): ComponentResult; external name '_GraphicsExportSetOutputFileTypeAndCreator';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetOutputFileTypeAndCreator()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetOutputFileTypeAndCreator( ci: GraphicsExportComponent; var fileType: OSType; var fileCreator: OSType ): ComponentResult; external name '_GraphicsExportGetOutputFileTypeAndCreator';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Used by format-specific graphics exporters: }
- {
- * GraphicsExportWriteOutputData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportWriteOutputData( ci: GraphicsExportComponent; dataPtr: {const} UnivPtr; dataSize: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportWriteOutputData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportSetOutputMark()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportSetOutputMark( ci: GraphicsExportComponent; mark: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportSetOutputMark';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportGetOutputMark()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportGetOutputMark( ci: GraphicsExportComponent; var mark: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetOutputMark';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * GraphicsExportReadOutputData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0.2 and later
- * Non-Carbon CFM: in QuickTimeLib 4.0 and later
- * Windows: in qtmlClient.lib 4.0 and later
- }
- function GraphicsExportReadOutputData( ci: GraphicsExportComponent; dataPtr: UnivPtr; dataOffset: UNSIGNEDLONG; dataSize: UNSIGNEDLONG ): ComponentResult; external name '_GraphicsExportReadOutputData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- { Allows embedded thumbnail creation, if supported. }
- {
- * GraphicsExportSetThumbnailEnabled()
- *
- * Availability:
- * Mac OS X: in version 10.1 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.4 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0.2 and later
- * Windows: in qtmlClient.lib 5.0.2 and later
- }
- function GraphicsExportSetThumbnailEnabled( ci: GraphicsExportComponent; enableThumbnail: Boolean; maxThumbnailWidth: SIGNEDLONG; maxThumbnailHeight: SIGNEDLONG ): ComponentResult; external name '_GraphicsExportSetThumbnailEnabled';
- (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
- {
- * GraphicsExportGetThumbnailEnabled()
- *
- * Availability:
- * Mac OS X: in version 10.1 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.4 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0.2 and later
- * Windows: in qtmlClient.lib 5.0.2 and later
- }
- function GraphicsExportGetThumbnailEnabled( ci: GraphicsExportComponent; var thumbnailEnabled: Boolean; var maxThumbnailWidth: SIGNEDLONG; var maxThumbnailHeight: SIGNEDLONG ): ComponentResult; external name '_GraphicsExportGetThumbnailEnabled';
- (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
- { Allows export of Exif files, if supported. This disables Exif-incompatible settings such as grayscale JPEG and compressed TIFF, and enables export of Exif metadata. }
- {
- * GraphicsExportSetExifEnabled()
- *
- * Availability:
- * Mac OS X: in version 10.1 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.4 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0.2 and later
- * Windows: in qtmlClient.lib 5.0.2 and later
- }
- function GraphicsExportSetExifEnabled( ci: GraphicsExportComponent; enableExif: Boolean ): ComponentResult; external name '_GraphicsExportSetExifEnabled';
- (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
- {
- * GraphicsExportGetExifEnabled()
- *
- * Availability:
- * Mac OS X: in version 10.1 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.4 and later
- * Non-Carbon CFM: in QuickTimeLib 5.0.2 and later
- * Windows: in qtmlClient.lib 5.0.2 and later
- }
- function GraphicsExportGetExifEnabled( ci: GraphicsExportComponent; var exifEnabled: Boolean ): ComponentResult; external name '_GraphicsExportGetExifEnabled';
- (* AVAILABLE_MAC_OS_X_VERSION_10_1_AND_LATER *)
- {$ifc TARGET_API_MAC_OSX}
- {
- * GraphicsExportSetInputCGImage()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsExportSetInputCGImage( ci: GraphicsExportComponent; imageRef: CGImageRef ): ComponentResult; external name '_GraphicsExportSetInputCGImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * GraphicsExportGetInputCGImage()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsExportGetInputCGImage( ci: GraphicsExportComponent; var imageRefOut: CGImageRef ): ComponentResult; external name '_GraphicsExportGetInputCGImage';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * GraphicsExportSetInputCGBitmapContext()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsExportSetInputCGBitmapContext( ci: GraphicsExportComponent; bitmapContextRef: CGContextRef ): ComponentResult; external name '_GraphicsExportSetInputCGBitmapContext';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * GraphicsExportGetInputCGBitmapContext()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsExportGetInputCGBitmapContext( ci: GraphicsExportComponent; var bitmapContextRefOut: CGContextRef ): ComponentResult; external name '_GraphicsExportGetInputCGBitmapContext';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {$endc} {TARGET_API_MAC_OSX}
- {
- * GraphicsExportSetFlags()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsExportSetFlags( ci: GraphicsExportComponent; flags: UInt32 ): ComponentResult; external name '_GraphicsExportSetFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * GraphicsExportGetFlags()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function GraphicsExportGetFlags( ci: GraphicsExportComponent; var flagsOut: UInt32 ): ComponentResult; external name '_GraphicsExportGetFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- type
- ImageTranscoderComponent = ComponentInstance;
- const
- ImageTranscodererComponentType = FourCharCode('imtc');
- {* These are ImageTranscoder procedures *}
- {
- * ImageTranscoderBeginSequence()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageTranscoderBeginSequence( itc: ImageTranscoderComponent; srcDesc: ImageDescriptionHandle; var dstDesc: ImageDescriptionHandle; data: UnivPtr; dataSize: SIGNEDLONG ): ComponentResult; external name '_ImageTranscoderBeginSequence';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageTranscoderConvert()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageTranscoderConvert( itc: ImageTranscoderComponent; srcData: UnivPtr; srcDataSize: SIGNEDLONG; var dstData: UnivPtr; var dstDataSize: SIGNEDLONG ): ComponentResult; external name '_ImageTranscoderConvert';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageTranscoderDisposeData()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageTranscoderDisposeData( itc: ImageTranscoderComponent; dstData: UnivPtr ): ComponentResult; external name '_ImageTranscoderDisposeData';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- {
- * ImageTranscoderEndSequence()
- *
- * Availability:
- * Mac OS X: in version 10.0 and later in QuickTime.framework
- * CarbonLib: in CarbonLib 1.0 and later
- * Non-Carbon CFM: in QuickTimeLib 2.5 and later
- * Windows: in qtmlClient.lib 3.0 and later
- }
- function ImageTranscoderEndSequence( itc: ImageTranscoderComponent ): ComponentResult; external name '_ImageTranscoderEndSequence';
- (* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
- //#if (MAC_OS_X_VERSION_MAX_ALLOWED == MAC_OS_X_VERSION_10_2) || //!defined(kComponentPropertyListenerCollectionContextVersion)
- { MixedMode ProcInfo constants for component property calls }
- const
- uppCallComponentGetComponentPropertyInfoProcInfo = $0003FFF0;
- uppCallComponentGetComponentPropertyProcInfo = $0003FFF0;
- uppCallComponentSetComponentPropertyProcInfo = $0000FFF0;
- uppCallComponentAddComponentPropertyListenerProcInfo = $0000FFF0;
- uppCallComponentRemoveComponentPropertyListenerProcInfo = $0000FFF0;
- { == CallComponentGetComponentPropertyInfo flags == }
- const
- kComponentPropertyFlagCanSetLater = 1 shl 0;
- kComponentPropertyFlagCanSetNow = 1 shl 1;
- kComponentPropertyFlagCanGetLater = 1 shl 2;
- kComponentPropertyFlagCanGetNow = 1 shl 3;
- kComponentPropertyFlagHasExtendedInfo = 1 shl 4;
- kComponentPropertyFlagValueMustBeReleased = 1 shl 5;
- kComponentPropertyFlagValueIsCFTypeRef = 1 shl 6;
- kComponentPropertyFlagGetBufferMustBeInitialized = 1 shl 7;
- kComponentPropertyFlagWillNotifyListeners = 1 shl 8;
- type
- ComponentPropertyClass = OSType;
- ComponentPropertyClassPtr = ^ComponentPropertyClass;
- ComponentPropertyID = OSType;
- ComponentPropertyIDPtr = ^ComponentPropertyID;
- ComponentValueType = OSType;
- ComponentValueTypePtr = ^ComponentValueType;
- ComponentValuePtr = UnivPtr;
- ComponentValuePtrPtr = ^ComponentValuePtr;
- ConstComponentValuePtr = {const} UnivPtr;
- ConstComponentValuePtrPtr = ^ConstComponentValuePtr;
- { == standard property class constants == }
- const
- kComponentPropertyClassPropertyInfo = FourCharCode('pnfo'); { property info class }
- { property info property IDs }
- kComponentPropertyInfoList = FourCharCode('list'); { array of ComponentPropertyInfo (CFData), one for each property }
- kComponentPropertyCacheSeed = FourCharCode('seed'); { property cache seed value }
- kComponentPropertyCacheFlags = FourCharCode('flgs'); { see kComponentPropertyCache flags }
- kComponentPropertyExtendedInfo = FourCharCode('meta'); { CFDictionary with extended property information}
- { values for kComponentPropertyClassPropertyInfo/kComponentPropertyCacheFlags standard component property }
- const
- kComponentPropertyCacheFlagNotPersistent = 1 shl 0; { property metadata should not be saved in persistent cache}
- kComponentPropertyCacheFlagIsDynamic = 1 shl 1; { property metadata should not cached at all}
- type
- ComponentPropertyInfoPtr = ^ComponentPropertyInfo;
- ComponentPropertyInfo = record
- propClass: ComponentPropertyClass;
- propID: ComponentPropertyID;
- propType: ComponentValueType;
- propSize: ByteCount;
- propFlags: UInt32;
- end;
- //#endif { #MAC_OS_X_VERSION_10_3 <= MAC_OS_X_VERSION_MAX_ALLOWED }
- { == "QT" prefixed Component Property calls == }
- type
- QTComponentPropertyListenerProcPtr = procedure( inComponent: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inUserData: UnivPtr );
- QTComponentPropertyListenerUPP = QTComponentPropertyListenerProcPtr;
- {
- * QTGetComponentPropertyInfo()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTGetComponentPropertyInfo( inComponent: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; outPropType: ComponentValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): ComponentResult; external name '_QTGetComponentPropertyInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTGetComponentProperty()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTGetComponentProperty( inComponent: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; outPropValueAddress: ComponentValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): ComponentResult; external name '_QTGetComponentProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTSetComponentProperty()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTSetComponentProperty( inComponent: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstComponentValuePtr ): ComponentResult; external name '_QTSetComponentProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTAddComponentPropertyListener()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTAddComponentPropertyListener( inComponent: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inDispatchProc: QTComponentPropertyListenerUPP; inUserData: UnivPtr { can be NULL } ): ComponentResult; external name '_QTAddComponentPropertyListener';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTRemoveComponentPropertyListener()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTRemoveComponentPropertyListener( inComponent: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inDispatchProc: QTComponentPropertyListenerUPP; inUserData: UnivPtr { can be NULL } ): ComponentResult; external name '_QTRemoveComponentPropertyListener';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- { == "QT" prefixed Component Property Listener helpers == }
- type
- QTComponentPropertyListenerCollectionContextPtr = ^QTComponentPropertyListenerCollectionContext;
- QTComponentPropertyListenersRef = CFTypeRef;
- QTComponentPropertyListenerFilterProcPtr = function( inCollection: QTComponentPropertyListenersRef; inCollectionContext: QTComponentPropertyListenerCollectionContextPtr { ptr to avoid circular reference with QTComponentPropertyListenerCollectionContext}; inNotifier: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inListenerCallbackProc: QTComponentPropertyListenerUPP; inListenerProcRefCon: {const} UnivPtr; inFilterProcRefCon: {const} UnivPtr ): Boolean;
- QTComponentPropertyListenerFilterUPP = QTComponentPropertyListenerFilterProcPtr;
- QTComponentPropertyListenerCollectionContext = record
- version: UInt32; { struct version }
- filterProcUPP: QTComponentPropertyListenerFilterUPP;
- filterProcData: UnivPtr;
- end;
- const
- kQTComponentPropertyListenerCollectionContextVersion = 1;
- {
- * NewQTComponentPropertyListenerUPP()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: available as macro/inline
- }
- function NewQTComponentPropertyListenerUPP( userRoutine: QTComponentPropertyListenerProcPtr ): QTComponentPropertyListenerUPP; external name '_NewQTComponentPropertyListenerUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * NewQTComponentPropertyListenerFilterUPP()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: available as macro/inline
- }
- function NewQTComponentPropertyListenerFilterUPP( userRoutine: QTComponentPropertyListenerFilterProcPtr ): QTComponentPropertyListenerFilterUPP; external name '_NewQTComponentPropertyListenerFilterUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * DisposeQTComponentPropertyListenerUPP()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeQTComponentPropertyListenerUPP( userUPP: QTComponentPropertyListenerUPP ); external name '_DisposeQTComponentPropertyListenerUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * DisposeQTComponentPropertyListenerFilterUPP()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: available as macro/inline
- }
- procedure DisposeQTComponentPropertyListenerFilterUPP( userUPP: QTComponentPropertyListenerFilterUPP ); external name '_DisposeQTComponentPropertyListenerFilterUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * InvokeQTComponentPropertyListenerUPP()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: available as macro/inline
- }
- procedure InvokeQTComponentPropertyListenerUPP( inComponent: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inUserData: UnivPtr; userUPP: QTComponentPropertyListenerUPP ); external name '_InvokeQTComponentPropertyListenerUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * InvokeQTComponentPropertyListenerFilterUPP()
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: available as macro/inline
- }
- function InvokeQTComponentPropertyListenerFilterUPP( inCollection: QTComponentPropertyListenersRef; const (*var*) inCollectionContext: QTComponentPropertyListenerCollectionContext; inNotifier: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inListenerCallbackProc: QTComponentPropertyListenerUPP; inListenerProcRefCon: {const} UnivPtr; inFilterProcRefCon: {const} UnivPtr; userUPP: QTComponentPropertyListenerFilterUPP ): Boolean; external name '_InvokeQTComponentPropertyListenerFilterUPP';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTComponentPropertyListenerCollectionCreate()
- *
- * Summary:
- * Create a collection to use with the functions
- * ComponentPropertyListenerCollectionAddListener,
- * ComponentPropertyListenerCollectionRemoveListener,
- * ComponentPropertyListenerCollectionNotifyListeners,
- * ComponentPropertyListenerCollectionIsEmpty, and
- * ComponentPropertyListenerCollectionHasListenersForProperty.
- *
- * Parameters:
- *
- * outCollection:
- * Returns the new, empty, listener collection.
- *
- * inAllocator:
- * Allocator used to create the collection and it's contents.
- *
- * inContext:
- * The listener collection context. May be NULL. A copy of the
- * contents of the structure is made, so a pointer to a structure
- * on the stack can be passed.
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTComponentPropertyListenerCollectionCreate( inAllocator: CFAllocatorRef { can be NULL }; {const} inContext: QTComponentPropertyListenerCollectionContextPtr { can be NULL }; var outCollection: QTComponentPropertyListenersRef ): OSStatus; external name '_QTComponentPropertyListenerCollectionCreate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTComponentPropertyListenerCollectionAddListener()
- *
- * Summary:
- * Add a listener callback for the specified property class and ID
- * to a property listener collection.
- *
- * Parameters:
- *
- * inCollection:
- * The property listener collection.
- *
- * inPropClass:
- * The property class.
- *
- * inPropID:
- * The property ID.
- *
- * inListenerProc:
- * The property listener callback function.
- *
- * inListenerProcRefCon:
- * The data parameter to pass to the listener callback function.
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTComponentPropertyListenerCollectionAddListener( inCollection: QTComponentPropertyListenersRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inListenerProc: QTComponentPropertyListenerUPP; inListenerProcRefCon: {const} UnivPtr ): OSStatus; external name '_QTComponentPropertyListenerCollectionAddListener';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTComponentPropertyListenerCollectionRemoveListener()
- *
- * Summary:
- * Remove a listener callback for the specified property class and
- * ID from a property listener collection.
- *
- * Parameters:
- *
- * inCollection:
- * The property listener collection.
- *
- * inPropClass:
- * The property class.
- *
- * inPropID:
- * The property ID.
- *
- * inListenerProc:
- * The property listener callback function.
- *
- * inListenerProcRefCon:
- * The data parameter to pass to the listener callback function.
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTComponentPropertyListenerCollectionRemoveListener( inCollection: QTComponentPropertyListenersRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inListenerProc: QTComponentPropertyListenerUPP; inListenerProcRefCon: {const} UnivPtr ): OSStatus; external name '_QTComponentPropertyListenerCollectionRemoveListener';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTComponentPropertyListenerCollectionNotifyListeners()
- *
- * Summary:
- * Call all listener callbacks in the collection registered for the
- * specified property class and ID.
- *
- * Discussion:
- * If the "filterProcUPP" in the collection's context is non-NULL,
- * the filter function will be called before each registered
- * listener that matches the specified property class and ID. If the
- * filter function return false, the listener proc will not be
- * called. This is intended to allow a component to change the
- * calling semantics (call another thread, etc), to use a different
- * listener callback signature, etc.
- *
- * Parameters:
- *
- * inCollection:
- * The property listener collection.
- *
- * inNotifier:
- * The calling ComponentInstance.
- *
- * inPropClass:
- * The property class.
- *
- * inPropID:
- * The property ID.
- *
- * inFilterProcRefCon:
- * The data parameter to pass to the filter function.
- *
- * inFlags:
- * Flags. Must be set to 0.
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTComponentPropertyListenerCollectionNotifyListeners( inCollection: QTComponentPropertyListenersRef; inNotifier: ComponentInstance; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inFilterProcRefCon: {const} UnivPtr { can be NULL }; inFlags: UInt32 ): OSStatus; external name '_QTComponentPropertyListenerCollectionNotifyListeners';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTComponentPropertyListenerCollectionIsEmpty()
- *
- * Summary:
- * Return true if the listener collection is empty.
- *
- * Parameters:
- *
- * inCollection:
- * The property listener collection.
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTComponentPropertyListenerCollectionIsEmpty( inCollection: QTComponentPropertyListenersRef ): Boolean; external name '_QTComponentPropertyListenerCollectionIsEmpty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- {
- * QTComponentPropertyListenerCollectionHasListenersForProperty()
- *
- * Summary:
- * Returns true if there are any listeners registered for the
- * specified property class and ID.
- *
- * Parameters:
- *
- * inCollection:
- * The property listener collection.
- *
- * inPropClass:
- * The property class.
- *
- * inPropID:
- * The property ID.
- *
- * Availability:
- * Mac OS X: in version 10.3 (or QuickTime 6.4) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTComponentPropertyListenerCollectionHasListenersForProperty( inCollection: QTComponentPropertyListenersRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID ): Boolean; external name '_QTComponentPropertyListenerCollectionHasListenersForProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *)
- { DRM properties}
- const
- kQTPropertyClass_DRM = FourCharCode('drm ');
- const
- kQTDRMPropertyID_InteractWithUser = FourCharCode('shui'); { Boolean*}
- kQTDRMPropertyID_IsProtected = FourCharCode('prot'); { Boolean*}
- kQTDRMPropertyID_IsAuthorized = FourCharCode('auth'); { Boolean*}
- { UPP call backs }
- { selectors for component calls }
- const
- kGraphicsImportSetDataReferenceSelect = $0001;
- kGraphicsImportGetDataReferenceSelect = $0002;
- kGraphicsImportSetDataFileSelect = $0003;
- kGraphicsImportGetDataFileSelect = $0004;
- kGraphicsImportSetDataHandleSelect = $0005;
- kGraphicsImportGetDataHandleSelect = $0006;
- kGraphicsImportGetImageDescriptionSelect = $0007;
- kGraphicsImportGetDataOffsetAndSizeSelect = $0008;
- kGraphicsImportReadDataSelect = $0009;
- kGraphicsImportSetClipSelect = $000A;
- kGraphicsImportGetClipSelect = $000B;
- kGraphicsImportSetSourceRectSelect = $000C;
- kGraphicsImportGetSourceRectSelect = $000D;
- kGraphicsImportGetNaturalBoundsSelect = $000E;
- kGraphicsImportDrawSelect = $000F;
- kGraphicsImportSetGWorldSelect = $0010;
- kGraphicsImportGetGWorldSelect = $0011;
- kGraphicsImportSetMatrixSelect = $0012;
- kGraphicsImportGetMatrixSelect = $0013;
- kGraphicsImportSetBoundsRectSelect = $0014;
- kGraphicsImportGetBoundsRectSelect = $0015;
- kGraphicsImportSaveAsPictureSelect = $0016;
- kGraphicsImportSetGraphicsModeSelect = $0017;
- kGraphicsImportGetGraphicsModeSelect = $0018;
- kGraphicsImportSetQualitySelect = $0019;
- kGraphicsImportGetQualitySelect = $001A;
- kGraphicsImportSaveAsQuickTimeImageFileSelect = $001B;
- kGraphicsImportSetDataReferenceOffsetAndLimitSelect = $001C;
- kGraphicsImportGetDataReferenceOffsetAndLimitSelect = $001D;
- kGraphicsImportGetAliasedDataReferenceSelect = $001E;
- kGraphicsImportValidateSelect = $001F;
- kGraphicsImportGetMetaDataSelect = $0020;
- kGraphicsImportGetMIMETypeListSelect = $0021;
- kGraphicsImportDoesDrawAllPixelsSelect = $0022;
- kGraphicsImportGetAsPictureSelect = $0023;
- kGraphicsImportExportImageFileSelect = $0024;
- kGraphicsImportGetExportImageTypeListSelect = $0025;
- kGraphicsImportDoExportImageFileDialogSelect = $0026;
- kGraphicsImportGetExportSettingsAsAtomContainerSelect = $0027;
- kGraphicsImportSetExportSettingsFromAtomContainerSelect = $0028;
- kGraphicsImportSetProgressProcSelect = $0029;
- kGraphicsImportGetProgressProcSelect = $002A;
- kGraphicsImportGetImageCountSelect = $002B;
- kGraphicsImportSetImageIndexSelect = $002C;
- kGraphicsImportGetImageIndexSelect = $002D;
- kGraphicsImportGetDataOffsetAndSize64Select = $002E;
- kGraphicsImportReadData64Select = $002F;
- kGraphicsImportSetDataReferenceOffsetAndLimit64Select = $0030;
- kGraphicsImportGetDataReferenceOffsetAndLimit64Select = $0031;
- kGraphicsImportGetDefaultMatrixSelect = $0032;
- kGraphicsImportGetDefaultClipSelect = $0033;
- kGraphicsImportGetDefaultGraphicsModeSelect = $0034;
- kGraphicsImportGetDefaultSourceRectSelect = $0035;
- kGraphicsImportGetColorSyncProfileSelect = $0036;
- kGraphicsImportSetDestRectSelect = $0037;
- kGraphicsImportGetDestRectSelect = $0038;
- kGraphicsImportSetFlagsSelect = $0039;
- kGraphicsImportGetFlagsSelect = $003A;
- kGraphicsImportGetBaseDataOffsetAndSize64Select = $003D;
- kGraphicsImportSetImageIndexToThumbnailSelect = $003E;
- kGraphicsImportCreateCGImageSelect = $003F;
- kGraphicsImportSaveAsPictureToDataRefSelect = $0040;
- kGraphicsImportSaveAsQuickTimeImageFileToDataRefSelect = $0041;
- kGraphicsImportExportImageFileToDataRefSelect = $0042;
- kGraphicsImportDoExportImageFileToDataRefDialogSelect = $0043;
- kGraphicsImportSetOverrideSourceColorSyncProfileRefSelect = $0044;
- kGraphicsImportGetOverrideSourceColorSyncProfileRefSelect = $0045;
- kGraphicsImportSetDestinationColorSyncProfileRefSelect = $0046;
- kGraphicsImportGetDestinationColorSyncProfileRefSelect = $0047;
- kGraphicsImportWillUseColorMatchingSelect = $0048;
- kGraphicsImportGetGenericColorSyncProfileSelect = $0049;
- kGraphicsImportSetReturnGenericColorSyncProfileSelect = $004A;
- kGraphicsImportGetReturnGenericColorSyncProfileSelect = $004B;
- kGraphicsExportDoExportSelect = $0001;
- kGraphicsExportCanTranscodeSelect = $0002;
- kGraphicsExportDoTranscodeSelect = $0003;
- kGraphicsExportCanUseCompressorSelect = $0004;
- kGraphicsExportDoUseCompressorSelect = $0005;
- kGraphicsExportDoStandaloneExportSelect = $0006;
- kGraphicsExportGetDefaultFileTypeAndCreatorSelect = $0007;
- kGraphicsExportGetDefaultFileNameExtensionSelect = $0008;
- kGraphicsExportGetMIMETypeListSelect = $0009;
- kGraphicsExportRequestSettingsSelect = $000B;
- kGraphicsExportSetSettingsFromAtomContainerSelect = $000C;
- kGraphicsExportGetSettingsAsAtomContainerSelect = $000D;
- kGraphicsExportGetSettingsAsTextSelect = $000E;
- kGraphicsExportSetDontRecompressSelect = $000F;
- kGraphicsExportGetDontRecompressSelect = $0010;
- kGraphicsExportSetInterlaceStyleSelect = $0011;
- kGraphicsExportGetInterlaceStyleSelect = $0012;
- kGraphicsExportSetMetaDataSelect = $0013;
- kGraphicsExportGetMetaDataSelect = $0014;
- kGraphicsExportSetTargetDataSizeSelect = $0015;
- kGraphicsExportGetTargetDataSizeSelect = $0016;
- kGraphicsExportSetCompressionMethodSelect = $0017;
- kGraphicsExportGetCompressionMethodSelect = $0018;
- kGraphicsExportSetCompressionQualitySelect = $0019;
- kGraphicsExportGetCompressionQualitySelect = $001A;
- kGraphicsExportSetResolutionSelect = $001B;
- kGraphicsExportGetResolutionSelect = $001C;
- kGraphicsExportSetDepthSelect = $001D;
- kGraphicsExportGetDepthSelect = $001E;
- kGraphicsExportSetColorSyncProfileSelect = $0021;
- kGraphicsExportGetColorSyncProfileSelect = $0022;
- kGraphicsExportSetProgressProcSelect = $0023;
- kGraphicsExportGetProgressProcSelect = $0024;
- kGraphicsExportSetInputDataReferenceSelect = $0025;
- kGraphicsExportGetInputDataReferenceSelect = $0026;
- kGraphicsExportSetInputFileSelect = $0027;
- kGraphicsExportGetInputFileSelect = $0028;
- kGraphicsExportSetInputHandleSelect = $0029;
- kGraphicsExportGetInputHandleSelect = $002A;
- kGraphicsExportSetInputPtrSelect = $002B;
- kGraphicsExportGetInputPtrSelect = $002C;
- kGraphicsExportSetInputGraphicsImporterSelect = $002D;
- kGraphicsExportGetInputGraphicsImporterSelect = $002E;
- kGraphicsExportSetInputPictureSelect = $002F;
- kGraphicsExportGetInputPictureSelect = $0030;
- kGraphicsExportSetInputGWorldSelect = $0031;
- kGraphicsExportGetInputGWorldSelect = $0032;
- kGraphicsExportSetInputPixmapSelect = $0033;
- kGraphicsExportGetInputPixmapSelect = $0034;
- kGraphicsExportSetInputOffsetAndLimitSelect = $0035;
- kGraphicsExportGetInputOffsetAndLimitSelect = $0036;
- kGraphicsExportMayExporterReadInputDataSelect = $0037;
- kGraphicsExportGetInputDataSizeSelect = $0038;
- kGraphicsExportReadInputDataSelect = $0039;
- kGraphicsExportGetInputImageDescriptionSelect = $003A;
- kGraphicsExportGetInputImageDimensionsSelect = $003B;
- kGraphicsExportGetInputImageDepthSelect = $003C;
- kGraphicsExportDrawInputImageSelect = $003D;
- kGraphicsExportSetOutputDataReferenceSelect = $003E;
- kGraphicsExportGetOutputDataReferenceSelect = $003F;
- kGraphicsExportSetOutputFileSelect = $0040;
- kGraphicsExportGetOutputFileSelect = $0041;
- kGraphicsExportSetOutputHandleSelect = $0042;
- kGraphicsExportGetOutputHandleSelect = $0043;
- kGraphicsExportSetOutputOffsetAndMaxSizeSelect = $0044;
- kGraphicsExportGetOutputOffsetAndMaxSizeSelect = $0045;
- kGraphicsExportSetOutputFileTypeAndCreatorSelect = $0046;
- kGraphicsExportGetOutputFileTypeAndCreatorSelect = $0047;
- kGraphicsExportWriteOutputDataSelect = $0048;
- kGraphicsExportSetOutputMarkSelect = $0049;
- kGraphicsExportGetOutputMarkSelect = $004A;
- kGraphicsExportReadOutputDataSelect = $004B;
- kGraphicsExportSetThumbnailEnabledSelect = $004C;
- kGraphicsExportGetThumbnailEnabledSelect = $004D;
- kGraphicsExportSetExifEnabledSelect = $004E;
- kGraphicsExportGetExifEnabledSelect = $004F;
- kGraphicsExportSetInputCGImageSelect = $0050;
- kGraphicsExportGetInputCGImageSelect = $0051;
- kGraphicsExportSetInputCGBitmapContextSelect = $0052;
- kGraphicsExportGetInputCGBitmapContextSelect = $0053;
- kGraphicsExportSetFlagsSelect = $0054;
- kGraphicsExportGetFlagsSelect = $0055;
- kImageTranscoderBeginSequenceSelect = $0001;
- kImageTranscoderConvertSelect = $0002;
- kImageTranscoderDisposeDataSelect = $0003;
- kImageTranscoderEndSequenceSelect = $0004;
- kQTGetComponentPropertyInfoSelect = -11;
- kQTGetComponentPropertySelect = -12;
- kQTSetComponentPropertySelect = -13;
- kQTAddComponentPropertyListenerSelect = -14;
- kQTRemoveComponentPropertyListenerSelect = -15;
- { Aperture modes }
- {
- * Summary:
- * Aperture modes
- *
- * Discussion:
- * You can set the aperture mode property on a movie to indicate
- * whether aspect ratio and clean aperture correction should be
- * performed (kQTPropertyClass_Visual /
- * kQTVisualPropertyID_ApertureMode). When a movie is in clean,
- * production or encoded pixels aperture mode, each track's
- * dimensions are overriden by special dimensions for that mode. The
- * original track dimensions are preserved and can be restored by
- * setting the movie into classic aperture mode. Aperture modes are
- * not saved in movies.
- * You can set the aperture mode property on a decompression session
- * options object to indicate whether pixel buffers should be tagged
- * to enable aspect ratio and clean aperture correction
- * (kQTPropertyClass_ICMDecompressionSessionOptions /
- * kICMDecompressionSessionOptionsPropertyID_ApertureMode).
- }
- const
- {
- * An aperture mode which gives compatibility with behavior in
- * QuickTime 7.0.x and earlier.
- * A movie in classic aperture mode uses track dimensions as set in
- * NewMovieTrack and SetTrackDimensions.
- * A decompression session in classic aperture mode does not set the
- * clean aperture or pixel aspect ratio attachments on emitted pixel
- * buffers.
- * Movies default to classic aperture mode. If you call
- * SetTrackDimensions on a track, the movie is automatically switched
- * into classic aperture mode.
- }
- kQTApertureMode_Classic = FourCharCode('clas');
- {
- * An aperture mode for general display.
- * Where possible, video will be displayed at the correct pixel
- * aspect ratio, trimmed to the clean aperture. A movie in clean
- * aperture mode sets each track's dimensions to match its
- * kQTVisualPropertyID_CleanApertureDimensions.
- * A decompression session in clean aperture mode sets the clean
- * aperture and pixel aspect ratio attachments on emitted pixel
- * buffers based on the image description.
- }
- kQTApertureMode_CleanAperture = FourCharCode('clea');
- {
- * An aperture mode for modal use in authoring applications.
- * Where possible, video will be displayed at the correct pixel
- * aspect ratio, but without trimming to the clean aperture so that
- * the edge processing region can be viewed. A movie in production
- * aperture mode sets each track's dimensions to match its
- * kQTVisualPropertyID_ProductionApertureDimensions.
- * A decompression session in production aperture mode sets the pixel
- * aspect ratio attachments on emitted pixel buffers based on the
- * image description.
- }
- kQTApertureMode_ProductionAperture = FourCharCode('prod');
- {
- * An aperture mode for technical use.
- * Displays all encoded pixels with no aspect ratio or clean aperture
- * compensation. A movie in encoded pixels aperture mode sets each
- * track's dimensions to match its
- * kQTVisualPropertyID_EncodedPixelsDimensions.
- * A decompression session in encoded pixels aperture mode does not
- * set the clean aperture or pixel aspect ratio attachments on
- * emitted pixel buffers.
- }
- kQTApertureMode_EncodedPixels = FourCharCode('enco');
- { Property interface for Image Descriptions }
- {
- * Summary:
- * Properties of image descriptions.
- }
- const
- {
- * Class identifier for image description properties.
- }
- kQTPropertyClass_ImageDescription = FourCharCode('idsc');
- {
- * The width of the encoded image. Usually, but not always, this is
- * the ImageDescription's width field.
- }
- kICMImageDescriptionPropertyID_EncodedWidth = FourCharCode('encw'); { SInt32, Read/Write }
- {
- * The height of the encoded image. Usually, but not always, this is
- * the ImageDescription's height field.
- }
- kICMImageDescriptionPropertyID_EncodedHeight = FourCharCode('ench'); { SInt32, Read/Write }
- {
- * Describes the clean aperture of the buffer. If not specified
- * explicitly in the image description, the default clean aperture
- * (full encoded width and height) will be returned.
- }
- kICMImageDescriptionPropertyID_CleanAperture = FourCharCode('clap'); { Native-endian CleanApertureImageDescriptionExtension, Read/Write }
- {
- * Describes the pixel aspect ratio. If not specified explicitly in
- * the image description, a square (1:1) pixel aspect ratio will be
- * returned.
- }
- kICMImageDescriptionPropertyID_PixelAspectRatio = FourCharCode('pasp'); { Native-endian PixelAspectRatioImageDescriptionExtension, Read/Write }
- {
- * Dimensions at which the image could be displayed on a square-pixel
- * display, generally calculated using the clean aperture and pixel
- * aspect ratio.
- * Note that this value is returned as a FixedPoint; the width and
- * height can also be read separately as rounded SInt32s via
- * kICMImageDescriptionPropertyID_CleanApertureDisplayWidth and
- * kICMImageDescriptionPropertyID_CleanApertureDisplayHeight.
- }
- kICMImageDescriptionPropertyID_CleanApertureDisplayDimensions = FourCharCode('cadi'); { FixedPoint, Read }
- {
- * Dimensions at which the image could be displayed on a square-pixel
- * display, disregarding any clean aperture but honoring the pixel
- * aspect ratio. This may be useful for authoring applications that
- * want to expose the edge processing region. For general viewing,
- * use kICMImageDescriptionPropertyID_CleanApertureDimensions
- * instead.
- * Note that this value is returned as a FixedPoint; the width and
- * height can also be read separately as rounded SInt32s via
- * kICMImageDescriptionPropertyID_ProductionApertureDisplayWidth and
- * kICMImageDescriptionPropertyID_ProductionApertureDisplayHeight.
- }
- kICMImageDescriptionPropertyID_ProductionApertureDisplayDimensions = FourCharCode('prdi'); { FixedPoint, Read }
- {
- * Dimensions of the encoded image.
- * Note that this value is returned as a FixedPoint for convenience;
- * the width and height can also be read separately as SInt32s via
- * kICMImageDescriptionPropertyID_EncodedWidth and
- * kICMImageDescriptionPropertyID_EncodedHeight.
- }
- kICMImageDescriptionPropertyID_EncodedPixelsDimensions = FourCharCode('endi'); { FixedPoint, Read }
- {
- * A width at which the image could be displayed on a square-pixel
- * display, possibly calculated using the clean aperture and pixel
- * aspect ratio.
- }
- kICMImageDescriptionPropertyID_CleanApertureDisplayWidth = FourCharCode('disw'); { SInt32, Read }
- {
- * A height at which the image could be displayed on a square-pixel
- * display, possibly calculated using the clean aperture and pixel
- * aspect ratio.
- }
- kICMImageDescriptionPropertyID_CleanApertureDisplayHeight = FourCharCode('dish'); { SInt32, Read }
- {
- * A width at which the image could be displayed on a square-pixel
- * display, disregarding any clean aperture but honoring the pixel
- * aspect ratio. This may be useful for authoring applications that
- * want to expose the edge processing region. For general viewing,
- * use kICMImageDescriptionPropertyID_CleanApertureDisplayWidth
- * instead.
- }
- kICMImageDescriptionPropertyID_ProductionApertureDisplayWidth = FourCharCode('pdsw'); { SInt32, Read }
- {
- * A height at which the image could be displayed on a square-pixel
- * display, disregarding any clean aperture but honoring the pixel
- * aspect ratio. This may be useful for authoring applications that
- * want to expose the edge processing region. For general viewing,
- * use kICMImageDescriptionPropertyID_CleanApertureDisplayHeight
- * instead.
- }
- kICMImageDescriptionPropertyID_ProductionApertureDisplayHeight = FourCharCode('pdsh'); { SInt32, Read }
- {
- * Synonym for
- * kICMImageDescriptionPropertyID_CleanApertureDisplayWidth.
- }
- kICMImageDescriptionPropertyID_DisplayWidth = FourCharCode('disw'); { SInt32, Read }
- {
- * Synonym for
- * kICMImageDescriptionPropertyID_CleanApertureDisplayHeight.
- }
- kICMImageDescriptionPropertyID_DisplayHeight = FourCharCode('dish'); { SInt32, Read }
- {
- * Synonym for
- * kICMImageDescriptionPropertyID_ProductionApertureDisplayWidth.
- }
- kICMImageDescriptionPropertyID_ProductionDisplayWidth = FourCharCode('pdsw'); { SInt32, Read }
- {
- * Synonym for
- * kICMImageDescriptionPropertyID_ProductionApertureDisplayHeight.
- }
- kICMImageDescriptionPropertyID_ProductionDisplayHeight = FourCharCode('pdsh'); { SInt32, Read }
- {
- * Color information, if available in the
- * NCLCColorInfoImageDescriptionExtension format.
- }
- kICMImageDescriptionPropertyID_NCLCColorInfo = FourCharCode('nclc'); { Native-endian NCLCColorInfoImageDescriptionExtension, Read/Write }
- {
- * A CGColorSpaceRef for the colorspace described by the image
- * description, constructed from video color info or ICC Profile.
- * IMPORTANT NOTE: The YCbCr matrix from the video color info is not
- * represented in the CGColorSpaceRef. The caller of GetProperty is
- * responsible for releasing this, eg, by calling
- * CGColorSpaceRelease. Only supported on Mac OS X.
- }
- kICMImageDescriptionPropertyID_CGColorSpace = FourCharCode('cgcs'); { CGColorSpaceRef, Read -- caller of GetProperty must call CGColorSpaceRelease }
- {
- * A CFDataRef containing the serialized ICC profile described by the
- * image description. The caller of GetProperty is responsible for
- * releasing this, eg, by calling CFRelease.
- }
- kICMImageDescriptionPropertyID_ICCProfile = FourCharCode('iccp'); { CFDataRef, Read/Write -- caller of GetProperty must call CFRelease }
- {
- * The gamma level described by the image description.
- }
- kICMImageDescriptionPropertyID_GammaLevel = FourCharCode('gama'); { Fixed, Read/Write }
- {
- * Information about the number and order of fields, if available.
- }
- kICMImageDescriptionPropertyID_FieldInfo = FourCharCode('fiel'); { FieldInfoImageDescriptionExtension2, Read/Write }
- {
- * The offset in bytes from the start of one row to the next. Only
- * valid if the codec type is a chunky pixel format.
- }
- kICMImageDescriptionPropertyID_RowBytes = FourCharCode('rowb'); { SInt32, Read/Write }
- {
- * A track width suitable for passing to NewMovieTrack when creating
- * a new track to hold this image data.
- }
- kICMImageDescriptionPropertyID_ClassicTrackWidth = FourCharCode('claw'); { Fixed, Read }
- {
- * A track height suitable for passing to NewMovieTrack when creating
- * a new track to hold this image data.
- }
- kICMImageDescriptionPropertyID_ClassicTrackHeight = FourCharCode('clah'); { Fixed, Read }
- {
- * Defines a duration for quantizing time. This is applicable for
- * cases where a single media sample generates visual output that
- * varies continuously through its duration. By interpreting this
- * property, such a sample may be considered to have internal "step
- * points" at multiples of the stepping duration. This can be used to
- * throttle frame generation during playback, and when stepping using
- * InterestingTime APIs. Setting a step duration with value zero
- * removes any current step duration.
- }
- kICMImageDescriptionPropertyID_StepDuration = FourCharCode('step'); { TimeRecord (base ignored), Read/Write }
- {
- * The clean aperture as a FixedRect in source coordinates, within
- * the rectangle defined by the image description width and height,
- * suitable for use as a source rectangle in a decompression
- * sequence.
- * For historical reasons, the DVCPROHD codecs store the production
- * aperture display dimensions in the image description width and
- * height; the actual encoded dimensions are smaller. For DVCPROHD,
- * the clip rect will be relative to the image description width and
- * height, not the encoded dimensions.
- }
- kICMImageDescriptionPropertyID_CleanApertureClipRect = FourCharCode('cacr'); { FixedRect, Read }
- {
- * A matrix transforming the clean aperture clip rect to the origin,
- * scaled to the clean aperture display dimensions.
- * For historical reasons, the DVCPROHD codecs store the production
- * aperture display dimensions in the image description width and
- * height; the actual encoded dimensions are smaller. For DVCPROHD,
- * the matrix will be relative to the image description width and
- * height, not the encoded dimensions.
- }
- kICMImageDescriptionPropertyID_CleanApertureMatrix = FourCharCode('camx'); { MatrixRecord, Read }
- {
- * A matrix transforming the image to the origin, scaled to the
- * production aperture display dimensions.
- * For historical reasons, the DVCPROHD codecs store the production
- * aperture display dimensions in the image description width and
- * height; the actual encoded dimensions are smaller. For DVCPROHD,
- * the matrix will be relative to the image description width and
- * height, not the encoded dimensions.
- }
- kICMImageDescriptionPropertyID_ProductionApertureMatrix = FourCharCode('pamx'); { MatrixRecord, Read }
- {
- * A localized, human readable string summarizing the image as a
- * CFString, ie: "Apple DV, 720 x 480 (640 x 480), Millions".
- * The elements are: the codec name, the encoded pixels dimensions,
- * then parenthetically the clean aperture mode dimensions, but only
- * if they are different from the encoded pixels dimensions; then the
- * depth.
- * The codec name shall be from the localized decompressor component
- * name string if exactly one decompressor with the correct cType is
- * available; otherwise the string in the image description shall be
- * used. The caller of GetProperty is responsible for releasing this
- * CFString, eg, by calling CFRelease.
- }
- kICMImageDescriptionPropertyID_SummaryString = FourCharCode('isum'); { CFStringRef, Read - caller of GetProperty must call CFRelease}
- {
- * ICMImageDescriptionGetPropertyInfo()
- *
- * Summary:
- * Gets info about a particular property of a ImageDescription.
- *
- * Parameters:
- *
- * inDesc:
- * ImageDescriptionHandle being interrogated
- *
- * inPropClass:
- * The class of property being requested
- *
- * inPropID:
- * The ID of the property being requested
- *
- * outPropType:
- * The type of property is returned here (can be NULL)
- *
- * outPropValueSize:
- * The size of property is returned here (can be NULL)
- *
- * outPropertyFlags:
- * The property flags are returned here (can be NULL)
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMImageDescriptionGetPropertyInfo( inDesc: ImageDescriptionHandle; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; outPropType: ComponentValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): OSStatus; external name '_ICMImageDescriptionGetPropertyInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMImageDescriptionGetProperty()
- *
- * Summary:
- * Gets a particular property of a ImageDescriptionHandle.
- *
- * Parameters:
- *
- * inDesc:
- * ImageDescriptionHandle being interrogated
- *
- * inPropClass:
- * The class of property being requested
- *
- * inPropID:
- * The ID of the property being requested
- *
- * inPropValueSize:
- * The size of the property value buffer
- *
- * outPropValueAddress:
- * Points to the buffer to receive the property value
- *
- * outPropValueSizeUsed:
- * Points to a variable to receive the actual size of returned
- * property value (can be NULL)
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMImageDescriptionGetProperty( inDesc: ImageDescriptionHandle; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; outPropValueAddress: ComponentValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): OSStatus; external name '_ICMImageDescriptionGetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMImageDescriptionSetProperty()
- *
- * Summary:
- * Sets a particular property of a ImageDescriptionHandle.
- *
- * Parameters:
- *
- * inDesc:
- * ImageDescriptionHandle being modified
- *
- * inPropClass:
- * The class of property being set
- *
- * inPropID:
- * The ID of the property being set
- *
- * inPropValueSize:
- * The size of property value
- *
- * inPropValueAddress:
- * Points to the property value buffer
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMImageDescriptionSetProperty( inDesc: ImageDescriptionHandle; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstComponentValuePtr ): OSStatus; external name '_ICMImageDescriptionSetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMValidTimeFlags
- *
- * Summary:
- * Flags to describe which time values are valid.
- }
- type
- ICMValidTimeFlagsPtr = ^ICMValidTimeFlags;
- ICMValidTimeFlags = UInt32;
- const
- {
- * Indicates that a display time stamp is valid.
- }
- kICMValidTime_DisplayTimeStampIsValid = 1 shl 0;
- {
- * Indicates that a display duration is valid.
- }
- kICMValidTime_DisplayDurationIsValid = 1 shl 1;
- {
- * Indicates that a decode time stamp is valid.
- }
- kICMValidTime_DecodeTimeStampIsValid = 1 shl 2;
- {
- * Indicates that a decode duration is valid.
- }
- kICMValidTime_DecodeDurationIsValid = 1 shl 3;
- {
- * Indicates that a display offset (the offset from a decode time
- * stamp to a display time stamp) is valid.
- }
- kICMValidTime_DisplayOffsetIsValid = 1 shl 4;
- {
- * ICMDecompressionSessionRef
- *
- * Summary:
- * Represents a decompression session that emits CVPixelBufferRefs
- * containing frames, tagged with display times.
- *
- * Discussion:
- * ICMDecompressionSession does not support source extraction,
- * matrix transformations, graphics transfer modes, region-based
- * clipping or data-loading procedures. Note that the pixel buffers
- * may be output out of display order, provided that the client opts
- * in.
- }
- type
- ICMDecompressionSessionRef = ^OpaqueICMDecompressionSession; { an opaque type }
- OpaqueICMDecompressionSession = record end;
- {
- * QTVisualContextRef
- *
- * Summary:
- * Represents a destination visual rendering environment.
- *
- * Discussion:
- * The QTVisualContextRef type encapsulates a connection to a
- * generic visual destination. A single visual context object may
- * not be associated with more than one movie at a time.
- }
- type
- QTVisualContextRef = ^OpaqueQTVisualContext; { an opaque type }
- OpaqueQTVisualContext = record end;
- {
- * ICMDecompressionSessionOptionsRef
- *
- * Summary:
- * Holds options for a decompression session.
- }
- type
- ICMDecompressionSessionOptionsRef = ^OpaqueICMDecompressionSessionOptions; { an opaque type }
- OpaqueICMDecompressionSessionOptions = record end;
- {
- * ICMDecompressionFrameOptionsRef
- *
- * Summary:
- * Holds options for decompressing an individual frame.
- }
- type
- ICMDecompressionFrameOptionsRef = ^OpaqueICMDecompressionFrameOptions; { an opaque type }
- OpaqueICMDecompressionFrameOptions = record end;
- {
- * ICMDecompressionTrackingFlags
- *
- * Summary:
- * Describes changes in state of a frame queued with an ICM
- * decompression session.
- }
- type
- ICMDecompressionTrackingFlags = UInt32;
- const
- {
- * Indicates that this is the last call for this sourceFrameRefCon.
- }
- kICMDecompressionTracking_LastCall = 1 shl 0;
- {
- * Indicates that the session no longer needs the source data pointer.
- }
- kICMDecompressionTracking_ReleaseSourceData = 1 shl 1;
- {
- * Indicates that a frame is being emitted. The pixelBuffer parameter
- * contains the decompressed frame. If the decompression session is
- * targetting a visual context, the frame has not yet been sent to
- * the visual context but will be after the callback returns.
- }
- kICMDecompressionTracking_EmittingFrame = 1 shl 2;
- {
- * Indicates that this frame was decoded.
- }
- kICMDecompressionTracking_FrameDecoded = 1 shl 3;
- {
- * Indicates that the codec decided to drop this frame.
- }
- kICMDecompressionTracking_FrameDropped = 1 shl 4;
- {
- * Indicates that this frame will not be able to be displayed unless
- * it is queued for redecode (also known as FrameNotDisplayable).
- }
- kICMDecompressionTracking_FrameNeedsRequeueing = 1 shl 5;
- {
- * ICMDecompressionTrackingCallback
- *
- * Summary:
- * The callback through which a client of an ICM decompression
- * session receives decoded frames and information about decoding.
- *
- * Discussion:
- * The client may retain the emitted pixel buffers as long as it
- * needs; they will not be reused before the client releases them.
- *
- * Parameters:
- *
- * decompressionTrackingRefCon:
- * The callback's reference value, copied from the
- * decompressionTrackingRefCon field of the
- * ICMDecompressionTrackingCallbackRecord structure.
- *
- * result:
- * Indicates whether there was an error in decompression.
- *
- * decompressionTrackingFlags:
- * One or more flags describing the a frame's state transitions.
- *
- * pixelBuffer:
- * When the kICMDecompressionTracking_EmittingFrame flag is set in
- * decompressionTrackingFlags, a pixel buffer containing the
- * decompressed frame. Otherwise, NULL.
- *
- * displayTime:
- * If kICMValidTime_DisplayTimeStampIsValid is set in
- * validTimeFlags, the display time of the frame.
- *
- * displayDuration:
- * If kICMValidTime_DisplayDurationIsValid is set in
- * validTimeFlags, the display duration of the frame.
- *
- * validTimeFlags:
- * Indicates which of displayTime and displayDuration is valid.
- *
- * reserved:
- * Reserved for future use. Ignore the value of this parameter.
- *
- * sourceFrameRefCon:
- * The frame's reference value, copied from the sourceFrameRefCon
- * parameter to ICMDecompressionSessionDecodeFrame.
- }
- type
- ICMDecompressionTrackingCallback = procedure( decompressionTrackingRefCon: UnivPtr; result: OSStatus; decompressionTrackingFlags: ICMDecompressionTrackingFlags; pixelBuffer: CVPixelBufferRef; displayTime: TimeValue64; displayDuration: TimeValue64; validTimeFlags: ICMValidTimeFlags; reserved: UnivPtr; sourceFrameRefCon: UnivPtr );
- {
- * ICMDecompressionTrackingCallbackRecord
- *
- * Summary:
- * A tracking callback for an ICM decompression session.
- }
- type
- ICMDecompressionTrackingCallbackRecordPtr = ^ICMDecompressionTrackingCallbackRecord;
- ICMDecompressionTrackingCallbackRecord = record
- {
- * The callback function pointer.
- }
- decompressionTrackingCallback: ICMDecompressionTrackingCallback;
- {
- * The callback's reference value.
- }
- decompressionTrackingRefCon: UnivPtr;
- end;
- {
- * ICMDecompressionSessionCreate()
- *
- * Summary:
- * Creates a session for decompressing video frames.
- *
- * Discussion:
- * Frames will be output through calls to trackingCallback.
- *
- * Parameters:
- *
- * allocator:
- * An allocator for the session. Pass NULL to use the default
- * allocator.
- *
- * desc:
- * An image description for the source frames.
- *
- * decompressionOptions:
- * Options for the session. The session will retain this options
- * object. You may change some options during the session by
- * modifying the object.
- *
- * destinationPixelBufferAttributes:
- * Describes requirements for emitted pixel buffers.
- *
- * trackingCallback:
- * The callback to be called with information about queued frames,
- * and pixel buffers containing the decompressed frames.
- *
- * decompressionSessionOut:
- * Points to a variable to receive the new decompression session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionCreate( allocator: CFAllocatorRef { can be NULL }; desc: ImageDescriptionHandle; decompressionOptions: ICMDecompressionSessionOptionsRef { can be NULL }; destinationPixelBufferAttributes: CFDictionaryRef { can be NULL }; var trackingCallback: ICMDecompressionTrackingCallbackRecord; var decompressionSessionOut: ICMDecompressionSessionRef ): OSStatus; external name '_ICMDecompressionSessionCreate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionCreateForVisualContext()
- *
- * Summary:
- * Creates a session for decompressing video frames.
- *
- * Discussion:
- * Frames will be output to a visual context. If desired, the
- * trackingCallback may attach additional data to pixel buffers
- * before they are sent to the visual context.
- *
- * Parameters:
- *
- * allocator:
- * An allocator for the session. Pass NULL to use the default
- * allocator.
- *
- * desc:
- * An image description for the source frames.
- *
- * decompressionOptions:
- * Options for the session. The session will retain this options
- * object. You may change some options during the session by
- * modifying the object.
- *
- * visualContext:
- * The target visual context.
- *
- * trackingCallback:
- * The callback to be called with information about queued frames,
- * and pixel buffers containing the decompressed frames.
- *
- * decompressionSessionOut:
- * Points to a variable to receive the new decompression session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionCreateForVisualContext( allocator: CFAllocatorRef { can be NULL }; desc: ImageDescriptionHandle; decompressionOptions: ICMDecompressionSessionOptionsRef { can be NULL }; visualContext: QTVisualContextRef; var trackingCallback: ICMDecompressionTrackingCallbackRecord; var decompressionSessionOut: ICMDecompressionSessionRef ): OSStatus; external name '_ICMDecompressionSessionCreateForVisualContext';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionRetain()
- *
- * Summary:
- * Increments the retain count of a decompression session.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionRetain( session: ICMDecompressionSessionRef ): ICMDecompressionSessionRef; external name '_ICMDecompressionSessionRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionRelease()
- *
- * Summary:
- * Decrements the retain count of a decompression session. If it
- * drops to zero, the session is disposed.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure ICMDecompressionSessionRelease( session: ICMDecompressionSessionRef ); external name '_ICMDecompressionSessionRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for decompression sessions.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionGetTypeID: CFTypeID; external name '_ICMDecompressionSessionGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionDecodeFrame()
- *
- * Summary:
- * Queues a frame for decompression.
- *
- * Parameters:
- *
- * session:
- * The decompression session.
- *
- * data:
- * Points to the compressed data for this frame. The data must
- * remain in this location until the tracking callback is called
- * with the kICMDecompressionTracking_ReleaseSourceData flag set
- * in decompressionTrackingFlags.
- *
- * dataSize:
- * The number of bytes of compressed data. You may not pass zero
- * in this parameter.
- *
- * frameOptions:
- * Options for this frame.
- *
- * frameTime:
- * Points to a structure describing the frame's timing information.
- *
- * sourceFrameRefCon:
- * Your reference value for the frame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionDecodeFrame( session: ICMDecompressionSessionRef; data: {const} UnivPtr; dataSize: ByteCount; frameOptions: ICMDecompressionFrameOptionsRef { can be NULL }; const (*var*) frameTime: ICMFrameTimeRecord; sourceFrameRefCon: UnivPtr ): OSStatus; external name '_ICMDecompressionSessionDecodeFrame';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionGetPropertyInfo()
- *
- * Summary:
- * Retrieves information about properties of a decompression session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionGetPropertyInfo( session: ICMDecompressionSessionRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; outPropType: ComponentValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): OSStatus; external name '_ICMDecompressionSessionGetPropertyInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionGetProperty()
- *
- * Summary:
- * Retrieves the value of a specific property of a decompression
- * session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionGetProperty( session: ICMDecompressionSessionRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; outPropValueAddress: ComponentValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): OSStatus; external name '_ICMDecompressionSessionGetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionSetProperty()
- *
- * Summary:
- * Sets the value of a specific property of a decompression session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionSetProperty( session: ICMDecompressionSessionRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstComponentValuePtr ): OSStatus; external name '_ICMDecompressionSessionSetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMNonScheduledDisplayTime
- *
- * Discussion:
- * The display time for a decompression session.
- }
- type
- ICMNonScheduledDisplayTime = record
- {
- * A display time. Usually this is the display time of a
- * non-scheduled queued frame.
- }
- displayTime: TimeValue64;
- {
- * The timescale according to which displayTime should be interpreted.
- }
- displayTimeScale: TimeScale;
- {
- * Reserved, set to zero.
- }
- flags: UInt32;
- end;
- {
- * Summary:
- * Properties of decompression sessions.
- }
- const
- {
- * Class identifier for decompression session properties.
- }
- kQTPropertyClass_ICMDecompressionSession = FourCharCode('icds');
- {
- * The non-scheduled display time for a decompression session.
- * Setting this requests display of the non-scheduled queued frame at
- * that display time, if there is one.
- * See ICMDecompressionSessionSetNonScheduledDisplayTime.
- }
- kICMDecompressionSessionPropertyID_NonScheduledDisplayTime = FourCharCode('nsti'); { ICMNonScheduledDisplayTime, Read/Write }
- {
- * The direction for non-scheduled display time.
- * See ICMDecompressionSessionSetNonScheduledDisplayDirection.
- }
- kICMDecompressionSessionPropertyID_NonScheduledDisplayDirection = FourCharCode('nsdu'); { Fixed, Read/Write }
- {
- * The pixel buffer pool from which emitted pixel buffers are
- * allocated. Getting this does not change the retain count of the
- * pool.
- }
- kICMDecompressionSessionPropertyID_PixelBufferPool = FourCharCode('pool'); { CVPixelBufferPoolRef, Read }
- {
- * Indicates whether the a common pixel buffer pool is shared between
- * the decompressor and the session client. This is false if separate
- * pools are used because the decompressor's and the client's pixel
- * buffer attributes were incompatible.
- }
- kICMDecompressionSessionPropertyID_PixelBufferPoolIsShared = FourCharCode('plsh'); { Boolean, Read }
- {
- * ICMDecompressionSessionSetNonScheduledDisplayTime()
- *
- * Summary:
- * Sets the display time for a decompression session, and requests
- * display of the non-scheduled queued frame at that display time,
- * if there is one.
- *
- * Discussion:
- * Call ICMDecompressionSessionSetNonScheduledDisplayTime after
- * queueing non-scheduled frames with
- * ICMDecompressionSessionDecodeFrame with the
- * icmFrameTimeIsNonScheduledDisplayTime flag set to request display
- * of the frame at a particular display time.
- * If there is no queued non-scheduled frame with this display time,
- * the frame with the next earlier display time is displayed. (Which
- * of two display times is earlier is determined using the
- * non-scheduled display time direction, which you can set with
- * ICMDecompressionSessionSetNonScheduledDisplayDirection.) If there
- * is no such frame, nothing happens.
- * This has no effect if frames are scheduled against a timebase.
- *
- * Parameters:
- *
- * session:
- * The decompression session.
- *
- * displayTime:
- * A display time. Usually this is the display time of a
- * non-scheduled queued frame.
- *
- * displayTimeScale:
- * The timescale according to which displayTime should be
- * interpreted.
- *
- * flags:
- * Reserved, set to zero.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionSetNonScheduledDisplayTime( session: ICMDecompressionSessionRef; displayTime: TimeValue64; displayTimeScale: TimeScale; flags: UInt32 ): OSStatus; external name '_ICMDecompressionSessionSetNonScheduledDisplayTime';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionSetNonScheduledDisplayDirection()
- *
- * Summary:
- * Sets the direction for non-scheduled display time.
- *
- * Discussion:
- * If rate is zero or positive, direction is forwards. If negative,
- * direction is backwards.
- * Any frames queued under the opposite direction will be flushed.
- *
- * The non-scheduled display direction defaults to forwards (rate
- * 1.0).
- *
- * Parameters:
- *
- * session:
- * The decompression session.
- *
- * rate:
- * Indicates the direction.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionSetNonScheduledDisplayDirection( session: ICMDecompressionSessionRef; rate: Fixed ): OSStatus; external name '_ICMDecompressionSessionSetNonScheduledDisplayDirection';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionFlush()
- *
- * Summary:
- * Flushes frames queued with a decompression session.
- *
- * Discussion:
- * The tracking callback will be called for each frame with the
- * result -1.
- *
- * Parameters:
- *
- * session:
- * The decompression session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionFlush( session: ICMDecompressionSessionRef ): OSStatus; external name '_ICMDecompressionSessionFlush';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionOptionsCreate()
- *
- * Summary:
- * Creates a decompression session options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionOptionsCreate( allocator: CFAllocatorRef { can be NULL }; var options: ICMDecompressionSessionOptionsRef ): OSStatus; external name '_ICMDecompressionSessionOptionsCreate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionOptionsCreateCopy()
- *
- * Summary:
- * Copies a decompression session options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionOptionsCreateCopy( allocator: CFAllocatorRef { can be NULL }; originalOptions: ICMDecompressionSessionOptionsRef; var copiedOptions: ICMDecompressionSessionOptionsRef ): OSStatus; external name '_ICMDecompressionSessionOptionsCreateCopy';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionOptionsRetain()
- *
- * Summary:
- * Increments the retain count of a decompression session options
- * object.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionOptionsRetain( options: ICMDecompressionSessionOptionsRef ): ICMDecompressionSessionOptionsRef; external name '_ICMDecompressionSessionOptionsRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionOptionsRelease()
- *
- * Summary:
- * Decrements the retain count of a decompression session options
- * object. If it drops to zero, the object is disposed.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure ICMDecompressionSessionOptionsRelease( options: ICMDecompressionSessionOptionsRef ); external name '_ICMDecompressionSessionOptionsRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionOptionsGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for decompression session options objects.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionOptionsGetTypeID: CFTypeID; external name '_ICMDecompressionSessionOptionsGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionOptionsGetPropertyInfo()
- *
- * Summary:
- * Retrieves information about properties of a decompression session
- * options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionOptionsGetPropertyInfo( options: ICMDecompressionSessionOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; outPropType: ComponentValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): OSStatus; external name '_ICMDecompressionSessionOptionsGetPropertyInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionOptionsGetProperty()
- *
- * Summary:
- * Retrieves the value of a specific property of a decompression
- * session options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionOptionsGetProperty( options: ICMDecompressionSessionOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; outPropValueAddress: ComponentValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): OSStatus; external name '_ICMDecompressionSessionOptionsGetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionSessionOptionsSetProperty()
- *
- * Summary:
- * Sets the value of a specific property of a decompression session
- * options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionSessionOptionsSetProperty( options: ICMDecompressionSessionOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstComponentValuePtr ): OSStatus; external name '_ICMDecompressionSessionOptionsSetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * Summary:
- * Properties of decompression session options objects.
- }
- const
- {
- * Class identifier for decompression session options object
- * properties.
- }
- kQTPropertyClass_ICMDecompressionSessionOptions = FourCharCode('idso');
- {
- * By default, this is true, meaning that frames must be output in
- * display order. Set this to false to allow frames to be output in
- * decode order rather than in display order.
- }
- kICMDecompressionSessionOptionsPropertyID_DisplayOrderRequired = FourCharCode('dorq'); { Boolean, Read/Write }
- {
- * A specific decompressor component or component instance to be
- * used, or one of the wildcards anyCodec, bestSpeedCodec,
- * bestFidelityCodec, or bestCompressionCodec.
- * By default, this is anyCodec.
- }
- kICMDecompressionSessionOptionsPropertyID_DecompressorComponent = FourCharCode('imdc'); { DecompressorComponent, Read/Write }
- {
- * The decompression accuracy.
- * The default accuracy is codecNormalQuality.
- }
- kICMDecompressionSessionOptionsPropertyID_Accuracy = FourCharCode('acur'); { CodecQ, Read/Write }
- {
- * Requests special handling of fields. Not all codecs will obey this
- * request; some codecs will only handle it at certain accuracy
- * levels. Ignored for non-interlaced content.
- }
- kICMDecompressionSessionOptionsPropertyID_FieldMode = FourCharCode('fiel'); { ICMFieldMode, Read/Write }
- {
- * The maximum number of buffers ahead of the current time that
- * should be decompressed. Used in sessions that target visual
- * contexts. By default, the number of buffers will be determined
- * from the visual context.
- }
- kICMDecompressionSessionOptionsPropertyID_MaxBufferCount = FourCharCode('m#bf'); { UInt32, Read/Write }
- {
- * The minimum time ahead of the current time that frames should be
- * decompressed. Used in sessions that target visual contexts. By
- * default, the output-ahead time will be determined from the visual
- * context.
- }
- kICMDecompressionSessionOptionsPropertyID_OutputAheadTime = FourCharCode('futu'); { TimeRecord, Read/Write }
- {
- * You can set the aperture mode property on a decompression session
- * options object to indicate whether pixel buffers should be tagged
- * to enable aspect ratio and clean aperture correction. The default
- * aperture mode for a decompression session is clean aperture mode.
- }
- kICMDecompressionSessionOptionsPropertyID_ApertureMode = FourCharCode('apmd'); { OSType, Read/Write }
- {
- * ICMFieldMode
- *
- * Summary:
- * Describes special field handling.
- }
- type
- ICMFieldMode = UInt32;
- const
- {
- * Both fields should be decompressed.
- }
- kICMFieldMode_BothFields = 0;
- {
- * Only the top field should be decompressed, producing a half-height
- * image.
- }
- kICMFieldMode_TopFieldOnly = 1;
- {
- * Only the bottom field should be decompressed, producing a
- * half-height image.
- }
- kICMFieldMode_BottomFieldOnly = 2;
- {
- * Both fields should be decompressed, and then filtered to reduce
- * interlacing artifacts.
- }
- kICMFieldMode_DeinterlaceFields = 3;
- {
- * ICMDecompressionFrameOptionsCreate()
- *
- * Summary:
- * Creates a frame decompression options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionFrameOptionsCreate( allocator: CFAllocatorRef { can be NULL }; var options: ICMDecompressionFrameOptionsRef ): OSStatus; external name '_ICMDecompressionFrameOptionsCreate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionFrameOptionsCreateCopy()
- *
- * Summary:
- * Copies a frame decompression options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionFrameOptionsCreateCopy( allocator: CFAllocatorRef { can be NULL }; originalOptions: ICMDecompressionFrameOptionsRef; var copiedOptions: ICMDecompressionFrameOptionsRef ): OSStatus; external name '_ICMDecompressionFrameOptionsCreateCopy';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionFrameOptionsRetain()
- *
- * Summary:
- * Increments the retain count of a frame decompression options
- * object.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionFrameOptionsRetain( options: ICMDecompressionFrameOptionsRef ): ICMDecompressionFrameOptionsRef; external name '_ICMDecompressionFrameOptionsRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionFrameOptionsRelease()
- *
- * Summary:
- * Decrements the retain count of a frame decompression options
- * object. If it drops to zero, the object is disposed.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure ICMDecompressionFrameOptionsRelease( options: ICMDecompressionFrameOptionsRef ); external name '_ICMDecompressionFrameOptionsRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionFrameOptionsGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for frame decompression options objects.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionFrameOptionsGetTypeID: CFTypeID; external name '_ICMDecompressionFrameOptionsGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionFrameOptionsGetPropertyInfo()
- *
- * Summary:
- * Retrieves information about properties of a decompression frame
- * options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionFrameOptionsGetPropertyInfo( options: ICMDecompressionFrameOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; outPropType: ComponentValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): OSStatus; external name '_ICMDecompressionFrameOptionsGetPropertyInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionFrameOptionsGetProperty()
- *
- * Summary:
- * Retrieves the value of a specific property of a decompression
- * frame options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionFrameOptionsGetProperty( options: ICMDecompressionFrameOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; outPropValueAddress: ComponentValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): OSStatus; external name '_ICMDecompressionFrameOptionsGetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMDecompressionFrameOptionsSetProperty()
- *
- * Summary:
- * Sets the value of a specific property of a decompression frame
- * options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMDecompressionFrameOptionsSetProperty( options: ICMDecompressionFrameOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstComponentValuePtr ): OSStatus; external name '_ICMDecompressionFrameOptionsSetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * Summary:
- * Properties of decompression frame options objects.
- }
- const
- {
- * Class identifier for decompression frame options object properties.
- }
- kQTPropertyClass_ICMDecompressionFrameOptions = FourCharCode('idfo');
- {
- * A specific pixel buffer that the frame should be decompressed
- * into. Setting this circumvents the pixel buffer pool mechanism. If
- * this buffer is not compatible with the codec's pixel buffer
- * requirements, decompression will fail.
- }
- kICMDecompressionFrameOptionsPropertyID_DestinationPixelBuffer = FourCharCode('cvpb'); { CVPixelBufferRef, Read/Write }
- {
- * ICMCompressionSessionRef
- *
- * Summary:
- * Represents a compression session for a sequence of images.
- * B-frame capable.
- }
- type
- ICMCompressionSessionRef = ^OpaqueICMCompressionSession; { an opaque type }
- OpaqueICMCompressionSession = record end;
- {
- * ICMEncodedFrameRef
- *
- * Summary:
- * Represents a frame encoded by a compressor component and emitted
- * by a compression session.
- *
- * Discussion:
- * Compressor components have access to the mutable flavor of
- * encoded frame object (ICMMutableEncodedFrameRef); compression
- * session clients receive the read-only flavor
- * (ICMMutableEncodedFrameRef).
- }
- type
- ICMEncodedFrameRef = ^OpaqueICMEncodedFrame; { an opaque type }
- OpaqueICMEncodedFrame = record end;
- ICMEncodedFrameRefPtr = ^ICMEncodedFrameRef;
- ICMMutableEncodedFrameRef = ^OpaqueICMMutableEncodedFrameRef; { an opaque type }
- OpaqueICMMutableEncodedFrameRef = record end;
- ICMMutableEncodedFrameRefPtr = ^ICMMutableEncodedFrameRef;
- {
- * ICMCompressionSessionOptionsRef
- *
- * Summary:
- * An opaque struct which holds options to configure a compression
- * session.
- }
- type
- ICMCompressionSessionOptionsRef = ^OpaqueICMCompressionSessionOptions; { an opaque type }
- OpaqueICMCompressionSessionOptions = record end;
- {
- * ICMCompressionFrameOptionsRef
- *
- * Summary:
- * A token which holds options to configure an individual frame
- * during a compression session.
- }
- type
- ICMCompressionFrameOptionsRef = ^OpaqueICMCompressionFrameOptions; { an opaque type }
- OpaqueICMCompressionFrameOptions = record end;
- {
- * ICMMultiPassStorageRef
- *
- * Summary:
- * A mechanism for storing information for each frame of a multipass
- * compression session.
- *
- * Discussion:
- * The ICM provides default storage mechanisms using temporary
- * files, but clients may override this with custom mechanisms.
- }
- type
- ICMMultiPassStorageRef = ^OpaqueICMMultiPassStorage; { an opaque type }
- OpaqueICMMultiPassStorage = record end;
- {
- * ICMEncodedFrameOutputCallback
- *
- * Summary:
- * The callback through which a client of an ICM compression session
- * receives encoded frames.
- *
- * Discussion:
- * During the encoded frame output callback, the ICM has a reference
- * to the passed ICMEncodedFrame, but the ICM will release that
- * reference afterwards; the callback should retain the encoded
- * frame if the client wants to keep it after the callback returns.
- *
- * Parameters:
- *
- * encodedFrameOutputRefCon:
- * The callback's reference value, copied from the
- * encodedFrameOutputRefCon field of the
- * ICMEncodedFrameOutputRecord.
- *
- * session:
- * The compression session.
- *
- * error:
- * Indicates whether there was an error.
- *
- * frame:
- * The encoded frame.
- *
- * reserved:
- * Reserved for future use. Ignore the value of this parameter.
- *
- * Result:
- * If the callback returns an error, the compressor and ICM will
- * stop emitting frames so that the error can be propogated back to
- * the caller of ICMCompressionSessionEncodeFrame or
- * ICMCompressionSessionCompleteFrames.
- }
- type
- ICMEncodedFrameOutputCallback = function( encodedFrameOutputRefCon: UnivPtr; session: ICMCompressionSessionRef; error: OSStatus; frame: ICMEncodedFrameRef; reserved: UnivPtr ): OSStatus;
- {
- * ICMEncodedFrameOutputRecord
- *
- * Summary:
- * Holds an encoded frame callback and reference value.
- }
- type
- ICMEncodedFrameOutputRecord = record
- {
- * An encoded frame callback.
- }
- encodedFrameOutputCallback: ICMEncodedFrameOutputCallback;
- {
- * The reference value for the encoded frame callback.
- }
- encodedFrameOutputRefCon: UnivPtr;
- {
- * The allocator for encoded frame data. Pass NULL if you do not need
- * a specific allocator.
- }
- frameDataAllocator: CFAllocatorRef;
- end;
- {
- * ICMSourceTrackingFlags
- *
- }
- type
- ICMSourceTrackingFlags = UInt32;
- const
- {
- * Indicates that this is the last call for this sourceFrameRefCon.
- }
- kICMSourceTracking_LastCall = 1 shl 0;
- {
- * Indicates that the session is done with the source pixel buffer
- * and has released any reference to it that it had.
- }
- kICMSourceTracking_ReleasedPixelBuffer = 1 shl 1;
- {
- * Indicates that this frame was encoded.
- }
- kICMSourceTracking_FrameWasEncoded = 1 shl 2;
- {
- * Indicates that this frame was dropped.
- }
- kICMSourceTracking_FrameWasDropped = 1 shl 3;
- {
- * Indicates that this frame was merged into other frames.
- }
- kICMSourceTracking_FrameWasMerged = 1 shl 4;
- {
- * Indicates that the time stamp of this frame was modified.
- }
- kICMSourceTracking_FrameTimeWasChanged = 1 shl 5;
- {
- * Indicates that the ICM has copied the image from the source pixel
- * buffer into another pixel buffer because the source pixel buffer
- * was not compatible with the compressor's required pixel buffer
- * attributes.
- }
- kICMSourceTracking_CopiedPixelBuffer = 1 shl 6;
- {
- * ICMSourceTrackingCallback
- *
- * Summary:
- * A callback which the ICM calls to provide information about the
- * status of a frame that was passed to
- * ICMCompressionSessionEncodeFrame.
- *
- * Discussion:
- * Note that this callback may be called several times.
- *
- * Parameters:
- *
- * sourceTrackingRefCon:
- * The callback's reference value, copied from the
- * sourceTrackingRefCon field of ICMSourceTrackingCallbackRecord.
- *
- * sourceTrackingFlags:
- * Flags describing what has happened to the frame.
- *
- * sourceFrameRefCon:
- * The frame's reference value, copied from the sourceFrameRefCon
- * parameter to ICMCompressionSessionEncodeFrame.
- *
- * reserved:
- * Reserved for future use. Ignore the value of this parameter.
- }
- type
- ICMSourceTrackingCallback = procedure( sourceTrackingRefCon: UnivPtr; sourceTrackingFlags: ICMSourceTrackingFlags; sourceFrameRefCon: UnivPtr; reserved: UnivPtr );
- {
- * ICMSourceTrackingCallbackRecord
- *
- * Summary:
- * A tracking callback for an ICM compression session.
- }
- type
- ICMSourceTrackingCallbackRecordPtr = ^ICMSourceTrackingCallbackRecord;
- ICMSourceTrackingCallbackRecord = record
- {
- * The callback function pointer.
- }
- sourceTrackingCallback: ICMSourceTrackingCallback;
- {
- * The callback's reference value.
- }
- sourceTrackingRefCon: UnivPtr;
- end;
- {
- * ICMFrameType
- *
- * Summary:
- * Informally identifies a type of frame.
- *
- * Discussion:
- * Do not assume that there are no other frame types beyond I, P and
- * B.
- }
- type
- ICMFrameType = UInt16;
- const
- kICMFrameType_I = 'I';
- kICMFrameType_P = 'P';
- kICMFrameType_B = 'B';
- kICMFrameType_Unknown = 0;
- { ICMCompressionSessionRef routines }
- {
- * ICMCompressionSessionCreate()
- *
- * Summary:
- * Creates a compression session for the given codec type.
- *
- * Discussion:
- * Some compressors do not support arbitrary source dimensions, and
- * may override the suggested width and height.
- *
- * Parameters:
- *
- * allocator:
- * An allocator for the session. Pass NULL to use the default
- * allocator.
- *
- * width:
- * The width of frames.
- *
- * height:
- * The height of frames.
- *
- * cType:
- * The codec type.
- *
- * timescale:
- * The timescale to be used for all timestamps and durations used
- * in the session.
- *
- * compressionOptions:
- * Settings configuring the session.
- *
- * sourcePixelBufferAttributes:
- * Required attributes for source pixel buffers, used when
- * creating a pixel buffer pool for source frames. If you do not
- * want the ICM to create one for you, pass NULL. (Using pixel
- * buffers not allocated by the ICM may increase the chance that
- * it will be necessary to copy image data.)
- *
- * encodedFrameOutputRecord:
- * The callback that will receive encoded frames.
- *
- * compressionSessionOut:
- * Points to a variable to receive the created session object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionCreate( allocator: CFAllocatorRef { can be NULL }; width: SInt32; height: SInt32; cType: CodecType; timescale_: TimeScale; compressionOptions: ICMCompressionSessionOptionsRef { can be NULL }; sourcePixelBufferAttributes: CFDictionaryRef { can be NULL }; var encodedFrameOutputRecord: ICMEncodedFrameOutputRecord; var compressionSessionOut: ICMCompressionSessionRef ): OSStatus; external name '_ICMCompressionSessionCreate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionRetain()
- *
- * Summary:
- * Increments the retain count of a compression session.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionRetain( session: ICMCompressionSessionRef ): ICMCompressionSessionRef; external name '_ICMCompressionSessionRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionRelease()
- *
- * Summary:
- * Decrements the retain count of a compression session. If it
- * drops to zero, the session is disposed.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens. Remember to
- * call ICMCompressionSessionCompleteFrames first if you want to
- * ensure any pending frames are emitted. If you do not, they will
- * be discarded.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure ICMCompressionSessionRelease( session: ICMCompressionSessionRef ); external name '_ICMCompressionSessionRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for compression sessions.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionGetTypeID: CFTypeID; external name '_ICMCompressionSessionGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionGetPropertyInfo()
- *
- * Summary:
- * Retrieves information about properties of a compression session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionGetPropertyInfo( session: ICMCompressionSessionRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; outPropType: ComponentValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): OSStatus; external name '_ICMCompressionSessionGetPropertyInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionGetProperty()
- *
- * Summary:
- * Retrieves the value of a specific property of a compression
- * session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionGetProperty( session: ICMCompressionSessionRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; outPropValueAddress: ComponentValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): OSStatus; external name '_ICMCompressionSessionGetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionSetProperty()
- *
- * Summary:
- * Sets the value of a specific property of a compression session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionSetProperty( session: ICMCompressionSessionRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstComponentValuePtr ): OSStatus; external name '_ICMCompressionSessionSetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * Summary:
- * Properties of compression sessions.
- }
- const
- {
- * Class identifier for compression session properties.
- }
- kQTPropertyClass_ICMCompressionSession = FourCharCode('icse');
- {
- * The time scale for the compression session.
- }
- kICMCompressionSessionPropertyID_TimeScale = FourCharCode('tscl'); { TimeScale, Read }
- {
- * The compressor's pixel buffer attributes for the compression
- * session. You can use these to create a pixel buffer pool for
- * source pixel buffers. Note that this is not the same as the
- * sourcePixelBufferAttributes passed in to
- * ICMCompressionSessionCreate. Getting this property does not change
- * its retain count.
- }
- kICMCompressionSessionPropertyID_CompressorPixelBufferAttributes = FourCharCode('batt'); { CFDictionaryRef, Read }
- {
- * A pool that can provide ideal source pixel buffers for a
- * compression session. The compression session creates this pixel
- * buffer pool based on the compressor's pixel buffer attributes and
- * any pixel buffer attributes passed in to
- * ICMCompressionSessionCreate. If the source pixel buffer attributes
- * and the compressor pixel buffer attributes can not be reconciled,
- * the pool is based on the source pixel buffer attributes and the
- * ICM converts each CVPixelBuffer internally.
- }
- kICMCompressionSessionPropertyID_PixelBufferPool = FourCharCode('pool'); { CVPixelBufferPoolRef, Read }
- {
- * The image description for the compression session. For some
- * codecs, the image description may not be available before the
- * first frame is compressed. Multiple calls to retrieve this
- * property will return the same handle. The ICM will dispose this
- * handle when the compression session is disposed.
- * IMPORTANT: The caller must NOT dispose this handle.
- }
- kICMCompressionSessionPropertyID_ImageDescription = FourCharCode('idsc'); { ImageDescriptionHandle, Read }
- {
- * ICMCompressionSessionGetTimeScale()
- *
- * Summary:
- * Retrieves the time scale for the compression session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionGetTimeScale( session: ICMCompressionSessionRef ): TimeScale; external name '_ICMCompressionSessionGetTimeScale';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionGetPixelBufferPool()
- *
- * Summary:
- * Returns a pool that can provide ideal source pixel buffers for a
- * compression session.
- *
- * Discussion:
- * The compression session creates this pixel buffer pool based on
- * the compressor's pixel buffer attributes and any pixel buffer
- * attributes passed in to ICMCompressionSessionCreate. If the
- * source pixel buffer attributes and the compressor pixel buffer
- * attributes can not be reconciled, the pool is based on the source
- * pixel buffer attributes and the ICM converts each CVPixelBuffer
- * internally.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionGetPixelBufferPool( session: ICMCompressionSessionRef ): CVPixelBufferPoolRef; external name '_ICMCompressionSessionGetPixelBufferPool';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionGetImageDescription()
- *
- * Summary:
- * Retrieves the image description for the compression session.
- *
- * Discussion:
- * For some codecs, this may fail if called before the first frame
- * is compressed. Multiple calls to
- * ICMCompressionSessionGetImageDescription will return the same
- * handle. The ICM will dispose this handle when the compression
- * session is disposed.
- * IMPORTANT: The caller must NOT dispose this handle.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionGetImageDescription( session: ICMCompressionSessionRef; var imageDescOut: ImageDescriptionHandle ): OSStatus; external name '_ICMCompressionSessionGetImageDescription';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- { ICMCompressionSessionRef encoding routines }
- {
- * ICMCompressionSessionEncodeFrame()
- *
- * Summary:
- * Call this function to present frames to the compression session.
- * Encoded frames may or may not be output before the function
- * returns.
- *
- * Discussion:
- * The session will retain the pixel buffer as long as necessary;
- * the client should not modify the pixel data until the session
- * releases it. (The most practical way to deal with this is by
- * allocating pixel buffers from a pool.)
- * The client may fill in both, either or neither of
- * displayTimeStamp and displayDuration, but should set the
- * appropriate flags to indicate which is valid. If the client needs
- * to track the progress of a source frame, it should provide a
- * sourceTrackingCallback.
- * Note: If multipass compression is enabled, calls to
- * ICMCompressionSessionEncodeFrame must be bracketed by
- * ICMCompressionSessionBeginPass ... ICMCompressionSessionEndPass.
- *
- * Parameters:
- *
- * session:
- * Identifies the compression session.
- *
- * pixelBuffer:
- * Contains the source image to be compressed. PixelBuffer must
- * have a nonzero reference count. The session will retain it as
- * long as necessary. The client should not modify pixel buffer's
- * pixels until the pixel buffer release callback is called. In a
- * multipass encoding session pass where the compressor suggested
- * the flag kICMCompressionPassMode_NoSourceFrames, you may pass
- * NULL for pixelBuffer.
- *
- * displayTimeStamp:
- * The display timestamp of the frame, using the timescale passed
- * to ICMCompressionSessionCreate. If you pass a valid value, set
- * the kICMValidTime_DisplayTimeStampIsValid flag in
- * validTimeFlags.
- *
- * displayDuration:
- * The display duration of the frame, using the timescale passed
- * to ICMCompressionSessionCreate. If you pass a valid value, set
- * the kICMValidTime_DisplayDurationIsValid flag in validTimeFlags.
- *
- * validTimeFlags:
- * Flags to indicate which of displayTimeStamp and displayDuration
- * are valid.
- *
- * frameOptions:
- * Options for this frame.
- *
- * sourceTrackingCallback:
- * A callback to be notified about the status of this source
- * frame. Pass NULL if you do not require notification.
- *
- * sourceFrameRefCon:
- * Your reference to the source frame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionEncodeFrame( session: ICMCompressionSessionRef; pixelBuffer: CVPixelBufferRef; displayTimeStamp: TimeValue64; displayDuration: TimeValue64; validTimeFlags: ICMValidTimeFlags; frameOptions: ICMCompressionFrameOptionsRef { can be NULL }; sourceTrackingCallback: ICMSourceTrackingCallbackRecordPtr { can be NULL }; sourceFrameRefCon: UnivPtr ): OSStatus; external name '_ICMCompressionSessionEncodeFrame';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionCompleteFrames()
- *
- * Discussion:
- * Call this function to force the compression session to complete
- * encoding frames. Set completeAllFrames to direct the session to
- * complete all pending frames.
- * If completeAllFrames is false, only frames with display time
- * stamps up to and including completeUntilDisplayTimeStamp.
- * If ICMCompressionSessionOptionsSetDurationsNeeded is true and you
- * are passing valid display timestamps but not display durations to
- * ICMCompressionSessionEncodeFrame, pass the display timestamp of
- * the next frame that would be passed to EncodeFrame in
- * nextDisplayTimeStamp.
- * Note: This function might return before frames are completed if
- * the encoded frame callback returns an error.
- *
- * Parameters:
- *
- * session:
- * Identifies the compression session.
- *
- * completeAllFrames:
- * Set to direct the session to complete all pending frames.
- *
- * completeUntilDisplayTimeStamp:
- * If completeAllFrames is false, the display timestamp to
- * complete frames up to. Ignored if completeAllFrames is true.
- *
- * nextDisplayTimeStamp:
- * See above. Ignored unless
- * ICMCompressionSessionOptionsSetDurationsNeeded set true and
- * kICMValidTime_DisplayDurationIsValid was clear in
- * validTimeFlags in last call to ICMCompressionSessionEncodeFrame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionCompleteFrames( session: ICMCompressionSessionRef; completeAllFrames: Boolean; completeUntilDisplayTimeStamp: TimeValue64; nextDisplayTimeStamp: TimeValue64 ): OSStatus; external name '_ICMCompressionSessionCompleteFrames';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- { ICMCompressionSessionRef multipass support routines }
- {
- * ICMCompressionPassModeFlags
- *
- * Summary:
- * Flags describing how a compressor should behave in a given pass
- * of multipass encoding.
- }
- type
- ICMCompressionPassModeFlagsPtr = ^ICMCompressionPassModeFlags;
- ICMCompressionPassModeFlags = UInt32;
- const
- {
- * In this pass the compressor shall output encoded frames.
- }
- kICMCompressionPassMode_OutputEncodedFrames = 1 shl 0;
- {
- * In this pass the client need not provide source frame buffers.
- }
- kICMCompressionPassMode_NoSourceFrames = 1 shl 1;
- {
- * In this pass the compressor may write private data to multipass
- * storage.
- }
- kICMCompressionPassMode_WriteToMultiPassStorage = 1 shl 2;
- {
- * In this pass the compressor may read private data from multipass
- * storage.
- }
- kICMCompressionPassMode_ReadFromMultiPassStorage = 1 shl 3;
- {
- * The compressor will set this flag to indicate that it will not be
- * able to output encoded frames in the coming pass. If this flag is
- * not set, then the client is allowed to set the
- * kICMCompressionPassMode_OutputEncodedFrames flag when calling
- * ICMCompressionSessionBeginPass.
- }
- kICMCompressionPassMode_NotReadyToOutputEncodedFrames = 1 shl 4;
- {
- * ICMCompressionSessionSupportsMultiPassEncoding()
- *
- * Summary:
- * Queries whether a compression session supports multipass encoding.
- *
- * Discussion:
- * Even if this function returns false, if you set the
- * kICMCompressionSessionOptionsPropertyID_MultiPassStorage property
- * on the CompressionSessionOptions, you must call
- * ICMCompressionSessionBeginPass and ICMCompressionSessionEndPass.
- *
- * Parameters:
- *
- * session:
- * The compression session.
- *
- * multiPassStyleFlags:
- * Reserved. Set to zero.
- *
- * firstPassModeFlagsOut:
- * Points to a variable to receive the session's requested mode
- * flags for the first pass. The client may modify these flags,
- * but should not set kICMCompressionPassMode_NoSourceFrames. Pass
- * NULL if you do not want this information.
- *
- * Result:
- * true if the session supports multipass encoding, false otherwise.
- * If the session does not support multipass encoding,
- * *firstPassModeFlagsOut will be set to
- * kICMCompressionPassMode_OutputEncodedFrames.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionSupportsMultiPassEncoding( session: ICMCompressionSessionRef; multiPassStyleFlags: UInt32; firstPassModeFlagsOut: ICMCompressionPassModeFlagsPtr { can be NULL } ): Boolean; external name '_ICMCompressionSessionSupportsMultiPassEncoding';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionBeginPass()
- *
- * Summary:
- * Call to announce the start of a specific compression pass.
- *
- * Discussion:
- * The source frames and frame options for each display timestamp
- * should be the same across passes.
- * During multipass compression, valid displayTimeStamps must be
- * passed to ICMCompressionSessionEncodeFrame since they are used to
- * index the compressor's stored state.
- * During an analysis pass
- * (kICMCompressionPassMode_WriteToMultiPassStorage), the compressor
- * does not output encoded frames, but records compressor-private
- * information for each frame.
- * During repeated analysis passes and the encoding pass
- * (kICMCompressionPassMode_ReadFromMultiPassStorage), the
- * compressor may refer to this information for other frames and use
- * it to improve encoding.
- * During an encoding pass
- * (kICMCompressionPassMode_OutputEncodedFrames), the compressor
- * must output encoded frames.
- * If the compressor set the kICMCompressionPassMode_NoSourceFrames
- * flag for the pass, the client may pass NULL pixel buffers to
- * ICMCompressionSessionEncodeFrame.
- * By default, the ICM provides local storage that lasts only until
- * the compression session is disposed. If the client provides
- * custom multipass storage, pass may be performed at different
- * times or on different machines; segments of each pass may even be
- * distributed.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionBeginPass( session: ICMCompressionSessionRef; passModeFlags: ICMCompressionPassModeFlags; flags: UInt32 ): OSStatus; external name '_ICMCompressionSessionBeginPass';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionEndPass()
- *
- * Summary:
- * Call to announce the end of a pass.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionEndPass( session: ICMCompressionSessionRef ): OSStatus; external name '_ICMCompressionSessionEndPass';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionProcessBetweenPasses()
- *
- * Summary:
- * Lets the compressor perform processing between passes.
- *
- * Discussion:
- * Call this function repeatedly, until the compressor sets
- * *interpassProcessingDoneOut to true to indicate that it is done
- * with this round of interpass processing.
- * When done, the compressor will indicate its preferred mode for
- * the next pass.
- * The client may choose to begin an encoding pass (by ORing in the
- * kICMCompressionPassMode_OutputEncodedFrames flag) regardless of
- * the compressor's request.
- *
- * Parameters:
- *
- * session:
- * The compression session.
- *
- * flags:
- * Reserved. Set to zero.
- *
- * interpassProcessingDoneOut:
- * Points to a Boolean that will be set to false if
- * ICMCompressionSessionProcessBetweenPasses should be called
- * again, true if not
- *
- * requestedNextPassModeFlagsOut:
- * Points to ICMCompressionPassModeFlags that will be set to the
- * codec's recommended mode flags for the next pass.
- * kICMCompressionPassMode_OutputEncodedFrames will only be set if
- * it recommends that the next pass be the final one.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionProcessBetweenPasses( session: ICMCompressionSessionRef; flags: UInt32; var interpassProcessingDoneOut: Boolean; var requestedNextPassModeFlagsOut: ICMCompressionPassModeFlags ): OSStatus; external name '_ICMCompressionSessionProcessBetweenPasses';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- { ICMCompressionSessionOptionsRef routines }
- {
- * ICMCompressionSessionOptionsCreate()
- *
- * Summary:
- * Creates a compression session options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsCreate( allocator: CFAllocatorRef { can be NULL }; var options: ICMCompressionSessionOptionsRef ): OSStatus; external name '_ICMCompressionSessionOptionsCreate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsCreateCopy()
- *
- * Summary:
- * Copies a compression session options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsCreateCopy( allocator: CFAllocatorRef { can be NULL }; originalOptions: ICMCompressionSessionOptionsRef; var copiedOptions: ICMCompressionSessionOptionsRef ): OSStatus; external name '_ICMCompressionSessionOptionsCreateCopy';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsRetain()
- *
- * Summary:
- * Increments the retain count of a compression session options
- * object.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsRetain( options: ICMCompressionSessionOptionsRef ): ICMCompressionSessionOptionsRef; external name '_ICMCompressionSessionOptionsRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsRelease()
- *
- * Summary:
- * Decrements the retain count of a compression session options
- * object. If it drops to zero, the object is disposed.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure ICMCompressionSessionOptionsRelease( options: ICMCompressionSessionOptionsRef ); external name '_ICMCompressionSessionOptionsRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for compression session options objects.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsGetTypeID: CFTypeID; external name '_ICMCompressionSessionOptionsGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsGetPropertyInfo()
- *
- * Summary:
- * Retrieves information about properties of a compression session
- * options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsGetPropertyInfo( options: ICMCompressionSessionOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; outPropType: ComponentValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): OSStatus; external name '_ICMCompressionSessionOptionsGetPropertyInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsGetProperty()
- *
- * Summary:
- * Retrieves the value of a specific property of a compression
- * session options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsGetProperty( options: ICMCompressionSessionOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; outPropValueAddress: ComponentValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): OSStatus; external name '_ICMCompressionSessionOptionsGetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsSetProperty()
- *
- * Summary:
- * Sets the value of a specific property of a compression session
- * options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsSetProperty( options: ICMCompressionSessionOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstComponentValuePtr ): OSStatus; external name '_ICMCompressionSessionOptionsSetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- const
- {
- * Indicates no limit on the number of frames in the compression
- * window.
- }
- kICMUnlimitedFrameDelayCount = -1;
- {
- * Indicates no time limit on the number of frames in the compression
- * window.
- }
- kICMUnlimitedFrameDelayTime = -1;
- {
- * Indicates no CPU time limit on compression.
- }
- kICMUnlimitedCPUTimeBudget = -1;
- {
- * ICMDataRateLimit
- *
- * Summary:
- * A hard limit on the data rate.
- *
- * Discussion:
- * A hard limit is described by a data size in bytes and a duration
- * in seconds, and requires that the total size of compressed data
- * for any continuous segment of that duration (in decode time) must
- * not exceed the provided data size.
- }
- type
- ICMDataRateLimit = record
- {
- * The number of bytes.
- }
- dataSize: SInt32;
- {
- * The number of seconds.
- }
- dataDuration: Float32;
- end;
- {
- * Summary:
- * Scaling modes
- *
- * Discussion:
- * These constants indicate how source frames to a compression
- * session should be scaled if the dimensions and/or display aspect
- * ratio do not match.
- }
- const
- {
- * The full width and height of source frames shall be scaled to the
- * full width and height of the destination. This is the default if
- * no other scaling mode is specified.
- }
- kICMScalingMode_StretchProductionAperture = FourCharCode('sp2p');
- {
- * The clean aperture of the source frames shall be scaled to the
- * clean aperture of the destination.
- }
- kICMScalingMode_StretchCleanAperture = FourCharCode('sc2c');
- {
- * The clean aperture of the source frames shall be scaled to fit
- * inside the clean aperture of the destination, preserving the
- * original display aspect ratio. If the display aspect ratios are
- * different, the source frames will be centered with black bars
- * above and below, or to the left and right.
- }
- kICMScalingMode_Letterbox = FourCharCode('lett');
- {
- * The clean aperture of the source frames shall be scaled to cover
- * the clean aperture of the destination, preserving the original
- * display aspect ratio. If the display aspect ratios are different,
- * the source frames will be centered and cropped.
- }
- kICMScalingMode_Trim = FourCharCode('trim');
- {
- * ICMSimpleBoundaryConditions
- *
- * Summary:
- * Indicates whether and how a compression session's frames will be
- * concatenated with other compressed frames to form a longer series.
- *
- * Discussion:
- * Some clients divide a long series of frames into several shorter
- * segments, each of which is then compressed by an independent
- * compression session. Boundary conditions tell the compressor
- * about how each session fits into the greater series: does this
- * session stand alone, or will it be used to encode the first
- * segment, a middle segment, or the last segment in a longer
- * continuum?
- * This information enables compressors to ensure that compressed
- * segments can be concatenated smoothly -- for example, avoiding
- * data rate spikes where segments are joined.
- * By default, a session is assumed to stand alone.
- }
- type
- ICMSimpleBoundaryConditions = record
- {
- * True if frames compressed in a separate session will be
- * concatenated before the beginning of this one. False if this is a
- * stand-alone session, or if this session will encode the first
- * segment of a multi-segment compression. By default, false.
- }
- moreFramesBeforeStart: Boolean;
- {
- * True if frames compressed in a separate session will be
- * concatenated following the end of this one. False if this is a
- * stand-alone session, or if this session will encode the last
- * segment of a multi-segment compression. By default, false.
- }
- moreFramesAfterEnd: Boolean;
- end;
- {
- * Summary:
- * Properties of compression sessions options objects.
- }
- const
- {
- * Class identifier for compression session options object properties.
- }
- kQTPropertyClass_ICMCompressionSessionOptions = FourCharCode('icso');
- {
- * Enables temporal compression. By default, temporal compression is
- * disabled.
- * IMPORTANT: If you want temporal compression (P frames and/or B
- * frames) you must set this to true.
- }
- kICMCompressionSessionOptionsPropertyID_AllowTemporalCompression = FourCharCode('p ok'); { Boolean, Read/Write }
- {
- * Enables frame reordering.
- * In order to encode B frames, a compressor must reorder frames,
- * which means that the order in which they will be emitted and
- * stored (the decode order) is different from the order in which
- * they were presented to the compressor (the display order).
- * By default, frame reordering is disabled.
- * IMPORTANT: In order to encode using B frames, you must enable
- * frame reordering.
- }
- kICMCompressionSessionOptionsPropertyID_AllowFrameReordering = FourCharCode('b ok'); { Boolean, Read/Write }
- {
- * Indicates that durations of emitted frames are needed.
- * If this flag is set and source frames are provided with times but
- * not durations, then frames will be delayed so that durations can
- * be calculated as the difference between one frame's time stamp and
- * the next frame's time stamp.
- * By default, this flag is clear, so frames will not be delayed in
- * order to calculate durations.
- * IMPORTANT: If you will be passing encoded frames to
- * AddMediaSampleFromEncodedFrame, you must set this flag to true.
- }
- kICMCompressionSessionOptionsPropertyID_DurationsNeeded = FourCharCode('need'); { Boolean, Read/Write }
- {
- * The maximum interval between key frames, also known as the key
- * frame rate.
- * Key frames, also known as sync frames, reset inter-frame
- * dependencies; decoding a key frame is sufficient to prepare a
- * decompressor for correctly decoding the difference frames that
- * follow.
- * Compressors are allowed to generate key frames more frequently if
- * this would result in more efficient compression.
- * The default key frame interval is 0, which indicates that the
- * compressor should choose where to place all key frames. A key
- * frame interval of 1 indicates that every frame must be a key
- * frame, 2 indicates that at least every other frame must be a key
- * frame, etc.
- }
- kICMCompressionSessionOptionsPropertyID_MaxKeyFrameInterval = FourCharCode('kyfr'); { SInt32, Read/Write }
- {
- * The requested maximum interval between partial sync frames. If the
- * interval is n, any sequence of n successive frames must include at
- * least one key or partial sync frame.
- * Where supported, partial sync frames perform a partial reset of
- * inter-frame dependencies; decoding two partial sync frames and the
- * non-droppable difference frames between them is sufficient to
- * prepare a decompressor for correctly decoding the difference
- * frames that follow.
- * Compressors are allowed to generate partial sync frames more
- * frequently if this would result in more efficient compression.
- *
- * The default partial sync frame interval is 0, which indicates that
- * the compressor should choose where to place partial sync frames. A
- * partial sync frame interval of 1 means there can be no difference
- * frames, so it is equivalent to a key frame interval of 1. A
- * partial sync frame interval of 2 means that every other frame must
- * be a key frame or a partial sync frame.
- * Compressors that do not support partial sync frames will ignore
- * this setting.
- }
- kICMCompressionSessionOptionsPropertyID_MaxPartialSyncFrameInterval = FourCharCode('psfr'); { SInt32, Read/Write }
- {
- * Enables the compressor to modify frame times.
- * Some compressors are able to identify and coalesce runs of
- * identical frames and output single frames with longer duration, or
- * output frames at a different frame rate from the original. This
- * feature is controlled by the "allow frame time changes" flag. By
- * default, this flag is set to false, which forces compressors to
- * emit one encoded frame for every source frame, and to preserve
- * frame display times.
- * (Note: this feature replaces the practice of having compressors
- * return special high similarity values to indicate that frames
- * could be dropped.)
- * If you want to allow the compressor to modify frame times in order
- * to improve compression performance, enable frame time changes.
- }
- kICMCompressionSessionOptionsPropertyID_AllowFrameTimeChanges = FourCharCode('+ ok'); { Boolean, Read/Write }
- {
- * Enables the compressor to call the encoded-frame callback from a
- * different thread.
- * By default, the flag is false, which means that the compressor
- * must call the encoded-frame callback from the same thread that
- * ICMCompressionSessionEncodeFrame and
- * ICMCompressionSessionCompleteFrames were called on.
- }
- kICMCompressionSessionOptionsPropertyID_AllowAsyncCompletion = FourCharCode('asok'); { Boolean, Read/Write }
- {
- * The maximum frame delay count is the maximum number of frames that
- * a compressor is allowed to hold before it must output a compressed
- * frame. It limits the number of frames that may be held in the
- * "compression window". If the maximum frame delay count is M, then
- * before the call to encode frame N returns, frame N-M must have
- * been emitted.
- * The default is kICMUnlimitedFrameDelayCount, which sets no limit
- * on the compression window.
- }
- kICMCompressionSessionOptionsPropertyID_MaxFrameDelayCount = FourCharCode('cwin'); { SInt32, Read/Write }
- {
- * The maximum frame delay time is the maximum difference between a
- * source frame's display time and the corresponding encoded frame's
- * decode time. It limits the span of display time that may be held
- * in the "compression window". If the maximum frame delay time is
- * TM, then before the call to encode a frame with display time TN
- * returns, all frames with display times up to and including TN-TM
- * must have been emitted.
- * The default is kICMUnlimitedFrameDelayTime, which sets no time
- * limit on the compression window.
- }
- kICMCompressionSessionOptionsPropertyID_MaxFrameDelayTime = FourCharCode('cwit'); { TimeValue64, Read/Write }
- {
- * Sets a specific compressor component or component instance to be
- * used, or one of the wildcards anyCodec, bestSpeedCodec,
- * bestFidelityCodec, or bestCompressionCodec.
- * Use this API to force the Image Compression Manager to use a
- * specific compressor component or compressor component instance.
- * (If you pass in a component instance that you opened, the ICM will
- * not close that instance; you must do so after the compression
- * session is released.) To allow the Image Compression Manager to
- * choose the compressor component, set the compressorComponent to
- * anyCodec (the default), bestSpeedCodec, bestFidelityCodec or
- * bestCompressionCodec.
- }
- kICMCompressionSessionOptionsPropertyID_CompressorComponent = FourCharCode('imco'); { CompressorComponent, Read/Write }
- {
- * A handle containing compressor settings. The compressor will be
- * configured with these settings (by a call to
- * ImageCodecSetSettings) during ICMCompressionSessionCreate.
- }
- kICMCompressionSessionOptionsPropertyID_CompressorSettings = FourCharCode('cost'); { Handle, Read/Write }
- {
- * The depth for compression.
- * If a compressor does not support a specific depth, the closest
- * supported depth will be used (preferring deeper depths to
- * shallower depths). The default depth is k24RGBPixelFormat.
- }
- kICMCompressionSessionOptionsPropertyID_Depth = FourCharCode('deep'); { UInt32, Read/Write }
- {
- * The color table for compression. Used with indexed-color depths.
- *
- * Clients who get this property are responsible for disposing the
- * returned CTabHandle.
- }
- kICMCompressionSessionOptionsPropertyID_ColorTable = FourCharCode('clut'); { CTabHandle, Read/Write}
- {
- * The compression quality.
- * This value is always used to set the spatialQuality; if temporal
- * compression is enabled, it is also used to set temporalQuality.
- * <BR> The default quality is codecNormalQuality.
- }
- kICMCompressionSessionOptionsPropertyID_Quality = FourCharCode('qual'); { CodecQ, Read/Write }
- {
- * The long-term desired average data rate in bytes per second.
- * This is not a hard limit.
- * The default data rate is zero, which indicates that the quality
- * setting should determine the size of compressed data.
- * Note that data rate settings only have an effect when timing
- * information is provided for source frames, and that some codecs do
- * not support limiting to specified data rates.
- }
- kICMCompressionSessionOptionsPropertyID_AverageDataRate = FourCharCode('aver'); { SInt32, Read/Write }
- {
- * Zero, one or two hard limits on data rate.
- * Each hard limit is described by a data size in bytes and a
- * duration in seconds, and requires that the total size of
- * compressed data for any contiguous segment of that duration (in
- * decode time) must not exceed the data size.
- * By default, no data rate limits are set.
- * When setting this property, the inPropValueSize parameter should
- * be the number of data rate limits multiplied by
- * sizeof(ICMDataRateLimit).
- * Note that data rate settings only have an effect when timing
- * information is provided for source frames, and that some codecs do
- * not support limiting to specified data rates.
- }
- kICMCompressionSessionOptionsPropertyID_DataRateLimits = FourCharCode('hard'); { C array of ICMDataRateLimit struct, Read/Write }
- {
- * The current number of data rate limits.
- }
- kICMCompressionSessionOptionsPropertyID_DataRateLimitCount = FourCharCode('har#'); { UInt32, Read }
- {
- * The maximum allowed number of data rate limits. (Currently 2.)
- }
- kICMCompressionSessionOptionsPropertyID_MaxDataRateLimits = FourCharCode('mhar'); { UInt32, Read }
- {
- * Indicates that the source was previously compressed.
- * This property is purely an optional, informational hint to the
- * compressor; by default it is false.
- }
- kICMCompressionSessionOptionsPropertyID_WasCompressed = FourCharCode('wasc'); { Boolean, Read/Write }
- {
- * Recommends a CPU time budget for the compressor in microseconds
- * per frame.
- * Zero means to go as fast as possible.
- * By default, this is set to kICMUnlimitedCPUTimeBudget, which sets
- * no limit.
- * This is an advisory hint to the compressor, and some compressors
- * may ignore it. Multithreaded compressors may use this amount of
- * CPU time on each processor.
- * Compressors should not feel compelled to use the full time budget
- * if they complete ahead of time!
- }
- kICMCompressionSessionOptionsPropertyID_CPUTimeBudget = FourCharCode('cput'); { UInt32, Read/Write }
- {
- * Storage for multi-pass compression.
- * To enable multipass compression, the client must provide a storage
- * location for multipass data. Use
- * ICMMultiPassStorageCreateWithTemporaryFile to have the ICM store
- * it in a temporary file. Use
- * ICMMultiPassStorageCreateWithCallbacks to manage the storage
- * yourself.
- * Note that the amount of multipass data to be stored can be
- * substantial; it could be greater than the size of the output movie
- * file.
- * If this property is not NULL, the client must call
- * ICMCompressionSessionBeginPass and ICMCompressionSessionEndPass
- * around groups of calls to ICMCompressionSessionEncodeFrame.
- * By default, this property is NULL and multipass compression is
- * not enabled. The compression session options object retains the
- * multipass storage object, when one is set.
- }
- kICMCompressionSessionOptionsPropertyID_MultiPassStorage = FourCharCode('imps'); { ICMMultiPassStorageRef, Read/Write }
- {
- * Indicates the number of source frames, if known. If nonzero, this
- * should be the exact number of times that the client calls
- * ICMCompressionSessionEncodeFrame in each pass.
- * The default is 0, which indicates that the number of source frames
- * is not known.
- }
- kICMCompressionSessionOptionsPropertyID_SourceFrameCount = FourCharCode('frco'); { UInt64, Read/Write }
- {
- * Indicates the expected frame rate, if known. The frame rate is
- * measured in frames per second. This is not used to control the
- * frame rate; it is provided as a hint to the compressor so that it
- * can set up internal configuration before compression begins. The
- * actual frame rate will depend on frame durations and may vary. By
- * default, this is zero, indicating "unknown".
- }
- kICMCompressionSessionOptionsPropertyID_ExpectedFrameRate = FourCharCode('fran'); { Fixed, Read/Write }
- {
- * Indicates how source frames to a compression session should be
- * scaled if the dimensions and/or display aspect ratio do not match.
- }
- kICMCompressionSessionOptionsPropertyID_ScalingMode = FourCharCode('scam'); { OSType, Read/Write }
- {
- * Describes the clean aperture for compressed frames. Note that if
- * the compressor enforces a clean aperture, it will override this
- * setting. The clean aperture will be set on the output image
- * description and may affect scaling in some scaling modes. By
- * default, this is all zeros, meaning unset.
- }
- kICMCompressionSessionOptionsPropertyID_CleanAperture = FourCharCode('clap'); { Native-endian CleanApertureImageDescriptionExtension, Read/Write }
- {
- * Describes the pixel aspect ratio for compressed frames. Note that
- * if the compressor enforces a pixel aspect ratio, it will override
- * this setting. The pixel aspect ratio will be set on the output
- * image description and may affect scaling in some scaling modes. By
- * default, this is all zeros, meaning unset.
- }
- kICMCompressionSessionOptionsPropertyID_PixelAspectRatio = FourCharCode('pasp'); { Native-endian PixelAspectRatioImageDescriptionExtension, Read/Write }
- {
- * Describes the number and order of fields for compressed frames.
- * Note that if the compressor enforces field info, it will override
- * this setting. The field info will be set on the output image
- * description and may affect scaling in some scaling modes. By
- * default, this is all zeros, meaning unset.
- }
- kICMCompressionSessionOptionsPropertyID_FieldInfo = FourCharCode('fiel'); { FieldInfoImageDescriptionExtension2, Read/Write }
- {
- * Indicates whether and how a compression session's frames will be
- * concatenated with other compressed frames to form a longer series.
- }
- kICMCompressionSessionOptionsPropertyID_SimpleBoundaryConditions = FourCharCode('ends'); { ICMSimpleBoundaryConditions struct, Read/Write }
- {
- * Requests additional distortion to be applied to the aspect ratio
- * in the kICMScalingMode_Letterbox and kICMScalingMode_Trim scaling
- * modes. Values greater than fixed1 mean wider, values less than
- * fixed1 mean narrower. For example, a value of X2Fix(2.0) would
- * make the picture aspect ratio twice as wide.
- }
- kICMCompressionSessionOptionsPropertyID_ExtraAspectRatioStretchFactor = FourCharCode('exsf'); { Fixed, Default fixed1, Read/Write }
- {
- * ICMCompressionSessionOptionsSetAllowTemporalCompression()
- *
- * Summary:
- * Enables temporal compression.
- *
- * Discussion:
- * By default, temporal compression is disabled.
- * IMPORTANT: If you want temporal compression (P frames and/or B
- * frames) you must set this to true.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsSetAllowTemporalCompression( options: ICMCompressionSessionOptionsRef; allowTemporalCompression: Boolean ): OSStatus; external name '_ICMCompressionSessionOptionsSetAllowTemporalCompression';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsGetAllowTemporalCompression()
- *
- * Summary:
- * Retrieves the allow temporal compression flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsGetAllowTemporalCompression( options: ICMCompressionSessionOptionsRef ): Boolean; external name '_ICMCompressionSessionOptionsGetAllowTemporalCompression';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsSetAllowFrameReordering()
- *
- * Summary:
- * Enables frame reordering.
- *
- * Discussion:
- * In order to encode B frames, a compressor must reorder frames,
- * which means that the order in which they will be emitted and
- * stored (the decode order) is different from the order in which
- * they were presented to the compressor (the display order).
- * By default, frame reordering is disabled.
- * IMPORTANT: In order to encode using B frames, you must enable
- * frame reordering.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsSetAllowFrameReordering( options: ICMCompressionSessionOptionsRef; allowFrameReordering: Boolean ): OSStatus; external name '_ICMCompressionSessionOptionsSetAllowFrameReordering';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsGetAllowFrameReordering()
- *
- * Summary:
- * Retrieves the allow frame reordering flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsGetAllowFrameReordering( options: ICMCompressionSessionOptionsRef ): Boolean; external name '_ICMCompressionSessionOptionsGetAllowFrameReordering';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsSetDurationsNeeded()
- *
- * Summary:
- * Indicates that durations of emitted frames are needed.
- *
- * Discussion:
- * If this flag is set and source frames are provided with times but
- * not durations, then frames will be delayed so that durations can
- * be calculated as the difference between one frame's time stamp
- * and the next frame's time stamp.
- * By default, this flag is clear, so frames will not be delayed in
- * order to calculate durations.
- * IMPORTANT: If you will be passing encoded frames to
- * AddMediaSampleFromEncodedFrame, you must set this flag to true.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsSetDurationsNeeded( options: ICMCompressionSessionOptionsRef; decodeDurationsNeeded: Boolean ): OSStatus; external name '_ICMCompressionSessionOptionsSetDurationsNeeded';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsGetDurationsNeeded()
- *
- * Summary:
- * Retrieves the "durations needed" flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsGetDurationsNeeded( options: ICMCompressionSessionOptionsRef ): Boolean; external name '_ICMCompressionSessionOptionsGetDurationsNeeded';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsSetMaxKeyFrameInterval()
- *
- * Summary:
- * Sets the maximum interval between key frames (also known as the
- * key frame rate).
- *
- * Discussion:
- * Compressors are allowed to generate key frames more frequently if
- * this would result in more efficient compression.
- * The default key frame interval is 0, which indicates that the
- * compressor should choose where to place all key frames.
- * (Note: this is a break with previous practice, which used a key
- * frame rate of zero to disable temporal compression.)
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsSetMaxKeyFrameInterval( options: ICMCompressionSessionOptionsRef; maxKeyFrameInterval: SInt32 ): OSStatus; external name '_ICMCompressionSessionOptionsSetMaxKeyFrameInterval';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsGetMaxKeyFrameInterval()
- *
- * Summary:
- * Retrieves the maximum key frame interval.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsGetMaxKeyFrameInterval( options: ICMCompressionSessionOptionsRef ): SInt32; external name '_ICMCompressionSessionOptionsGetMaxKeyFrameInterval';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsSetAllowFrameTimeChanges()
- *
- * Summary:
- * Enables the compressor to modify frame times.
- *
- * Discussion:
- * Some compressors are able to identify and coalesce runs of
- * identical frames and output single frames with longer duration,
- * or output frames at a different frame rate from the original.
- * This feature is controlled by the "allow frame time changes"
- * flag. By default, this flag is set to false, which forces
- * compressors to emit one encoded frame for every source frame, and
- * to preserve frame display times.
- * (Note: this feature replaces the practice of having compressors
- * return special high similarity values to indicate that frames
- * could be dropped.)
- * If you want to allow the compressor to modify frame times in
- * order to improve compression performance, enable frame time
- * changes.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsSetAllowFrameTimeChanges( options: ICMCompressionSessionOptionsRef; allowFrameTimeChanges: Boolean ): OSStatus; external name '_ICMCompressionSessionOptionsSetAllowFrameTimeChanges';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionSessionOptionsGetAllowFrameTimeChanges()
- *
- * Summary:
- * Retrieves the allow frame time changes flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionSessionOptionsGetAllowFrameTimeChanges( options: ICMCompressionSessionOptionsRef ): Boolean; external name '_ICMCompressionSessionOptionsGetAllowFrameTimeChanges';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- { ICMMultiPassStorageRef routines }
- {
- * ICMMultiPassStorageCreationFlags
- *
- }
- type
- ICMMultiPassStorageCreationFlags = UInt32;
- const
- {
- * Indicates that the temporary file should not be deleted when the
- * multipass storage is released.
- }
- kICMMultiPassStorage_DoNotDeleteWhenDone = 1 shl 0;
- {
- * ICMMultiPassStorageCreateWithTemporaryFile()
- *
- * Summary:
- * Creates a multipass storage using a temporary file.
- *
- * Discussion:
- * If you pass NULL for directoryRef, the ICM will use the user's
- * temporary items folder.
- * If you pass NULL for fileName, the ICM will pick a unique name.
- *
- * The file will be deleted when the multipass storage is released,
- * unless you set the kICMMultiPassStorage_DoNotDeleteWhenDone flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMMultiPassStorageCreateWithTemporaryFile( allocator: CFAllocatorRef { can be NULL }; directoryRef: FSRefPtr { can be NULL }; fileName: CFStringRef { can be NULL }; flags: ICMMultiPassStorageCreationFlags; var multiPassStorageOut: ICMMultiPassStorageRef ): OSStatus; external name '_ICMMultiPassStorageCreateWithTemporaryFile';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMMultiPassStorageStep
- *
- * Summary:
- * Indicates a jump in time stamps used to index multipass storage.
- }
- type
- ICMMultiPassStorageStep = UInt32;
- const
- {
- * Requests the first time stamp at which a value is stored.
- }
- kICMMultiPassStorage_GetFirstTimeStamp = 1;
- {
- * Requests the previous time stamp before the given time stamp at
- * which a value is stored.
- }
- kICMMultiPassStorage_GetPreviousTimeStamp = 2;
- {
- * Requests the next time stamp after the given time stamp at which a
- * value is stored.
- }
- kICMMultiPassStorage_GetNextTimeStamp = 3;
- {
- * Requests the last time stamp at which a value is stored.
- }
- kICMMultiPassStorage_GetLastTimeStamp = 4;
- {
- * ICMMultiPassSetDataAtTimeStampCallback
- *
- * Summary:
- * Stores a value at a given time stamp.
- *
- * Discussion:
- * The new data should replace any previous data held at that
- * timestamp with that index.
- *
- * Parameters:
- *
- * storageRefCon:
- * The callbacks' reference value.
- *
- * timeStamp:
- * The time stamp at which the value should be stored.
- *
- * index:
- * An index by which multiple values may be stored at a time
- * stamp. The meaning of individual indexes is private to the
- * compressor.
- *
- * data:
- * The data to be stored, or NULL to delete the value. The
- * contents are private to the compressor component.
- }
- type
- ICMMultiPassSetDataAtTimeStampCallback = function( storageRefCon: UnivPtr; timeStamp: TimeValue64; index: SIGNEDLONG; data: CFDataRef ): OSStatus;
- {
- * ICMMultiPassGetTimeStampCallback
- *
- * Summary:
- * Retrieves a time stamp for which a value is stored.
- *
- * Parameters:
- *
- * storageRefCon:
- * The callbacks' reference value.
- *
- * fromTimeStamp:
- * The initial time stamp. Ignored for some values of step.
- *
- * step:
- * Indicates the kind of time stamp search to perform.
- *
- * timeStampOut:
- * Points to a TimeValue64 to receive the found time stamp. Set to
- * -1 if no time stamp is found.
- }
- type
- ICMMultiPassGetTimeStampCallback = function( storageRefCon: UnivPtr; fromTimeStamp: TimeValue64; step: ICMMultiPassStorageStep; var timeStampOut: TimeValue64 ): OSStatus;
- {
- * ICMMultiPassCopyDataAtTimeStampCallback
- *
- * Summary:
- * Retrieves a value at a given time stamp and index.
- *
- * Parameters:
- *
- * storageRefCon:
- * The callbacks' reference value.
- *
- * timeStamp:
- * The time stamp at which the value should be retrieved.
- *
- * index:
- * An index by which multiple values may be stored at a time
- * stamp. The meaning of individual indexes is private to the
- * compressor.
- *
- * dataOut:
- * Points to a variable to receive the value. Set to a
- * newly-created CFMutableData containing the value for the given
- * time stamp and index, or set to NULL if no value is at that
- * time stamp and index. It will be the callers responsibility to
- * release the CFMutableData.
- }
- type
- ICMMultiPassCopyDataAtTimeStampCallback = function( storageRefCon: UnivPtr; timeStamp: TimeValue64; index: SIGNEDLONG; var dataOut: CFMutableDataRef ): OSStatus;
- {
- * ICMMultiPassReleaseCallback
- *
- * Summary:
- * Called when the multipass storage's retain count drops to zero.
- *
- * Parameters:
- *
- * storageRefCon:
- * The callbacks' reference value.
- }
- type
- ICMMultiPassReleaseCallback = function( storageRefCon: UnivPtr ): OSStatus;
- {
- * ICMMultiPassStorageCallbacks
- *
- * Summary:
- * A collection of callbacks for creating a custom multipass storage
- * object.
- }
- type
- ICMMultiPassStorageCallbacks = record
- {
- * The version of the struct. Set to
- * kICMMultiPassStorageCallbacksVersionOne.
- }
- version: UInt32;
- {
- * The callbacks' reference value.
- }
- storageRefCon: UnivPtr;
- {
- * The callback for storing values.
- }
- setDataAtTimeStampCallback: ICMMultiPassSetDataAtTimeStampCallback;
- {
- * The callback for finding time stamps.
- }
- getTimeStampCallback: ICMMultiPassGetTimeStampCallback;
- {
- * The callback for retrieving values.
- }
- copyDataAtTimeStampCallback: ICMMultiPassCopyDataAtTimeStampCallback;
- {
- * The callback for disposing the callback's state when done.
- }
- releaseCallback: ICMMultiPassReleaseCallback;
- end;
- const
- kICMMultiPassStorageCallbacksVersionOne = 1;
- {
- * ICMMultiPassStorageCreateWithCallbacks()
- *
- * Summary:
- * Assembles a multipass storage mechanism from callbacks.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMMultiPassStorageCreateWithCallbacks( allocator: CFAllocatorRef { can be NULL }; var callbacks: ICMMultiPassStorageCallbacks; var multiPassStorageOut: ICMMultiPassStorageRef ): OSStatus; external name '_ICMMultiPassStorageCreateWithCallbacks';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMMultiPassStorageRetain()
- *
- * Summary:
- * Increments the retain count of a multipass storage object.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMMultiPassStorageRetain( multiPassStorage: ICMMultiPassStorageRef ): ICMMultiPassStorageRef; external name '_ICMMultiPassStorageRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMMultiPassStorageRelease()
- *
- * Summary:
- * Decrements the retain count of a multipass storage object. If it
- * drops to zero, the object is disposed.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure ICMMultiPassStorageRelease( multiPassStorage: ICMMultiPassStorageRef ); external name '_ICMMultiPassStorageRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMMultiPassStorageGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for multipass storage objects.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMMultiPassStorageGetTypeID: CFTypeID; external name '_ICMMultiPassStorageGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- { ICMCompressionFrameOptionsRef routines }
- {
- * ICMCompressionFrameOptionsCreate()
- *
- * Summary:
- * Creates a frame compression options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsCreate( allocator: CFAllocatorRef { can be NULL }; session: ICMCompressionSessionRef; var options: ICMCompressionFrameOptionsRef ): OSStatus; external name '_ICMCompressionFrameOptionsCreate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsCreateCopy()
- *
- * Summary:
- * Copies a frame compression options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsCreateCopy( allocator: CFAllocatorRef { can be NULL }; originalOptions: ICMCompressionFrameOptionsRef; var copiedOptions: ICMCompressionFrameOptionsRef ): OSStatus; external name '_ICMCompressionFrameOptionsCreateCopy';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsRetain()
- *
- * Summary:
- * Increments the retain count of a frame compression options object.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsRetain( options: ICMCompressionFrameOptionsRef ): ICMCompressionFrameOptionsRef; external name '_ICMCompressionFrameOptionsRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsRelease()
- *
- * Summary:
- * Decrements the retain count of a frame compression options
- * object. If it drops to zero, the object is disposed.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure ICMCompressionFrameOptionsRelease( options: ICMCompressionFrameOptionsRef ); external name '_ICMCompressionFrameOptionsRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for frame compression options objects.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsGetTypeID: CFTypeID; external name '_ICMCompressionFrameOptionsGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsGetPropertyInfo()
- *
- * Summary:
- * Retrieves information about properties of a compression frame
- * options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsGetPropertyInfo( options: ICMCompressionFrameOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; outPropType: ComponentValueTypePtr { can be NULL }; outPropValueSize: ByteCountPtr { can be NULL }; outPropertyFlags: UInt32Ptr { can be NULL } ): OSStatus; external name '_ICMCompressionFrameOptionsGetPropertyInfo';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsGetProperty()
- *
- * Summary:
- * Retrieves the value of a specific property of a compression frame
- * options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsGetProperty( options: ICMCompressionFrameOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; outPropValueAddress: ComponentValuePtr; outPropValueSizeUsed: ByteCountPtr { can be NULL } ): OSStatus; external name '_ICMCompressionFrameOptionsGetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsSetProperty()
- *
- * Summary:
- * Sets the value of a specific property of a compression frame
- * options object.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsSetProperty( options: ICMCompressionFrameOptionsRef; inPropClass: ComponentPropertyClass; inPropID: ComponentPropertyID; inPropValueSize: ByteCount; inPropValueAddress: ConstComponentValuePtr ): OSStatus; external name '_ICMCompressionFrameOptionsSetProperty';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * Summary:
- * Properties of compression frame options objects.
- }
- const
- {
- * Class identifier for compression frame options object properties.
- }
- kQTPropertyClass_ICMCompressionFrameOptions = FourCharCode('icfo');
- {
- * Forces frames to be compressed as key frames.
- * The compressor must obey the "force key frame" flag if set. By
- * default this property is false.
- }
- kICMCompressionFrameOptionsPropertyID_ForceKeyFrame = FourCharCode('keyf'); { Boolean, Read/Write }
- {
- * Requests a frame be compressed as a particular frame type.
- * The frame type setting may be ignored by the compressor if not
- * appropriate.
- * By default this is set to kICMFrameType_Unknown.
- * Do not assume that kICMFrameType_I means a key frame; if you need
- * a key frame, set the "force key frame" property.
- }
- kICMCompressionFrameOptionsPropertyID_FrameType = FourCharCode('frty'); { ICMFrameType, Read/Write }
- {
- * ICMCompressionFrameOptionsSetForceKeyFrame()
- *
- * Summary:
- * Forces frames to be compressed as key frames.
- *
- * Discussion:
- * The compressor must obey the "force key frame" flag if set. By
- * default this is set false.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsSetForceKeyFrame( options: ICMCompressionFrameOptionsRef; forceKeyFrame: Boolean ): OSStatus; external name '_ICMCompressionFrameOptionsSetForceKeyFrame';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsGetForceKeyFrame()
- *
- * Summary:
- * Retrieves the "force key frame" flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsGetForceKeyFrame( options: ICMCompressionFrameOptionsRef ): Boolean; external name '_ICMCompressionFrameOptionsGetForceKeyFrame';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsSetFrameType()
- *
- * Summary:
- * Requests a frame be compressed as a particular frame type.
- *
- * Discussion:
- * The frame type setting may be ignored by the compressor if not
- * appropriate.
- * By default this is set to kICMFrameType_Unknown.
- * Do not assume that kICMFrameType_I means a key frame; if you need
- * a key frame, set forceKeyFrame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsSetFrameType( options: ICMCompressionFrameOptionsRef; frameType: ICMFrameType ): OSStatus; external name '_ICMCompressionFrameOptionsSetFrameType';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressionFrameOptionsGetFrameType()
- *
- * Summary:
- * Retrieves the frame type setting.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressionFrameOptionsGetFrameType( options: ICMCompressionFrameOptionsRef ): ICMFrameType; external name '_ICMCompressionFrameOptionsGetFrameType';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- { ICMEncodedFrameRef routines }
- {
- * ICMEncodedFrameRetain()
- *
- * Summary:
- * Increments the retain count of an encoded frame object.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameRetain( frame: ICMEncodedFrameRef ): ICMEncodedFrameRef; external name '_ICMEncodedFrameRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameRelease()
- *
- * Summary:
- * Decrements the retain count of an encoded frame object. If it
- * drops to zero, the object is disposed.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure ICMEncodedFrameRelease( frame: ICMEncodedFrameRef ); external name '_ICMEncodedFrameRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for encoded frame objects.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetTypeID: CFTypeID; external name '_ICMEncodedFrameGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetDataPtr()
- *
- * Summary:
- * Gets the data buffer.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetDataPtr( frame: ICMEncodedFrameRef ): UInt8Ptr; external name '_ICMEncodedFrameGetDataPtr';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetBufferSize()
- *
- * Summary:
- * Gets the size of the data buffer.
- *
- * Discussion:
- * This is the physical size of the buffer.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetBufferSize( frame: ICMEncodedFrameRef ): ByteCount; external name '_ICMEncodedFrameGetBufferSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetDataSize()
- *
- * Summary:
- * Gets the data size of the compressed frame in the buffer.
- *
- * Discussion:
- * This is the logical size of the frame data. It may be less than
- * the physical size of the buffer.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetDataSize( frame: ICMEncodedFrameRef ): ByteCount; external name '_ICMEncodedFrameGetDataSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameSetDataSize()
- *
- * Summary:
- * Sets the data size of the compressed frame in the buffer.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameSetDataSize( frame: ICMMutableEncodedFrameRef; dataSize: ByteCount ): OSStatus; external name '_ICMEncodedFrameSetDataSize';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetDecodeNumber()
- *
- * Summary:
- * Retrieves the decode number.
- *
- * Discussion:
- * The ICM automatically stamps ascending decode numbers on frames
- * after the compressor emits them. The first decode number in a
- * session is 1.
- * Note: Compressors should not call this function.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetDecodeNumber( frame: ICMEncodedFrameRef ): UInt32; external name '_ICMEncodedFrameGetDecodeNumber';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetTimeScale()
- *
- * Summary:
- * Retrieves the timescale.
- *
- * Discussion:
- * This is always the same as the timescale of the compression
- * session.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetTimeScale( frame: ICMEncodedFrameRef ): TimeScale; external name '_ICMEncodedFrameGetTimeScale';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetImageDescription()
- *
- * Summary:
- * Retrieves the image description.
- *
- * Discussion:
- * Returns the same image description handle as
- * ICMCompressionSessionGetImageDescription.
- * IMPORTANT: The caller should NOT dispose this handle.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetImageDescription( frame: ICMEncodedFrameRef; var imageDescOut: ImageDescriptionHandle ): OSStatus; external name '_ICMEncodedFrameGetImageDescription';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetValidTimeFlags()
- *
- * Summary:
- * Retrieves flags indicating which of the time stamps and durations
- * are valid.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetValidTimeFlags( frame: ICMEncodedFrameRef ): ICMValidTimeFlags; external name '_ICMEncodedFrameGetValidTimeFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetDecodeTimeStamp()
- *
- * Summary:
- * Retrieves the frame's decode time stamp.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetDecodeTimeStamp( frame: ICMEncodedFrameRef ): TimeValue64; external name '_ICMEncodedFrameGetDecodeTimeStamp';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetDisplayTimeStamp()
- *
- * Summary:
- * Retrieves the frame's display time stamp.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetDisplayTimeStamp( frame: ICMEncodedFrameRef ): TimeValue64; external name '_ICMEncodedFrameGetDisplayTimeStamp';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetDisplayOffset()
- *
- * Summary:
- * Retrieves the frame's display offset, which is the offset from
- * decode time stamp to display time stamp.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetDisplayOffset( frame: ICMEncodedFrameRef ): TimeValue64; external name '_ICMEncodedFrameGetDisplayOffset';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetDecodeDuration()
- *
- * Summary:
- * Retrieves the frame's decode duration.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetDecodeDuration( frame: ICMEncodedFrameRef ): TimeValue64; external name '_ICMEncodedFrameGetDecodeDuration';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetDisplayDuration()
- *
- * Summary:
- * Retrieves the frame's display duration.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetDisplayDuration( frame: ICMEncodedFrameRef ): TimeValue64; external name '_ICMEncodedFrameGetDisplayDuration';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameSetValidTimeFlags()
- *
- * Summary:
- * Sets flags that indicate which of the time stamps and durations
- * are valid.
- *
- * Discussion:
- * Note that setting the (decode/display) (timestamp/duration)
- * automatically sets the corresponding valid time flags. For
- * example, calling ICMEncodedFrameSetDecodeTimeStamp sets
- * kICMValidTime_DisplayTimeStampIsValid. If both decode timestamp
- * and display timestamp are valid,
- * kICMValidTime_DisplayOffsetIsValid is automatically set.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameSetValidTimeFlags( frame: ICMMutableEncodedFrameRef; validTimeFlags: ICMValidTimeFlags ): OSStatus; external name '_ICMEncodedFrameSetValidTimeFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameSetDecodeTimeStamp()
- *
- * Summary:
- * Sets the decode time stamp.
- *
- * Discussion:
- * This automatically sets the kICMValidTime_DecodeTimeStampIsValid
- * flag. If the display timestamp is valid, it also sets the
- * kICMValidTime_DisplayOffsetIsValid flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameSetDecodeTimeStamp( frame: ICMMutableEncodedFrameRef; decodeTimeStamp: TimeValue64 ): OSStatus; external name '_ICMEncodedFrameSetDecodeTimeStamp';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameSetDisplayTimeStamp()
- *
- * Summary:
- * Sets the display time stamp.
- *
- * Discussion:
- * This automatically sets the kICMValidTime_DisplayTimeStampIsValid
- * flag. If the decode timestamp is valid, it also sets the
- * kICMValidTime_DisplayOffsetIsValid flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameSetDisplayTimeStamp( frame: ICMMutableEncodedFrameRef; displayTimeStamp: TimeValue64 ): OSStatus; external name '_ICMEncodedFrameSetDisplayTimeStamp';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameSetDecodeDuration()
- *
- * Summary:
- * Sets the decode duration.
- *
- * Discussion:
- * This automatically sets the kICMValidTime_DecodeDurationIsValid
- * flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameSetDecodeDuration( frame: ICMMutableEncodedFrameRef; decodeDuration: TimeValue64 ): OSStatus; external name '_ICMEncodedFrameSetDecodeDuration';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameSetDisplayDuration()
- *
- * Summary:
- * Sets the display duration.
- *
- * Discussion:
- * This automatically sets the kICMValidTime_DisplayDurationIsValid
- * flag.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameSetDisplayDuration( frame: ICMMutableEncodedFrameRef; displayDuration: TimeValue64 ): OSStatus; external name '_ICMEncodedFrameSetDisplayDuration';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetMediaSampleFlags()
- *
- * Summary:
- * Retrieves the media sample flags for an encoded frame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetMediaSampleFlags( frame: ICMEncodedFrameRef ): MediaSampleFlags; external name '_ICMEncodedFrameGetMediaSampleFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameSetMediaSampleFlags()
- *
- * Summary:
- * Sets the media sample flags for an encoded frame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameSetMediaSampleFlags( frame: ICMMutableEncodedFrameRef; mediaSampleFlags_: MediaSampleFlags ): OSStatus; external name '_ICMEncodedFrameSetMediaSampleFlags';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetFrameType()
- *
- * Summary:
- * Retrieves the frame type for an encoded frame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetFrameType( frame: ICMEncodedFrameRef ): ICMFrameType; external name '_ICMEncodedFrameGetFrameType';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameSetFrameType()
- *
- * Summary:
- * Sets the frame type for an encoded frame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameSetFrameType( frame: ICMMutableEncodedFrameRef; frameType: ICMFrameType ): OSStatus; external name '_ICMEncodedFrameSetFrameType';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetSimilarity()
- *
- * Summary:
- * Retrieves the similarity for an encoded frame.
- *
- * Discussion:
- * 1.0 means identical. 0.0 means not at all alike. By default,
- * this is set to -1.0, which means unknown.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetSimilarity( frame: ICMEncodedFrameRef ): Float32; external name '_ICMEncodedFrameGetSimilarity';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameSetSimilarity()
- *
- * Summary:
- * Sets the similarity for an encoded frame.
- *
- * Discussion:
- * 1.0 means identical. 0.0 means not at all alike.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameSetSimilarity( frame: ICMMutableEncodedFrameRef; similarity: Float32 ): OSStatus; external name '_ICMEncodedFrameSetSimilarity';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameGetSourceFrameRefCon()
- *
- * Summary:
- * Retrieves the source frame reference value.
- *
- * Discussion:
- * This is copied from the sourceFrameRefCon parameter to
- * ICMCompressionSessionEncodeFrame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameGetSourceFrameRefCon( frame: ICMEncodedFrameRef ): UnivPtr; external name '_ICMEncodedFrameGetSourceFrameRefCon';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- { ICMCompressorSession interface for compressor components }
- {
- * ICMCompressorSessionRef
- *
- * Summary:
- * Represents the session between the ICM and an image compressor
- * component.
- *
- * Discussion:
- * (Do not confuse this with ICMCompressionSessionRef, which is the
- * session between the client and the ICM.) Note: compressors do not
- * need to make any retain or release calls on this token.
- }
- type
- ICMCompressorSessionRef = ^OpaqueICMCompressorSession; { an opaque type }
- OpaqueICMCompressorSession = record end;
- {
- * ICMCompressorSourceFrameRef
- *
- * Summary:
- * An opaque token that represents a frame that has been passed to
- * ICMCompressionSessionEncodeFrame.
- *
- * Discussion:
- * Such tokens are passed to the compressor component, which may
- * retain a window of them in order to perform out-of-order encoding.
- }
- type
- ICMCompressorSourceFrameRef = ^OpaqueICMCompressorSourceFrame; { an opaque type }
- OpaqueICMCompressorSourceFrame = record end;
- ICMCompressorSourceFrameRefPtr = ^ICMCompressorSourceFrameRef;
- {
- * ICMCompressorSourceFrameRetain()
- *
- * Summary:
- * Increments the retain count of a source frame object.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressorSourceFrameRetain( sourceFrame: ICMCompressorSourceFrameRef ): ICMCompressorSourceFrameRef; external name '_ICMCompressorSourceFrameRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressorSourceFrameRelease()
- *
- * Summary:
- * Decrements the retain count of a source frame object. If it
- * drops to zero, the object is disposed.
- *
- * Discussion:
- * If you pass NULL to this function, nothing happens.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure ICMCompressorSourceFrameRelease( sourceFrame: ICMCompressorSourceFrameRef ); external name '_ICMCompressorSourceFrameRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressorSourceFrameGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for source frame objects.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressorSourceFrameGetTypeID: CFTypeID; external name '_ICMCompressorSourceFrameGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressorSourceFrameGetPixelBuffer()
- *
- * Summary:
- * Retrieves a source frame's pixel buffer.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressorSourceFrameGetPixelBuffer( sourceFrame: ICMCompressorSourceFrameRef ): CVPixelBufferRef; external name '_ICMCompressorSourceFrameGetPixelBuffer';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressorSourceFrameGetDisplayNumber()
- *
- * Summary:
- * Retrieves a source frame's display number.
- *
- * Discussion:
- * The ICM tags source frames with display numbers in the order they
- * are passed to ICMCompressionSessionEncodeFrame; the first display
- * number is 1. Compressors may compare these numbers to work out
- * whether prediction is forward or backward even when display times
- * are not provided.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressorSourceFrameGetDisplayNumber( sourceFrame: ICMCompressorSourceFrameRef ): SIGNEDLONG; external name '_ICMCompressorSourceFrameGetDisplayNumber';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressorSourceFrameGetDisplayTimeStampAndDuration()
- *
- * Summary:
- * Retrieves the display time stamp and duration of a source frame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressorSourceFrameGetDisplayTimeStampAndDuration( sourceFrame: ICMCompressorSourceFrameRef; displayTimeStampOut: TimeValue64Ptr { can be NULL }; displayDurationOut: TimeValue64Ptr { can be NULL }; timeScaleOut: TimeScalePtr { can be NULL }; validTimeFlagsOut: ICMValidTimeFlagsPtr { can be NULL } ): OSStatus; external name '_ICMCompressorSourceFrameGetDisplayTimeStampAndDuration';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressorSourceFrameGetFrameOptions()
- *
- * Summary:
- * Retrieves the frame compression options for a source frame.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressorSourceFrameGetFrameOptions( sourceFrame: ICMCompressorSourceFrameRef ): ICMCompressionFrameOptionsRef; external name '_ICMCompressorSourceFrameGetFrameOptions';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressorSourceFrameDetachPixelBuffer()
- *
- * Summary:
- * Disconnects the pixel buffer from the source frame and allows it
- * to be released.
- *
- * Discussion:
- * Compressor components often need to hold onto
- * ICMCompressorSourceFrameRefs for some time after they are done
- * with the pixel buffers. In order to allow pixel buffer memory to
- * be released earlier, they may call
- * ICMCompressorSourceFrameDetachPixelBuffer to declare that they
- * have no further need for the source frame's pixel buffer. After
- * calling this, ICMCompressorSourceFrameGetPixelBuffer will return
- * NULL.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressorSourceFrameDetachPixelBuffer( sourceFrame: ICMCompressorSourceFrameRef ): OSStatus; external name '_ICMCompressorSourceFrameDetachPixelBuffer';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressorSessionDropFrame()
- *
- * Summary:
- * Called by a compressor to indicate that sourceFrame has been
- * dropped and will not contribute to any encoded frames.
- *
- * Discussion:
- * Calling this function does not automatically release the source
- * frame; if the compressor called ICMCompressorSourceFrameRetain it
- * should still call ICMCompressorSourceFrameRelease.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressorSessionDropFrame( session: ICMCompressorSessionRef; sourceFrame: ICMCompressorSourceFrameRef ): OSStatus; external name '_ICMCompressorSessionDropFrame';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMCompressorSessionEmitEncodedFrame()
- *
- * Summary:
- * Called by a compressor to output an encoded frame corresponding
- * to one (or more) source frames.
- *
- * Discussion:
- * (Encoded frames may only correspond to more than one source frame
- * if allowFrameTimeChanges is set in the
- * compressionSessionOptions.)
- * After calling this, the compressor should release the encoded
- * frame by calling ICMEncodedFrameRelease.
- * Calling this function does not automatically release the source
- * frames; if the compressor called ICMCompressorSourceFrameRetain
- * it should still call ICMCompressorSourceFrameRelease.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMCompressorSessionEmitEncodedFrame( session: ICMCompressorSessionRef; encodedFrame: ICMMutableEncodedFrameRef; numberOfSourceFrames: SIGNEDLONG; sourceFrames: {variable-size-array} ICMCompressorSourceFrameRefPtr ): OSStatus; external name '_ICMCompressorSessionEmitEncodedFrame';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMEncodedFrameCreateMutable()
- *
- * Summary:
- * Called by a compressor to create an encoded-frame token
- * corresponding to a given source frame.
- *
- * Discussion:
- * The encoded frame will initially have zero mediaSampleFlags; if
- * the frame is not a key frame, the compressor must call
- * ICMEncodedFrameSetMediaSampleFlags to set mediaSampleNotSync. If
- * the frame is droppable, the compressor should set
- * mediaSampleDroppable. If the frame is a partial key frame, the
- * compressor should set mediaSamplePartialSync.
- * The encoded frame will initially have undefined decodeTimeStamp
- * and decodeDuration. The compressor may set these directly by
- * calling ICMEncodedFrameSetDecodeTimeStamp and/or
- * ICMEncodedFrameSetDecodeDuration. If these are not set by the
- * compressor, the ICM will attempt to derive them.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMEncodedFrameCreateMutable( session: ICMCompressorSessionRef; sourceFrame: ICMCompressorSourceFrameRef; bufferSize: ByteCount; var frameOut: ICMMutableEncodedFrameRef ): OSStatus; external name '_ICMEncodedFrameCreateMutable';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- { Multi-pass storage access routines for compressor components }
- {
- * ICMMultiPassStorageSetDataAtTimeStamp()
- *
- * Summary:
- * Called by a multipass-capable compressor to store data at a given
- * timestamp.
- *
- * Discussion:
- * The new data replaces any previous data held at that timestamp.
- * If data is NULL, the data for that timestamp is deleted. The
- * format of the data is private to the compressor.
- *
- * Parameters:
- *
- * multiPassStorage:
- * The multipass storage object.
- *
- * timeStamp:
- * The time stamp at which the value should be stored.
- *
- * index:
- * An index by which multiple values may be stored at a time
- * stamp. The meaning of individual indexes is private to the
- * compressor.
- *
- * data:
- * The data to be stored, or NULL to delete the value.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMMultiPassStorageSetDataAtTimeStamp( multiPassStorage: ICMMultiPassStorageRef; timeStamp: TimeValue64; index: SIGNEDLONG; data: CFDataRef ): OSStatus; external name '_ICMMultiPassStorageSetDataAtTimeStamp';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMMultiPassStorageGetTimeStamp()
- *
- * Summary:
- * Called by a multipass-capable compressor to retrieve a time stamp
- * for which a value is stored.
- *
- * Parameters:
- *
- * multiPassStorage:
- * The multipass storage object.
- *
- * fromTimeStamp:
- * The initial time stamp. Ignored for some values of step.
- *
- * step:
- * Indicates the kind of time stamp search to perform.
- *
- * timeStampOut:
- * Points to a TimeValue64 to receive the found time stamp. It
- * will be set to -1 if no time stamp is found.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMMultiPassStorageGetTimeStamp( multiPassStorage: ICMMultiPassStorageRef; fromTimeStamp: TimeValue64; step: ICMMultiPassStorageStep; var timeStampOut: TimeValue64 ): OSStatus; external name '_ICMMultiPassStorageGetTimeStamp';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * ICMMultiPassStorageCopyDataAtTimeStamp()
- *
- * Summary:
- * Called by a multipass-capable compressor to retrieve data at a
- * given timestamp.
- *
- * Parameters:
- *
- * multiPassStorage:
- * The multipass storage object.
- *
- * timeStamp:
- * The time stamp at which the value should be retrieved.
- *
- * index:
- * An index by which multiple values may be stored at a time
- * stamp. The meaning of individual indexes is private to the
- * compressor.
- *
- * dataOut:
- * Points to a CFMutableDataRef to receive the value. It will be
- * set to a newly-created CFMutableData containing the value for
- * the given time stamp and index, or set to NULL if no value is
- * at that time stamp and index. It is the caller's responsibility
- * to release the CFMutableData.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function ICMMultiPassStorageCopyDataAtTimeStamp( multiPassStorage: ICMMultiPassStorageRef; timeStamp: TimeValue64; index: SIGNEDLONG; var dataOut: CFMutableDataRef ): OSStatus; external name '_ICMMultiPassStorageCopyDataAtTimeStamp';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextTypeKey
- *
- * Summary:
- * Read-only CFStringRef: Type of the visual context.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextTypeKey: CFStringRef; external name '_kQTVisualContextTypeKey'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextType_PixelBuffer
- *
- * Summary:
- * Value for kQTVisualContextTypeKey for pixel buffer visual
- * contexts.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextType_PixelBuffer: CFStringRef; external name '_kQTVisualContextType_PixelBuffer'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextType_OpenGLTexture
- *
- * Summary:
- * Value for kQTVisualContextTypeKey for OpenGL texture visual
- * contexts.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextType_OpenGLTexture: CFStringRef; external name '_kQTVisualContextType_OpenGLTexture'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextWorkingColorSpaceKey
- *
- * Summary:
- * CGColorSpaceRef: Color space in which QuickTime will perform
- * image processing. If this attribute is not set, images will be
- * processed in the output color space.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextWorkingColorSpaceKey: CFStringRef; external name '_kQTVisualContextWorkingColorSpaceKey'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextOutputColorSpaceKey
- *
- * Summary:
- * CGColorSpaceRef: Color space of images produced by this visual
- * context. If this attribute is not set, images may be in any color
- * space.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextOutputColorSpaceKey: CFStringRef; external name '_kQTVisualContextOutputColorSpaceKey'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextExpectedReadAheadKey
- *
- * Summary:
- * CFNumberRef: Number of seconds ahead of real-time that the client
- * expects to pull images out of the visual context. Applications
- * using the CoreVideo display link should set this attribute
- * according to value returned from
- * CVDisplayLinkGetOutputVideoLatency().
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextExpectedReadAheadKey: CFStringRef; external name '_kQTVisualContextExpectedReadAheadKey'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextPixelBufferAttributesKey
- *
- * Summary:
- * CFDictionaryRef: Dictionary containing pixel buffer attributes as
- * described for the CoreVideo pixel buffer pool.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextPixelBufferAttributesKey: CFStringRef; external name '_kQTVisualContextPixelBufferAttributesKey'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextTargetDimensionsKey
- *
- * Summary:
- * CFDictionaryRef: Dictionary containing
- * kQTVisualContextTargetDimensions_WidthKey and
- * kQTVisualContextTargetDimensions_HeightKey. This is only a hint
- * to optimize certain media types, such as text, that can render at
- * any resolution. If this attribute is not set, the movie will
- * render at its native resolution.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextTargetDimensionsKey: CFStringRef; external name '_kQTVisualContextTargetDimensionsKey'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextTargetDimensions_WidthKey
- *
- * Summary:
- * CFNumberRef: Width, in pixels, of the rendering target.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextTargetDimensions_WidthKey: CFStringRef; external name '_kQTVisualContextTargetDimensions_WidthKey'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * kQTVisualContextTargetDimensions_HeightKey
- *
- * Summary:
- * CFNumberRef: Height, in pixels, of the rendering target.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- var kQTVisualContextTargetDimensions_HeightKey: CFStringRef; external name '_kQTVisualContextTargetDimensions_HeightKey'; (* attribute const *)
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTVisualContextRetain()
- *
- * Summary:
- * Increments the visual context's reference count.
- *
- * Discussion:
- * The same visual context is returned for convenience. If
- * visualContext is NULL, nothing happens.
- *
- * Parameters:
- *
- * visualContext:
- * [in] The visual context to retain.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTVisualContextRetain( visualContext: QTVisualContextRef ): QTVisualContextRef; external name '_QTVisualContextRetain';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTVisualContextRelease()
- *
- * Summary:
- * Decrements the visual context's reference count.
- *
- * Discussion:
- * If the retain count decreases to zero, the visual context is
- * disposed. If visualContext is NULL, nothing happens.
- *
- * Parameters:
- *
- * visualContext:
- * [in] The visual context to release.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure QTVisualContextRelease( visualContext: QTVisualContextRef ); external name '_QTVisualContextRelease';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTVisualContextGetTypeID()
- *
- * Summary:
- * Returns the CFTypeID for QTVisualContextRef.
- *
- * Discussion:
- * You could use this to test whether a CFTypeRef that extracted
- * from a CF container such as a CFArray was a QTVisualContextRef.
- * All visual contexts have the same CFTypeID. If you need to
- * distinguish between different types of visual contexts (eg.
- * PixelBuffer vs. OpenGLTexture), query for kQTVisualContextTypeKey
- * with QTVisualContextGetAttribute().
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTVisualContextGetTypeID: CFTypeID; external name '_QTVisualContextGetTypeID';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTVisualContextSetAttribute()
- *
- * Summary:
- * Sets a visual context attribute.
- *
- * Parameters:
- *
- * visualContext:
- * [in] The visual context.
- *
- * attributeKey:
- * [in] Identifier of attribute to set.
- *
- * attributeValue:
- * [in] Value of attribute to set, or NULL to remove a value.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTVisualContextSetAttribute( visualContext: QTVisualContextRef; attributeKey: CFStringRef; attributeValue: CFTypeRef { can be NULL } ): OSStatus; external name '_QTVisualContextSetAttribute';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTVisualContextGetAttribute()
- *
- * Summary:
- * Gets a visual context attribute.
- *
- * Parameters:
- *
- * visualContext:
- * [in] The visual context.
- *
- * attributeKey:
- * [in] Identifier of attribute to get.
- *
- * attributeValueOut:
- * [out] Pointer to variable that will receive the attribute
- * value, or NULL if the attribute is not set.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTVisualContextGetAttribute( visualContext: QTVisualContextRef; attributeKey: CFStringRef; var attributeValueOut: CFTypeRef ): OSStatus; external name '_QTVisualContextGetAttribute';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTVisualContextImageAvailableCallback
- *
- * Summary:
- * User-defined callback function to recieve notifications when a
- * new image becomes available.
- *
- * Discussion:
- * Due to unpredictible activity, such as user seeks or the arrival
- * of streaming video packets from a network, new images may become
- * available for times supposedly occupied by previous images.
- * Applications using the CoreVideo display link to drive rendering
- * probably do not need to install a callback of this type since
- * they will already be checking for new images at a sufficient rate.
- *
- * Parameters:
- *
- * visualContext:
- * [in] The visual context invoking the callback.
- *
- * timeStamp:
- * [in] Time for which a new image has become available.
- *
- * refCon:
- * [in] User-defined value passed to
- * QTVisualContextSetImageAvailableCallback.
- }
- type
- QTVisualContextImageAvailableCallback = procedure( visualContext: QTVisualContextRef; const (*var*) timeStamp: CVTimeStamp; refCon: UnivPtr );
- {
- * QTVisualContextSetImageAvailableCallback()
- *
- * Summary:
- * Installs user-defined callback to be notified when new images
- * become available.
- *
- * Discussion:
- * This routine installs the user defined
- * QTVisualContextImageAvailableCallback callback. There can only be
- * one callback associated with a QTVisualContext at a given time.
- *
- * Parameters:
- *
- * visualContext:
- * [in] The visual context.
- *
- * imageAvailableCallback:
- * [in] User-defined callback function to recieve notifications.
- * Pass NULL to remove any existing callback.
- *
- * refCon:
- * [in] User-defined value to pass to
- * QTVisualContextImageAvailableCallback.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTVisualContextSetImageAvailableCallback( visualContext: QTVisualContextRef; imageAvailableCallback: QTVisualContextImageAvailableCallback { can be NULL }; refCon: UnivPtr { can be NULL } ): OSStatus; external name '_QTVisualContextSetImageAvailableCallback';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTVisualContextIsNewImageAvailable()
- *
- * Summary:
- * Queries whether a new image is available for a given time.
- *
- * Discussion:
- * This function returns true if there is a image available for the
- * specified time that is different from the last image retrieved
- * from QTVisualContextCopyImageForTime. See
- * QTVisualContextCopyImageForTime for restrictions on time-stamps.
- *
- * Parameters:
- *
- * visualContext:
- * [in] The visual context.
- *
- * timeStamp:
- * [in] Time in question. Pass NULL to request the image at the
- * current time.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTVisualContextIsNewImageAvailable( visualContext: QTVisualContextRef; {const} timeStamp: CVTimeStampPtr { can be NULL } ): Boolean; external name '_QTVisualContextIsNewImageAvailable';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTVisualContextCopyImageForTime()
- *
- * Summary:
- * Retrieves an image buffer from the visual context, indexed by the
- * provided timestamp.
- *
- * Discussion:
- * You should not request image buffers further ahead of the current
- * time than the read-ahead time specified with the
- * kQTVisualContextExpectedReadAheadKey attribute. You may skip
- * images by passing later times, but you may not pass an earlier
- * time than passed to a previous call to this function.
- *
- * Parameters:
- *
- * visualContext:
- * [in] The visual context.
- *
- * allocator:
- * [in] Allocator used to create new CVImageBufferRef.
- *
- * timeStamp:
- * [in] Time in question. Pass NULL to request the image at the
- * current time.
- *
- * newImage:
- * [out] Points to variable to receive new image. If there is no
- * video at the requested time, this variable will be set to NULL.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTVisualContextCopyImageForTime( visualContext: QTVisualContextRef; allocator: CFAllocatorRef { can be NULL }; {const} timeStamp: CVTimeStampPtr { can be NULL }; var newImage: CVImageBufferRef ): OSStatus; external name '_QTVisualContextCopyImageForTime';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTVisualContextTask()
- *
- * Summary:
- * Causes visual context to release internally held resources for
- * later re-use.
- *
- * Discussion:
- * For optimal resource management, this function should be called
- * in every rendering pass, after old images have been released, new
- * images have been used and all rendering has been flushed to the
- * screen. This call is not mandatory.
- *
- * Parameters:
- *
- * visualContext:
- * [in] The visual context.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- procedure QTVisualContextTask( visualContext: QTVisualContextRef ); external name '_QTVisualContextTask';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTOpenGLTextureContextCreate()
- *
- * Summary:
- * Creates a new OpenGL texture context for the given OpenGL context
- * and pixel format.
- *
- * Discussion:
- * This function will fail if the graphics hardware is insufficient.
- *
- * Parameters:
- *
- * allocator:
- * [in] Allocator used to create the texture context.
- *
- * cglContext:
- * [in] OpenGL context used to create textures.
- *
- * cglPixelFormat:
- * [in] OpenGL pixel format used to create the OpenGL context.
- *
- * attributes:
- * [in] Dictionary of attributes.
- *
- * newTextureContext:
- * [out] Points to a variable to recieve the new OpenGL texture
- * context.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTOpenGLTextureContextCreate( allocator: CFAllocatorRef { can be NULL }; cglContext: CGLContextObj; cglPixelFormat: CGLPixelFormatObj; attributes: CFDictionaryRef { can be NULL }; var newTextureContext: QTVisualContextRef ): OSStatus; external name '_QTOpenGLTextureContextCreate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {
- * QTPixelBufferContextCreate()
- *
- * Summary:
- * Creates a new pixel buffer context with the given attributes.
- *
- * Discussion:
- * This function will fail if the graphics hardware is insufficient.
- *
- * Parameters:
- *
- * allocator:
- * [in] Allocator used to create the pixel buffer context.
- *
- * attributes:
- * [in] Dictionary of attributes.
- *
- * newPixelBufferContext:
- * [out] Points to a variable to recieve the new pixel buffer
- * context.
- *
- * Availability:
- * Mac OS X: in version 10.4 (or QuickTime 7.0) and later in QuickTime.framework
- * CarbonLib: not available
- * Non-Carbon CFM: not available
- }
- function QTPixelBufferContextCreate( allocator: CFAllocatorRef { can be NULL }; attributes: CFDictionaryRef { can be NULL }; var newPixelBufferContext: QTVisualContextRef ): OSStatus; external name '_QTPixelBufferContextCreate';
- (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *)
- {$endc} {not TARGET_CPU_64}
- {$endc} {TARGET_OS_MAC}
- {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
- end.
- {$endc} {not MACOSALLINCLUDE}
|