Instruction/ maintenance manual of the product Codec Engine Server Texas Instruments
Go to page of 36
Codec Engine Serv er Integrator User's Guide Literature Number: SPRUED5B September 2 007.
IMPORT ANT NOTICE T exas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements, im prove- ments, and other changes to it s products an d services at any time and to discontinue any product or service without notice.
iii This is a draft version printed from file: pref.fm on 9/25/07 Preface About This Book The inten ded audience fo r this doc ument is the Server Integ rator , wh o creates a Codec Serv er for use by th e Engi ne Integrato r and thus th e Applic ation Auth or .
iv Not ational C onvent ions Notational Con ventions This doc ument uses the foll owing con ventions: ❏ Progra m listings , program e xampl es, and in teractive display s are shown in a special typeface .
v This is a draft version printed from file: ce_serv_integTOC.fm on 9/25/07 Content s 1 Codec Engine Overvi ew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 -1 This cha pter intr oduce s the Code c Engine .
-vi.
1-1 Chap ter 1 Codec Engine Overview This cha pter introd uces the Codec E ngine . 1.1 What is the Codec Engi ne? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 – 2 1.2 Why Should I Use It? . . . . . . . . . . . . . . . . . . . . .
What is the Code c Engi ne? 1-2 1.1 What is the Codec Engine ? From th e applic ation dev eloper ’s p erspect ive, the Codec Eng ine is a set of APIs that you use to instantia te and run x DAIS a lgorithms . A VI SA interfac e is prov ided a s well fo r interac ting wi th xDM-co mplian t xDAIS algorit hms.
Why Should I Use It? Codec Engine O verview 1-3 1.2 Why Should I Use It? The Code c Eng ine is des igned to s olve s ome comm on probl ems associ ated with developi ng system -on-a-c hip (SoC) app lica tions. The most si gnifican t problem s incl ude: ❏ Debugging in a h eterogen eous p rocessor environm ent ca n be painful.
Where D oes the Co dec Eng ine Fit in to My Arch itecture? 1-4 1.3 Where Does the Codec Engine Fit into My Architecture? The appli ca tio n code (or the m idd le ware it use s) cal ls the Code c Engin e APIs.
Where Do es the C odec Engi ne Fit into My Arc hitecture ? Codec Engine O verview 1-5 The follow ing figure is a modificatio n of the previo us diagram that shows how this arc hitecture is dis tributed in a GPP+DSP sys tem. In this example , yellow portion s run on the GPP , and grey por tions run on the DSP .
What Are th e User Ro les? 1-6 1.4 Wha t Are t h e User Rol es? The Co dec E ngi ne ha s seve ral cu stom er us e ca ses, fr om GPP-side applica tion dev elopers to DSP-sid e codec authors . Is some cases, th ese roles m ay be pl ayed by a sing le perso n.
What Are th e User Rol es? Codec Engine O verview 1-7 1.4.2 Server Integrat or T o supp ort Engi nes with remo te co decs, a Codec Server m ust b e created . The Codec Server in tegrat es the vario us compon ents necessar y to house the codec s (e.g. DSP/B IOS, Fram ework Compon ents, link dr ivers, codecs , Codec Engin e, etc.
What Are th e User Ro les? 1-8 1.4.3 Engine Integrat or The Engi ne Integrato r defines various Eng ine config urations . This ca n include the nam es of the E ngines, a s well as the codec s and the .
Wher e Ca n I Ge t M ore Info rma tion? Codec Engine O verview 1-9 ❏ V a rious Codec packages fro m Algorith m Creators ❏ A Codec Ser ver DSP exec utable fr om the S erve r In tegrato r if co dec will run on a DSP ❏ An Engi ne config file (.
1-10.
2-1 Chap ter 2 Configuring a Codec Server This cha pter des cribes h ow the Server In tegrator should configur e a Code c Ser ver for us e by the En gine Int egr ator . 2.1 Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Overvi ew 2-2 2.1 Ove rvie w As desc ribed i n Secti on 1.4.2 , Server In tegrator , the Server Integ rator provid es a Cod ec Serve r to th e Engine Integra tor .
Overview Conf igur ing a Code c Ser ver 2-3 2.1.1 What is a Codec Server? A C odec Ser ver is a b inary th at integr ates code cs, fram ework componen ts , and sy stem code.
Overvi ew 2-4 ■ A messa ge queue is created to allow th e remote no de to recei ve commands from the GPP . ■ The node -speci fic "c reate" fu nction ( for exam ple, AUDENC_ create() ) is called to in itial ize the node state an d algorit hm-specif ic memory and resource s.
Overview Conf igur ing a Code c Ser ver 2-5 ■ Any alg orith m scratch memor y is the n "deacti vated". ■ The skele ton writeb acks ou tput buffers to en sure that CPU wri tes to the cac he are flus hed to external me mory .
Overvi ew 2-6 2.1.4 What Algorit hms Can a Codec Server Integra te? Y ou can use any algorit hm that is xDM-co mplian t in a Code c Serv er . In additi on, if you want to use a xDA IS-com pliant algor.
Crea ting a Code c Se rver Conf igur ing a Code c Ser ver 2-7 2.2 Creat ing a Codec S erver T o crea t e a Co de c S er ve r , you p er f orm t he f o ll ow i ng co n f ig ur at i on st e p s: ❏ Con.
Crea ting a Code c Se rver 2-8 3) Ed it the exa mples/xdcpaths.m ak file wi th a text ed itor to spec ify the CE_INST ALL_DIR, X DC_ROOT , and BIOS _ROOT vari ables. Again, see exa mples/bu ild_instr uctions .html fo r details. 4) Ma ke a duplica te of one of the Codec Server exam ples in the example s/server s directo ry .
Crea ting a Code c Se rver Conf igur ing a Code c Ser ver 2-9 T o see documentation for the att ributes o f the Serve r module, fo llow thes e ste ps: 1) Open CE_INS T ALL _DIR/xdoc/ index. html to s ee the Conf iguratio n Referenc e. Dependin g on yo ur browser , you may ne ed to en able active content to view th e list of nod es on the left.
Crea ting a Code c Se rver 2-10 For exampl e, these stateme nts from the vid eo_copy .cfg fi le have been modi fied (bol d text) to refere nce the spee ch enc oder/de coder . /* get various codec modules ; i.e. codec implementati ons */ var SPH DEC_ COPY = xdc .
Crea ting a Code c Se rver Conf igur ing a Code c Ser ver 2-1 1 2.2.3.1 Controlling I/O Buff er Caching for xDM 0.9 Codecs The DSP ser ver's supp ort—the "s keleton s"—for r emote exec ution of codecs written for xDM 0.9 always manage s the cache fo r all codec I/O buffers exchan ged with the ARM ap plicati on.
Crea ting a Code c Se rver 2-12 2.2.3.2 Specifying "Scratch G roup" an d DMA Res ources fo r a Codec When yo u put together s everal co decs into a si ngle DSP ser ver , you may need to make them share m emory a nd DMA resour ces. T wo co decs can share what is called a "scratc h" me mory .
Crea ting a Code c Se rver Conf igur ing a Code c Ser ver 2-13 How you defi ne the grou pId field can affect pe rformance or whether a codec ca n be created at all. For detailed informati on on share d scratch memory , see the Fram ework Compon ents documenta tion.
Crea ting a Code c Se rver 2-14 Engine.algs[].groupId For ea ch loca l algorith m, if the o ptional groupI d field is uninitializ ed, the algorit hm is confi gured into its own, uniqu e groupId.
Crea ting a Code c Se rver Conf igur ing a Code c Ser ver 2-15 2.2.4.1 DSP/BIOS Thr eads and Module Use Each “ remote” algor ithm instance that runs on the DSP exe cutes in a DSP/BIO S thread whos e priority is specifie d by a static configu ration parameter ( see ti.
Deliveri ng a Cod ec Server 2-16 Change the bold te xt in the f ollowi ng line t o match your ser ver nam e: var serverName = " my_server "; When you have fini shed de velopme nt, you m ay want to c hange "deb ug" in the following line to " rele ase": Pkg.
Deli veri ng a Co dec Serve r Conf igur ing a Code c Ser ver 2-17 In additi on to includ ing th e server exe cutable in the ser ver pack age, yo u must als o add the gene rated package/i nfo/* files to th e package.
Deliveri ng a Cod ec Server 2-18 DSP server s built with Configuro do not require a p ackag e to build the server itself, but y ou m ust cre ate one t o pro duce a s erver de livera ble. I n that package, you mu st inclu de both the s erver ex ecutable a nd the Config uro-gener ated "packag e/info/ *" files.
Index- 1 This is a draft version printed from file: ce_serv_integIX.fm on 9/25/07 Index A algorithm 2- 6 specify ing 2- 10 Algorithm Creator 1-6, 2 -2 all.
Index-2 Index L link.c md file 2-7, 2-16 linker c ommand s 2-16 Linux 1- 2 local codecs 2-5 M main.c file 2-7, 2 -16 makefi le 2-15, 2-1 6 middl ewar e 1-4 MINPRI attribute 2-9 N name o f serv er 2 - 16 O online hel p 1-9 P pac kage creating 2-7 dire ctory path 2- 8 making a cop y 2-8 naming 2-8 pac k a ge di rect ory 2- 16 packag e.
An important point after buying a device Texas Instruments Codec Engine Server (or even before the purchase) is to read its user manual. We should do this for several simple reasons:
If you have not bought Texas Instruments Codec Engine Server yet, this is a good time to familiarize yourself with the basic data on the product. First of all view first pages of the manual, you can find above. You should find there the most important technical data Texas Instruments Codec Engine Server - thus you can check whether the hardware meets your expectations. When delving into next pages of the user manual, Texas Instruments Codec Engine Server you will learn all the available features of the product, as well as information on its operation. The information that you get Texas Instruments Codec Engine Server will certainly help you make a decision on the purchase.
If you already are a holder of Texas Instruments Codec Engine Server, but have not read the manual yet, you should do it for the reasons described above. You will learn then if you properly used the available features, and whether you have not made any mistakes, which can shorten the lifetime Texas Instruments Codec Engine Server.
However, one of the most important roles played by the user manual is to help in solving problems with Texas Instruments Codec Engine Server. Almost always you will find there Troubleshooting, which are the most frequently occurring failures and malfunctions of the device Texas Instruments Codec Engine Server along with tips on how to solve them. Even if you fail to solve the problem, the manual will show you a further procedure – contact to the customer service center or the nearest service center