Codebase list kodi-visualization-spectrum / a64665f
Imported Upstream version 1.0.14+git20151213 Balint Reczey 8 years ago
92 changed file(s) with 7878 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
0 project(visualization.spectrum)
1
2 cmake_minimum_required(VERSION 2.6)
3
4 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR})
5
6 find_package(kodi REQUIRED)
7
8 if(WIN32)
9 add_definitions(-DDIRECTX_SPEKTRUM_EXPORTS -D_WIN32PC -D_USRDLL)
10 set(SHADER_FILES src/DefaultVertexShader.hlsl
11 src/DefaultPixelShader.hlsl)
12 set(SHADER_INCLUDES)
13 foreach( SHADER_FILE ${SHADER_FILES} )
14 get_filename_component( FileName ${SHADER_FILE} NAME_WE )
15 if(${FileName} MATCHES "(.+Vertex.+)")
16 set(ShaderType vs)
17 elseif(${FileName} MATCHES "(.+Pixel.+)")
18 set(ShaderType ps)
19 else()
20 message(FATAL_ERROR ${SHADER_FILE}": Unknown shader type.")
21 endif()
22 set( IncFile src/${FileName}.inc )
23 list( APPEND SHADER_INCLUDES ${IncFile} )
24
25 add_custom_command(
26 OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/${IncFile}
27 COMMAND fxc /nologo /T${ShaderType}_4_0_level_9_1 /Vn ${FileName}Code /Fh ${IncFile} ${SHADER_FILE}
28 MAIN_DEPENDENCY ${SHADER_FILE}
29 WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
30 VERBATIM)
31 endforeach(SHADER_FILE)
32 add_custom_target(generate ALL DEPENDS ${SHADER_INCLUDES})
33 set(SPECTRUM_SOURCES src/directx_spectrum.cpp)
34 else(WIN32)
35 find_package(OpenGL)
36 if(OPENGL_FOUND)
37 set(INCLUDES ${OpenGL_INCLUDE_DIR})
38 add_definitions(-DHAS_OPENGL)
39 set(SPECTRUM_SOURCES src/opengl_spectrum.cpp)
40 set(DEPLIBS ${OPENGL_LIBRARIES})
41 else()
42 find_package(OpenGLES2)
43 if(OPENGLES2_FOUND)
44 set(INCLUDES ${OPENGLES2_INCLUDE_DIR})
45 add_definitions(-DHAS_GLES2)
46 set(SPECTRUM_SOURCES src/opengl_spectrum.cpp
47 src/VisGUIShader.cpp
48 src/VisMatrixGLES.cpp
49 src/VisShader.cpp)
50 set(DEPLIBS ${OPENGLES2_LIBRARIES})
51 else()
52 message(FATAL_ERROR "No rendering API found. Bailing")
53 endif()
54 endif()
55 endif()
56
57 include_directories(${INCLUDES}
58 ${KODI_INCLUDE_DIR})
59
60 build_addon(visualization.spectrum SPECTRUM DEPLIBS)
61
62 include(CPack)
0 GNU GENERAL PUBLIC LICENSE
1 Version 3, 29 June 2007
2
3 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
4 Everyone is permitted to copy and distribute verbatim copies
5 of this license document, but changing it is not allowed.
6
7 Preamble
8
9 The GNU General Public License is a free, copyleft license for
10 software and other kinds of works.
11
12 The licenses for most software and other practical works are designed
13 to take away your freedom to share and change the works. By contrast,
14 the GNU General Public License is intended to guarantee your freedom to
15 share and change all versions of a program--to make sure it remains free
16 software for all its users. We, the Free Software Foundation, use the
17 GNU General Public License for most of our software; it applies also to
18 any other work released this way by its authors. You can apply it to
19 your programs, too.
20
21 When we speak of free software, we are referring to freedom, not
22 price. Our General Public Licenses are designed to make sure that you
23 have the freedom to distribute copies of free software (and charge for
24 them if you wish), that you receive source code or can get it if you
25 want it, that you can change the software or use pieces of it in new
26 free programs, and that you know you can do these things.
27
28 To protect your rights, we need to prevent others from denying you
29 these rights or asking you to surrender the rights. Therefore, you have
30 certain responsibilities if you distribute copies of the software, or if
31 you modify it: responsibilities to respect the freedom of others.
32
33 For example, if you distribute copies of such a program, whether
34 gratis or for a fee, you must pass on to the recipients the same
35 freedoms that you received. You must make sure that they, too, receive
36 or can get the source code. And you must show them these terms so they
37 know their rights.
38
39 Developers that use the GNU GPL protect your rights with two steps:
40 (1) assert copyright on the software, and (2) offer you this License
41 giving you legal permission to copy, distribute and/or modify it.
42
43 For the developers' and authors' protection, the GPL clearly explains
44 that there is no warranty for this free software. For both users' and
45 authors' sake, the GPL requires that modified versions be marked as
46 changed, so that their problems will not be attributed erroneously to
47 authors of previous versions.
48
49 Some devices are designed to deny users access to install or run
50 modified versions of the software inside them, although the manufacturer
51 can do so. This is fundamentally incompatible with the aim of
52 protecting users' freedom to change the software. The systematic
53 pattern of such abuse occurs in the area of products for individuals to
54 use, which is precisely where it is most unacceptable. Therefore, we
55 have designed this version of the GPL to prohibit the practice for those
56 products. If such problems arise substantially in other domains, we
57 stand ready to extend this provision to those domains in future versions
58 of the GPL, as needed to protect the freedom of users.
59
60 Finally, every program is threatened constantly by software patents.
61 States should not allow patents to restrict development and use of
62 software on general-purpose computers, but in those that do, we wish to
63 avoid the special danger that patents applied to a free program could
64 make it effectively proprietary. To prevent this, the GPL assures that
65 patents cannot be used to render the program non-free.
66
67 The precise terms and conditions for copying, distribution and
68 modification follow.
69
70 TERMS AND CONDITIONS
71
72 0. Definitions.
73
74 "This License" refers to version 3 of the GNU General Public License.
75
76 "Copyright" also means copyright-like laws that apply to other kinds of
77 works, such as semiconductor masks.
78
79 "The Program" refers to any copyrightable work licensed under this
80 License. Each licensee is addressed as "you". "Licensees" and
81 "recipients" may be individuals or organizations.
82
83 To "modify" a work means to copy from or adapt all or part of the work
84 in a fashion requiring copyright permission, other than the making of an
85 exact copy. The resulting work is called a "modified version" of the
86 earlier work or a work "based on" the earlier work.
87
88 A "covered work" means either the unmodified Program or a work based
89 on the Program.
90
91 To "propagate" a work means to do anything with it that, without
92 permission, would make you directly or secondarily liable for
93 infringement under applicable copyright law, except executing it on a
94 computer or modifying a private copy. Propagation includes copying,
95 distribution (with or without modification), making available to the
96 public, and in some countries other activities as well.
97
98 To "convey" a work means any kind of propagation that enables other
99 parties to make or receive copies. Mere interaction with a user through
100 a computer network, with no transfer of a copy, is not conveying.
101
102 An interactive user interface displays "Appropriate Legal Notices"
103 to the extent that it includes a convenient and prominently visible
104 feature that (1) displays an appropriate copyright notice, and (2)
105 tells the user that there is no warranty for the work (except to the
106 extent that warranties are provided), that licensees may convey the
107 work under this License, and how to view a copy of this License. If
108 the interface presents a list of user commands or options, such as a
109 menu, a prominent item in the list meets this criterion.
110
111 1. Source Code.
112
113 The "source code" for a work means the preferred form of the work
114 for making modifications to it. "Object code" means any non-source
115 form of a work.
116
117 A "Standard Interface" means an interface that either is an official
118 standard defined by a recognized standards body, or, in the case of
119 interfaces specified for a particular programming language, one that
120 is widely used among developers working in that language.
121
122 The "System Libraries" of an executable work include anything, other
123 than the work as a whole, that (a) is included in the normal form of
124 packaging a Major Component, but which is not part of that Major
125 Component, and (b) serves only to enable use of the work with that
126 Major Component, or to implement a Standard Interface for which an
127 implementation is available to the public in source code form. A
128 "Major Component", in this context, means a major essential component
129 (kernel, window system, and so on) of the specific operating system
130 (if any) on which the executable work runs, or a compiler used to
131 produce the work, or an object code interpreter used to run it.
132
133 The "Corresponding Source" for a work in object code form means all
134 the source code needed to generate, install, and (for an executable
135 work) run the object code and to modify the work, including scripts to
136 control those activities. However, it does not include the work's
137 System Libraries, or general-purpose tools or generally available free
138 programs which are used unmodified in performing those activities but
139 which are not part of the work. For example, Corresponding Source
140 includes interface definition files associated with source files for
141 the work, and the source code for shared libraries and dynamically
142 linked subprograms that the work is specifically designed to require,
143 such as by intimate data communication or control flow between those
144 subprograms and other parts of the work.
145
146 The Corresponding Source need not include anything that users
147 can regenerate automatically from other parts of the Corresponding
148 Source.
149
150 The Corresponding Source for a work in source code form is that
151 same work.
152
153 2. Basic Permissions.
154
155 All rights granted under this License are granted for the term of
156 copyright on the Program, and are irrevocable provided the stated
157 conditions are met. This License explicitly affirms your unlimited
158 permission to run the unmodified Program. The output from running a
159 covered work is covered by this License only if the output, given its
160 content, constitutes a covered work. This License acknowledges your
161 rights of fair use or other equivalent, as provided by copyright law.
162
163 You may make, run and propagate covered works that you do not
164 convey, without conditions so long as your license otherwise remains
165 in force. You may convey covered works to others for the sole purpose
166 of having them make modifications exclusively for you, or provide you
167 with facilities for running those works, provided that you comply with
168 the terms of this License in conveying all material for which you do
169 not control copyright. Those thus making or running the covered works
170 for you must do so exclusively on your behalf, under your direction
171 and control, on terms that prohibit them from making any copies of
172 your copyrighted material outside their relationship with you.
173
174 Conveying under any other circumstances is permitted solely under
175 the conditions stated below. Sublicensing is not allowed; section 10
176 makes it unnecessary.
177
178 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
179
180 No covered work shall be deemed part of an effective technological
181 measure under any applicable law fulfilling obligations under article
182 11 of the WIPO copyright treaty adopted on 20 December 1996, or
183 similar laws prohibiting or restricting circumvention of such
184 measures.
185
186 When you convey a covered work, you waive any legal power to forbid
187 circumvention of technological measures to the extent such circumvention
188 is effected by exercising rights under this License with respect to
189 the covered work, and you disclaim any intention to limit operation or
190 modification of the work as a means of enforcing, against the work's
191 users, your or third parties' legal rights to forbid circumvention of
192 technological measures.
193
194 4. Conveying Verbatim Copies.
195
196 You may convey verbatim copies of the Program's source code as you
197 receive it, in any medium, provided that you conspicuously and
198 appropriately publish on each copy an appropriate copyright notice;
199 keep intact all notices stating that this License and any
200 non-permissive terms added in accord with section 7 apply to the code;
201 keep intact all notices of the absence of any warranty; and give all
202 recipients a copy of this License along with the Program.
203
204 You may charge any price or no price for each copy that you convey,
205 and you may offer support or warranty protection for a fee.
206
207 5. Conveying Modified Source Versions.
208
209 You may convey a work based on the Program, or the modifications to
210 produce it from the Program, in the form of source code under the
211 terms of section 4, provided that you also meet all of these conditions:
212
213 a) The work must carry prominent notices stating that you modified
214 it, and giving a relevant date.
215
216 b) The work must carry prominent notices stating that it is
217 released under this License and any conditions added under section
218 7. This requirement modifies the requirement in section 4 to
219 "keep intact all notices".
220
221 c) You must license the entire work, as a whole, under this
222 License to anyone who comes into possession of a copy. This
223 License will therefore apply, along with any applicable section 7
224 additional terms, to the whole of the work, and all its parts,
225 regardless of how they are packaged. This License gives no
226 permission to license the work in any other way, but it does not
227 invalidate such permission if you have separately received it.
228
229 d) If the work has interactive user interfaces, each must display
230 Appropriate Legal Notices; however, if the Program has interactive
231 interfaces that do not display Appropriate Legal Notices, your
232 work need not make them do so.
233
234 A compilation of a covered work with other separate and independent
235 works, which are not by their nature extensions of the covered work,
236 and which are not combined with it such as to form a larger program,
237 in or on a volume of a storage or distribution medium, is called an
238 "aggregate" if the compilation and its resulting copyright are not
239 used to limit the access or legal rights of the compilation's users
240 beyond what the individual works permit. Inclusion of a covered work
241 in an aggregate does not cause this License to apply to the other
242 parts of the aggregate.
243
244 6. Conveying Non-Source Forms.
245
246 You may convey a covered work in object code form under the terms
247 of sections 4 and 5, provided that you also convey the
248 machine-readable Corresponding Source under the terms of this License,
249 in one of these ways:
250
251 a) Convey the object code in, or embodied in, a physical product
252 (including a physical distribution medium), accompanied by the
253 Corresponding Source fixed on a durable physical medium
254 customarily used for software interchange.
255
256 b) Convey the object code in, or embodied in, a physical product
257 (including a physical distribution medium), accompanied by a
258 written offer, valid for at least three years and valid for as
259 long as you offer spare parts or customer support for that product
260 model, to give anyone who possesses the object code either (1) a
261 copy of the Corresponding Source for all the software in the
262 product that is covered by this License, on a durable physical
263 medium customarily used for software interchange, for a price no
264 more than your reasonable cost of physically performing this
265 conveying of source, or (2) access to copy the
266 Corresponding Source from a network server at no charge.
267
268 c) Convey individual copies of the object code with a copy of the
269 written offer to provide the Corresponding Source. This
270 alternative is allowed only occasionally and noncommercially, and
271 only if you received the object code with such an offer, in accord
272 with subsection 6b.
273
274 d) Convey the object code by offering access from a designated
275 place (gratis or for a charge), and offer equivalent access to the
276 Corresponding Source in the same way through the same place at no
277 further charge. You need not require recipients to copy the
278 Corresponding Source along with the object code. If the place to
279 copy the object code is a network server, the Corresponding Source
280 may be on a different server (operated by you or a third party)
281 that supports equivalent copying facilities, provided you maintain
282 clear directions next to the object code saying where to find the
283 Corresponding Source. Regardless of what server hosts the
284 Corresponding Source, you remain obligated to ensure that it is
285 available for as long as needed to satisfy these requirements.
286
287 e) Convey the object code using peer-to-peer transmission, provided
288 you inform other peers where the object code and Corresponding
289 Source of the work are being offered to the general public at no
290 charge under subsection 6d.
291
292 A separable portion of the object code, whose source code is excluded
293 from the Corresponding Source as a System Library, need not be
294 included in conveying the object code work.
295
296 A "User Product" is either (1) a "consumer product", which means any
297 tangible personal property which is normally used for personal, family,
298 or household purposes, or (2) anything designed or sold for incorporation
299 into a dwelling. In determining whether a product is a consumer product,
300 doubtful cases shall be resolved in favor of coverage. For a particular
301 product received by a particular user, "normally used" refers to a
302 typical or common use of that class of product, regardless of the status
303 of the particular user or of the way in which the particular user
304 actually uses, or expects or is expected to use, the product. A product
305 is a consumer product regardless of whether the product has substantial
306 commercial, industrial or non-consumer uses, unless such uses represent
307 the only significant mode of use of the product.
308
309 "Installation Information" for a User Product means any methods,
310 procedures, authorization keys, or other information required to install
311 and execute modified versions of a covered work in that User Product from
312 a modified version of its Corresponding Source. The information must
313 suffice to ensure that the continued functioning of the modified object
314 code is in no case prevented or interfered with solely because
315 modification has been made.
316
317 If you convey an object code work under this section in, or with, or
318 specifically for use in, a User Product, and the conveying occurs as
319 part of a transaction in which the right of possession and use of the
320 User Product is transferred to the recipient in perpetuity or for a
321 fixed term (regardless of how the transaction is characterized), the
322 Corresponding Source conveyed under this section must be accompanied
323 by the Installation Information. But this requirement does not apply
324 if neither you nor any third party retains the ability to install
325 modified object code on the User Product (for example, the work has
326 been installed in ROM).
327
328 The requirement to provide Installation Information does not include a
329 requirement to continue to provide support service, warranty, or updates
330 for a work that has been modified or installed by the recipient, or for
331 the User Product in which it has been modified or installed. Access to a
332 network may be denied when the modification itself materially and
333 adversely affects the operation of the network or violates the rules and
334 protocols for communication across the network.
335
336 Corresponding Source conveyed, and Installation Information provided,
337 in accord with this section must be in a format that is publicly
338 documented (and with an implementation available to the public in
339 source code form), and must require no special password or key for
340 unpacking, reading or copying.
341
342 7. Additional Terms.
343
344 "Additional permissions" are terms that supplement the terms of this
345 License by making exceptions from one or more of its conditions.
346 Additional permissions that are applicable to the entire Program shall
347 be treated as though they were included in this License, to the extent
348 that they are valid under applicable law. If additional permissions
349 apply only to part of the Program, that part may be used separately
350 under those permissions, but the entire Program remains governed by
351 this License without regard to the additional permissions.
352
353 When you convey a copy of a covered work, you may at your option
354 remove any additional permissions from that copy, or from any part of
355 it. (Additional permissions may be written to require their own
356 removal in certain cases when you modify the work.) You may place
357 additional permissions on material, added by you to a covered work,
358 for which you have or can give appropriate copyright permission.
359
360 Notwithstanding any other provision of this License, for material you
361 add to a covered work, you may (if authorized by the copyright holders of
362 that material) supplement the terms of this License with terms:
363
364 a) Disclaiming warranty or limiting liability differently from the
365 terms of sections 15 and 16 of this License; or
366
367 b) Requiring preservation of specified reasonable legal notices or
368 author attributions in that material or in the Appropriate Legal
369 Notices displayed by works containing it; or
370
371 c) Prohibiting misrepresentation of the origin of that material, or
372 requiring that modified versions of such material be marked in
373 reasonable ways as different from the original version; or
374
375 d) Limiting the use for publicity purposes of names of licensors or
376 authors of the material; or
377
378 e) Declining to grant rights under trademark law for use of some
379 trade names, trademarks, or service marks; or
380
381 f) Requiring indemnification of licensors and authors of that
382 material by anyone who conveys the material (or modified versions of
383 it) with contractual assumptions of liability to the recipient, for
384 any liability that these contractual assumptions directly impose on
385 those licensors and authors.
386
387 All other non-permissive additional terms are considered "further
388 restrictions" within the meaning of section 10. If the Program as you
389 received it, or any part of it, contains a notice stating that it is
390 governed by this License along with a term that is a further
391 restriction, you may remove that term. If a license document contains
392 a further restriction but permits relicensing or conveying under this
393 License, you may add to a covered work material governed by the terms
394 of that license document, provided that the further restriction does
395 not survive such relicensing or conveying.
396
397 If you add terms to a covered work in accord with this section, you
398 must place, in the relevant source files, a statement of the
399 additional terms that apply to those files, or a notice indicating
400 where to find the applicable terms.
401
402 Additional terms, permissive or non-permissive, may be stated in the
403 form of a separately written license, or stated as exceptions;
404 the above requirements apply either way.
405
406 8. Termination.
407
408 You may not propagate or modify a covered work except as expressly
409 provided under this License. Any attempt otherwise to propagate or
410 modify it is void, and will automatically terminate your rights under
411 this License (including any patent licenses granted under the third
412 paragraph of section 11).
413
414 However, if you cease all violation of this License, then your
415 license from a particular copyright holder is reinstated (a)
416 provisionally, unless and until the copyright holder explicitly and
417 finally terminates your license, and (b) permanently, if the copyright
418 holder fails to notify you of the violation by some reasonable means
419 prior to 60 days after the cessation.
420
421 Moreover, your license from a particular copyright holder is
422 reinstated permanently if the copyright holder notifies you of the
423 violation by some reasonable means, this is the first time you have
424 received notice of violation of this License (for any work) from that
425 copyright holder, and you cure the violation prior to 30 days after
426 your receipt of the notice.
427
428 Termination of your rights under this section does not terminate the
429 licenses of parties who have received copies or rights from you under
430 this License. If your rights have been terminated and not permanently
431 reinstated, you do not qualify to receive new licenses for the same
432 material under section 10.
433
434 9. Acceptance Not Required for Having Copies.
435
436 You are not required to accept this License in order to receive or
437 run a copy of the Program. Ancillary propagation of a covered work
438 occurring solely as a consequence of using peer-to-peer transmission
439 to receive a copy likewise does not require acceptance. However,
440 nothing other than this License grants you permission to propagate or
441 modify any covered work. These actions infringe copyright if you do
442 not accept this License. Therefore, by modifying or propagating a
443 covered work, you indicate your acceptance of this License to do so.
444
445 10. Automatic Licensing of Downstream Recipients.
446
447 Each time you convey a covered work, the recipient automatically
448 receives a license from the original licensors, to run, modify and
449 propagate that work, subject to this License. You are not responsible
450 for enforcing compliance by third parties with this License.
451
452 An "entity transaction" is a transaction transferring control of an
453 organization, or substantially all assets of one, or subdividing an
454 organization, or merging organizations. If propagation of a covered
455 work results from an entity transaction, each party to that
456 transaction who receives a copy of the work also receives whatever
457 licenses to the work the party's predecessor in interest had or could
458 give under the previous paragraph, plus a right to possession of the
459 Corresponding Source of the work from the predecessor in interest, if
460 the predecessor has it or can get it with reasonable efforts.
461
462 You may not impose any further restrictions on the exercise of the
463 rights granted or affirmed under this License. For example, you may
464 not impose a license fee, royalty, or other charge for exercise of
465 rights granted under this License, and you may not initiate litigation
466 (including a cross-claim or counterclaim in a lawsuit) alleging that
467 any patent claim is infringed by making, using, selling, offering for
468 sale, or importing the Program or any portion of it.
469
470 11. Patents.
471
472 A "contributor" is a copyright holder who authorizes use under this
473 License of the Program or a work on which the Program is based. The
474 work thus licensed is called the contributor's "contributor version".
475
476 A contributor's "essential patent claims" are all patent claims
477 owned or controlled by the contributor, whether already acquired or
478 hereafter acquired, that would be infringed by some manner, permitted
479 by this License, of making, using, or selling its contributor version,
480 but do not include claims that would be infringed only as a
481 consequence of further modification of the contributor version. For
482 purposes of this definition, "control" includes the right to grant
483 patent sublicenses in a manner consistent with the requirements of
484 this License.
485
486 Each contributor grants you a non-exclusive, worldwide, royalty-free
487 patent license under the contributor's essential patent claims, to
488 make, use, sell, offer for sale, import and otherwise run, modify and
489 propagate the contents of its contributor version.
490
491 In the following three paragraphs, a "patent license" is any express
492 agreement or commitment, however denominated, not to enforce a patent
493 (such as an express permission to practice a patent or covenant not to
494 sue for patent infringement). To "grant" such a patent license to a
495 party means to make such an agreement or commitment not to enforce a
496 patent against the party.
497
498 If you convey a covered work, knowingly relying on a patent license,
499 and the Corresponding Source of the work is not available for anyone
500 to copy, free of charge and under the terms of this License, through a
501 publicly available network server or other readily accessible means,
502 then you must either (1) cause the Corresponding Source to be so
503 available, or (2) arrange to deprive yourself of the benefit of the
504 patent license for this particular work, or (3) arrange, in a manner
505 consistent with the requirements of this License, to extend the patent
506 license to downstream recipients. "Knowingly relying" means you have
507 actual knowledge that, but for the patent license, your conveying the
508 covered work in a country, or your recipient's use of the covered work
509 in a country, would infringe one or more identifiable patents in that
510 country that you have reason to believe are valid.
511
512 If, pursuant to or in connection with a single transaction or
513 arrangement, you convey, or propagate by procuring conveyance of, a
514 covered work, and grant a patent license to some of the parties
515 receiving the covered work authorizing them to use, propagate, modify
516 or convey a specific copy of the covered work, then the patent license
517 you grant is automatically extended to all recipients of the covered
518 work and works based on it.
519
520 A patent license is "discriminatory" if it does not include within
521 the scope of its coverage, prohibits the exercise of, or is
522 conditioned on the non-exercise of one or more of the rights that are
523 specifically granted under this License. You may not convey a covered
524 work if you are a party to an arrangement with a third party that is
525 in the business of distributing software, under which you make payment
526 to the third party based on the extent of your activity of conveying
527 the work, and under which the third party grants, to any of the
528 parties who would receive the covered work from you, a discriminatory
529 patent license (a) in connection with copies of the covered work
530 conveyed by you (or copies made from those copies), or (b) primarily
531 for and in connection with specific products or compilations that
532 contain the covered work, unless you entered into that arrangement,
533 or that patent license was granted, prior to 28 March 2007.
534
535 Nothing in this License shall be construed as excluding or limiting
536 any implied license or other defenses to infringement that may
537 otherwise be available to you under applicable patent law.
538
539 12. No Surrender of Others' Freedom.
540
541 If conditions are imposed on you (whether by court order, agreement or
542 otherwise) that contradict the conditions of this License, they do not
543 excuse you from the conditions of this License. If you cannot convey a
544 covered work so as to satisfy simultaneously your obligations under this
545 License and any other pertinent obligations, then as a consequence you may
546 not convey it at all. For example, if you agree to terms that obligate you
547 to collect a royalty for further conveying from those to whom you convey
548 the Program, the only way you could satisfy both those terms and this
549 License would be to refrain entirely from conveying the Program.
550
551 13. Use with the GNU Affero General Public License.
552
553 Notwithstanding any other provision of this License, you have
554 permission to link or combine any covered work with a work licensed
555 under version 3 of the GNU Affero General Public License into a single
556 combined work, and to convey the resulting work. The terms of this
557 License will continue to apply to the part which is the covered work,
558 but the special requirements of the GNU Affero General Public License,
559 section 13, concerning interaction through a network will apply to the
560 combination as such.
561
562 14. Revised Versions of this License.
563
564 The Free Software Foundation may publish revised and/or new versions of
565 the GNU General Public License from time to time. Such new versions will
566 be similar in spirit to the present version, but may differ in detail to
567 address new problems or concerns.
568
569 Each version is given a distinguishing version number. If the
570 Program specifies that a certain numbered version of the GNU General
571 Public License "or any later version" applies to it, you have the
572 option of following the terms and conditions either of that numbered
573 version or of any later version published by the Free Software
574 Foundation. If the Program does not specify a version number of the
575 GNU General Public License, you may choose any version ever published
576 by the Free Software Foundation.
577
578 If the Program specifies that a proxy can decide which future
579 versions of the GNU General Public License can be used, that proxy's
580 public statement of acceptance of a version permanently authorizes you
581 to choose that version for the Program.
582
583 Later license versions may give you additional or different
584 permissions. However, no additional obligations are imposed on any
585 author or copyright holder as a result of your choosing to follow a
586 later version.
587
588 15. Disclaimer of Warranty.
589
590 THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
591 APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
592 HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
593 OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
594 THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
595 PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
596 IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
597 ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
598
599 16. Limitation of Liability.
600
601 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
602 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
603 THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
604 GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
605 USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
606 DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
607 PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
608 EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
609 SUCH DAMAGES.
610
611 17. Interpretation of Sections 15 and 16.
612
613 If the disclaimer of warranty and limitation of liability provided
614 above cannot be given local legal effect according to their terms,
615 reviewing courts shall apply local law that most closely approximates
616 an absolute waiver of all civil liability in connection with the
617 Program, unless a warranty or assumption of liability accompanies a
618 copy of the Program in return for a fee.
619
620 END OF TERMS AND CONDITIONS
621
622 How to Apply These Terms to Your New Programs
623
624 If you develop a new program, and you want it to be of the greatest
625 possible use to the public, the best way to achieve this is to make it
626 free software which everyone can redistribute and change under these terms.
627
628 To do so, attach the following notices to the program. It is safest
629 to attach them to the start of each source file to most effectively
630 state the exclusion of warranty; and each file should have at least
631 the "copyright" line and a pointer to where the full notice is found.
632
633 <one line to give the program's name and a brief idea of what it does.>
634 Copyright (C) <year> <name of author>
635
636 This program is free software: you can redistribute it and/or modify
637 it under the terms of the GNU General Public License as published by
638 the Free Software Foundation, either version 3 of the License, or
639 (at your option) any later version.
640
641 This program is distributed in the hope that it will be useful,
642 but WITHOUT ANY WARRANTY; without even the implied warranty of
643 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
644 GNU General Public License for more details.
645
646 You should have received a copy of the GNU General Public License
647 along with this program. If not, see <http://www.gnu.org/licenses/>.
648
649 Also add information on how to contact you by electronic and paper mail.
650
651 If the program does terminal interaction, make it output a short
652 notice like this when it starts in an interactive mode:
653
654 <program> Copyright (C) <year> <name of author>
655 This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
656 This is free software, and you are welcome to redistribute it
657 under certain conditions; type `show c' for details.
658
659 The hypothetical commands `show w' and `show c' should show the appropriate
660 parts of the General Public License. Of course, your program's commands
661 might be different; for a GUI interface, you would use an "about box".
662
663 You should also get your employer (if you work as a programmer) or school,
664 if any, to sign a "copyright disclaimer" for the program, if necessary.
665 For more information on this, and how to apply and follow the GNU GPL, see
666 <http://www.gnu.org/licenses/>.
667
668 The GNU General Public License does not permit incorporating your program
669 into proprietary programs. If your program is a subroutine library, you
670 may consider it more useful to permit linking proprietary applications with
671 the library. If this is what you want to do, use the GNU Lesser General
672 Public License instead of this License. But first, please read
673 <http://www.gnu.org/philosophy/why-not-lgpl.html>.
0 # - Try to find DirectX SDK
1 # Once done this will define
2 #
3 # DIRECTX_FOUND - system has DirectX SDK
4 # DIRECTX_INCLUDE_DIR - the DirectX include directories
5 # DIRECTX_LIBRARIES - Link these to use DirectX SDK
6 # DIRECTX_D3D9_LIBRARY - Link this to use D3D9
7 # DIRECTX_D3DX9_LIBRARY - Link this to use D3DX9
8
9 FIND_PATH(DIRECTX_INCLUDE_DIR d3d9.h PATHS
10 "$ENV{DXSDK_DIR}Include"
11 "$ENV{PROGRAMFILES}/Microsoft DirectX SDK*/Include"
12 "C:/apps_x86/Microsoft DirectX SDK*/Include"
13 "C:/apps/Microsoft DirectX SDK*/Include"
14 "C:/Program Files (x86)/Microsoft DirectX SDK*/Include"
15 "C:/Program Files/Microsoft DirectX SDK*/Include"
16 NO_DEFAULT_PATH
17 )
18 FIND_PATH(DIRECTX_INCLUDE_DIR d3d9.h)
19 GET_FILENAME_COMPONENT(DIRECTX_ROOT_DIR "${DIRECTX_INCLUDE_DIR}/.." ABSOLUTE)
20
21 IF(CMAKE_CL_64)
22 SET(DIRECTX_LIBRARY_PATHS "${DIRECTX_ROOT_DIR}/Lib/x64")
23 ELSE()
24 SET(DIRECTX_LIBRARY_PATHS "${DIRECTX_ROOT_DIR}/Lib/x86" "${DIRECTX_ROOT_DIR}/Lib")
25 ENDIF()
26
27 FIND_LIBRARY(DIRECTX_D3D9_LIBRARY d3d9 ${DIRECTX_LIBRARY_PATHS} NO_DEFAULT_PATH)
28 FIND_LIBRARY(DIRECTX_D3DX9_LIBRARY d3dx9 ${DIRECTX_LIBRARY_PATHS} NO_DEFAULT_PATH)
29 SET(DIRECTX_LIBRARIES ${DIRECTX_D3D9_LIBRARY} ${DIRECTX_D3DX9_LIBRARY})
30
31 # handle the QUIETLY and REQUIRED arguments and set DIRECTX_FOUND to TRUE if all listed variables are TRUE
32 INCLUDE(FindPackageHandleStandardArgs)
33 FIND_PACKAGE_HANDLE_STANDARD_ARGS(DIRECTX DEFAULT_MSG DIRECTX_ROOT_DIR DIRECTX_LIBRARIES DIRECTX_INCLUDE_DIR)
34 MARK_AS_ADVANCED(
35 DIRECTX_INCLUDE_DIR
36 DIRECTX_D3D9_LIBRARY
37 DIRECTX_D3DX9_LIBRARY
38 )
0 # - Try to find OpenGLES2
1 # Once done this will define
2 #
3 # OPENGLES2_FOUND - system has OpenGLES2
4 # OPENGLES2_INCLUDE_DIR - the GLES2 include directory
5 # OPENGLES2_LIBRARIES - Link these to use OpenGLES2
6
7 find_package(PkgConfig)
8 if(PKG_CONFIG_FOUND)
9 pkg_check_modules(OpenGLES2 glesv2)
10 endif(PKG_CONFIG_FOUND)
11
12 if(NOT OPENGLES2_FOUND)
13 if("${CORE_SYSTEM_NAME}" STREQUAL "ios")
14 find_library(OPENGLES2_gl_LIBRARY NAMES OpenGLES PATHS ${CMAKE_OSX_SYSROOT}/System/Library PATH_SUFFIXES Frameworks NO_DEFAULT_PATH)
15 set(OPENGLES2_INCLUDE_DIRS ${OPENGLES2_gl_LIBRARY}/Headers)
16 set(OPENGLES2_egl_LIBRARY ${OPENGLES2_gl_LIBRARY})
17 else()
18 find_path(OPENGLES2_INCLUDE_DIRS GLES2/gl2.h)
19 find_library(OPENGLES2_gl_LIBRARY NAMES GLESv2)
20 find_library(OPENGLES2_egl_LIBRARY NAMES EGL)
21 endif()
22
23 include(FindPackageHandleStandardArgs)
24 find_package_handle_standard_args(OpenGLES2 DEFAULT_MSG
25 OPENGLES2_INCLUDE_DIRS OPENGLES2_gl_LIBRARY OPENGLES2_egl_LIBRARY)
26
27 set(OPENGLES2_LIBRARIES ${OPENGLES2_gl_LIBRARY} ${OPENGLES2_egl_LIBRARY})
28 endif(NOT OPENGLES2_FOUND)
29
30 mark_as_advanced(
31 OPENGLES2_INCLUDE_DIRS
32 OPENGLES2_LIBRARIES
33 OPENGLES2_gl_LIBRARY
34 OPENGLES2_egl_LIBRARY
35 )
0 kodi-visualization-spectrum (#PACKAGEVERSION#-#TAGREV#~#DIST#) #DIST#; urgency=low
1
2 [ xbmc ]
3 * autogenerated dummy changelog
4
5 -- Arne Morten Kvarving <arne.morten.kvarving@sintef.no> Sat, 01 Jun 2013 00:59:22 +0200
6
0 Source: kodi-visualization-spectrum
1 Priority: extra
2 Maintainer: Arne Morten Kvarving <spiff@xbmc.org>
3 Build-Depends: debhelper (>= 8.0.0), cmake, kodi-addon-dev,
4 kodi-visualization-dev, libgl1-mesa-dev, libglew-dev
5 Standards-Version: 3.9.5
6 Section: libs
7 Homepage: http://xbmc.org
8
9 Package: kodi-visualization-spectrum
10 Section: libs
11 Architecture: any
12 Depends: ${shlibs:Depends}, ${misc:Depends}
13 Description: Spectrum visualizer for Kodi
14 Spectrum visualizer for Kodi
15
16 Package: kodi-visualization-spectrum-dbg
17 Section: debug
18 Architecture: any
19 Depends: ${shlibs:Depends}, ${misc:Depends}
20 Description: debug symbols for Spectrum visualizer for Kodi
21 debug symbols for Spectrum visualizer for Kodi
22
0 Format: http://dep.debian.net/deps/dep5
1 Upstream-Name: visualization.spectrum
2
3 Files: *
4 Copyright: 1998-2000 Peter Alm, Mikael Alm, Olle Hallnas, Thomas Nilsson and 4Front Technologies
5 2005-2013 Team XBMC
6 License: GPL-2+
7 This package is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
11 .
12 This package is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16 .
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>
19 .
20 On Debian systems, the complete text of the GNU General
21 Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
22
23
24 Files: debian/*
25 Copyright: 2013 Arne Morten Kvarving <arne.morten.kvarving@sintef.no>
26 2013 wsnipex <wsnipex@a1.net>
27 License: GPL-2+
28 This package is free software; you can redistribute it and/or modify
29 it under the terms of the GNU General Public License as published by
30 the Free Software Foundation; either version 2 of the License, or
31 (at your option) any later version.
32 .
33 This package is distributed in the hope that it will be useful,
34 but WITHOUT ANY WARRANTY; without even the implied warranty of
35 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
36 GNU General Public License for more details.
37 .
38 You should have received a copy of the GNU General Public License
39 along with this program. If not, see <http://www.gnu.org/licenses/>
40 .
41 On Debian systems, the complete text of the GNU General
42 Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
43
(New empty file)
0 #!/usr/bin/make -f
1 # -*- makefile -*-
2 # Sample debian/rules that uses debhelper.
3 # This file was originally written by Joey Hess and Craig Small.
4 # As a special exception, when this file is copied by dh-make into a
5 # dh-make output file, you may use that output file without restriction.
6 # This special exception was added by Craig Small in version 0.37 of dh-make.
7
8 # Uncomment this to turn on verbose mode.
9 #export DH_VERBOSE=1
10
11 %:
12 dh $@
13
14 override_dh_auto_configure:
15 dh_auto_configure -- -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=1 -DUSE_LTO=1
16
17 override_dh_strip:
18 dh_strip --dbg-package=kodi-visualization-spectrum-dbg
19
20 override_dh_auto_install:
21 dh_auto_install --destdir=debian/kodi-visualization-spectrum
22
23 override_dh_installdocs:
24 dh_installdocs --link-doc=kodi-visualization-spectrum
25
0 3.0 (quilt)
0 /*
1 * Copyright (C) 2005-2015 Team Kodi
2 * http://kodi.tv
3 *
4 * This Program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2, or (at your option)
7 * any later version.
8 *
9 * This Program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with XBMC; see the file COPYING. If not, see
16 * <http://www.gnu.org/licenses/>.
17 *
18 */
19
20 float4 main(float4 pos: SV_POSITION, float4 col : COLOR) : SV_TARGET
21 {
22 return col;
23 }
0 /*
1 * Copyright (C) 2005-2015 Team Kodi
2 * http://kodi.tv
3 *
4 * This Program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2, or (at your option)
7 * any later version.
8 *
9 * This Program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with XBMC; see the file COPYING. If not, see
16 * <http://www.gnu.org/licenses/>.
17 *
18 */
19
20 struct VS_OUT
21 {
22 float4 pos : SV_POSITION;
23 float4 col : COLOR;
24 };
25
26 cbuffer cbViewProj : register(b0)
27 {
28 float4x4 view;
29 float4x4 proj;
30 };
31
32 cbuffer cbWorld : register(b1)
33 {
34 float4x4 world;
35 };
36
37 VS_OUT main(float4 pos : POSITION, float4 col : COLOR)
38 {
39 VS_OUT r = (VS_OUT)0;
40 r.pos = mul( pos, world);
41 r.pos = mul(r.pos, view);
42 r.pos = mul(r.pos, proj);
43 r.col = col;
44 return r;
45 }
0 /*
1 * Copyright (C) 2005-2013 Team XBMC
2 * http://www.xbmc.org
3 *
4 * This Program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2, or (at your option)
7 * any later version.
8 *
9 * This Program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with XBMC; see the file COPYING. If not, see
16 * <http://www.gnu.org/licenses/>.
17 *
18 */
19
20 #include "VisGUIShader.h"
21
22 CVisGUIShader::CVisGUIShader(const char *vert, const char *frag ) : CVisGLSLShaderProgram(vert, frag)
23 {
24 // Initialise values
25 m_hTex0 = 0;
26 m_hTex1 = 0;
27 m_hProj = 0;
28 m_hModel = 0;
29 m_hPos = 0;
30 m_hCol = 0;
31 m_hCord0 = 0;
32 m_hCord1 = 0;
33
34 m_proj = NULL;
35 m_model = NULL;
36 }
37
38 void CVisGUIShader::OnCompiledAndLinked()
39 {
40 // This is called after CompileAndLink()
41
42 // Variables passed directly to the Fragment shader
43 m_hTex0 = glGetUniformLocation(ProgramHandle(), "m_samp0");
44 m_hTex1 = glGetUniformLocation(ProgramHandle(), "m_samp1");
45 // Variables passed directly to the Vertex shader
46 m_hProj = glGetUniformLocation(ProgramHandle(), "m_proj");
47 m_hModel = glGetUniformLocation(ProgramHandle(), "m_model");
48 m_hPos = glGetAttribLocation(ProgramHandle(), "m_attrpos");
49 m_hCol = glGetAttribLocation(ProgramHandle(), "m_attrcol");
50 m_hCord0 = glGetAttribLocation(ProgramHandle(), "m_attrcord0");
51 m_hCord1 = glGetAttribLocation(ProgramHandle(), "m_attrcord1");
52
53 // It's okay to do this only one time. Textures units never change.
54 glUseProgram( ProgramHandle() );
55 glUniform1i(m_hTex0, 0);
56 glUniform1i(m_hTex1, 1);
57 glUseProgram( 0 );
58 }
59
60 bool CVisGUIShader::OnEnabled()
61 {
62 // This is called after glUseProgram()
63 glUniformMatrix4fv(m_hProj, 1, GL_FALSE, GetMatrix(MM_PROJECTION));
64 glUniformMatrix4fv(m_hModel, 1, GL_FALSE, GetMatrix(MM_MODELVIEW));
65
66 return true;
67 }
68
69 void CVisGUIShader::Free()
70 {
71 // Do Cleanup here
72 CVisShaderProgram::Free();
73 }
0 #pragma once
1 /*
2 * Copyright (C) 2005-2013 Team XBMC
3 * http://www.xbmc.org
4 *
5 * This Program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2, or (at your option)
8 * any later version.
9 *
10 * This Program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with XBMC; see the file COPYING. If not, see
17 * <http://www.gnu.org/licenses/>.
18 *
19 */
20
21 #include "VisShader.h"
22 #include "VisMatrixGLES.h"
23
24 class CVisGUIShader : public CVisGLSLShaderProgram, public CVisMatrixGLES
25 {
26 public:
27 CVisGUIShader(const char *vert, const char *frag);
28
29 void OnCompiledAndLinked();
30 bool OnEnabled();
31 void Free();
32
33 GLint GetPosLoc() { return m_hPos; }
34 GLint GetColLoc() { return m_hCol; }
35 GLint GetCord0Loc() { return m_hCord0; }
36 GLint GetCord1Loc() { return m_hCord1; }
37
38 protected:
39 GLint m_hTex0;
40 GLint m_hTex1;
41 GLint m_hProj;
42 GLint m_hModel;
43 GLint m_hPos;
44 GLint m_hCol;
45 GLint m_hCord0;
46 GLint m_hCord1;
47
48 GLfloat *m_proj;
49 GLfloat *m_model;
50 };
0 /*
1 * Copyright (C) 2005-2013 Team XBMC
2 * http://www.xbmc.org
3 *
4 * This Program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2, or (at your option)
7 * any later version.
8 *
9 * This Program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with XBMC; see the file COPYING. If not, see
16 * <http://www.gnu.org/licenses/>.
17 *
18 */
19
20 #include "VisMatrixGLES.h"
21 #include <cmath>
22
23 #define MODE_WITHIN_RANGE(m) ((m >= 0) && (m < (int)MM_MATRIXSIZE))
24
25 CVisMatrixGLES::CVisMatrixGLES()
26 {
27 for (unsigned int i=0; i < MM_MATRIXSIZE; i++)
28 {
29 m_matrices[i].push_back(MatrixWrapper());
30 MatrixMode((EMATRIXMODE)i);
31 LoadIdentity();
32 }
33 m_matrixMode = (EMATRIXMODE)-1;
34 m_pMatrix = NULL;
35 }
36
37 CVisMatrixGLES::~CVisMatrixGLES()
38 {
39 }
40
41 GLfloat* CVisMatrixGLES::GetMatrix(EMATRIXMODE mode)
42 {
43 if (MODE_WITHIN_RANGE(mode))
44 {
45 if (!m_matrices[mode].empty())
46 {
47 return m_matrices[mode].back();
48 }
49 }
50 return NULL;
51 }
52
53 void CVisMatrixGLES::MatrixMode(EMATRIXMODE mode)
54 {
55 if (MODE_WITHIN_RANGE(mode))
56 {
57 m_matrixMode = mode;
58 m_pMatrix = m_matrices[mode].back();
59 }
60 else
61 {
62 m_matrixMode = (EMATRIXMODE)-1;
63 m_pMatrix = NULL;
64 }
65 }
66
67 void CVisMatrixGLES::PushMatrix()
68 {
69 if (m_pMatrix && MODE_WITHIN_RANGE(m_matrixMode))
70 {
71 m_matrices[m_matrixMode].push_back(MatrixWrapper(m_pMatrix));
72 m_pMatrix = m_matrices[m_matrixMode].back();
73 }
74 }
75
76 void CVisMatrixGLES::PopMatrix()
77 {
78 if (MODE_WITHIN_RANGE(m_matrixMode))
79 {
80 if (m_matrices[m_matrixMode].size() > 1)
81 {
82 m_matrices[m_matrixMode].pop_back();
83 }
84 m_pMatrix = m_matrices[m_matrixMode].back();
85 }
86 }
87
88 void CVisMatrixGLES::LoadIdentity()
89 {
90 if (m_pMatrix)
91 {
92 m_pMatrix[0] = 1.0f; m_pMatrix[4] = 0.0f; m_pMatrix[8] = 0.0f; m_pMatrix[12] = 0.0f;
93 m_pMatrix[1] = 0.0f; m_pMatrix[5] = 1.0f; m_pMatrix[9] = 0.0f; m_pMatrix[13] = 0.0f;
94 m_pMatrix[2] = 0.0f; m_pMatrix[6] = 0.0f; m_pMatrix[10] = 1.0f; m_pMatrix[14] = 0.0f;
95 m_pMatrix[3] = 0.0f; m_pMatrix[7] = 0.0f; m_pMatrix[11] = 0.0f; m_pMatrix[15] = 1.0f;
96 }
97 }
98
99 void CVisMatrixGLES::Ortho(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f)
100 {
101 GLfloat u = 2.0f / (r - l);
102 GLfloat v = 2.0f / (t - b);
103 GLfloat w = -2.0f / (f - n);
104 GLfloat x = - (r + l) / (r - l);
105 GLfloat y = - (t + b) / (t - b);
106 GLfloat z = - (f + n) / (f - n);
107 GLfloat matrix[16] = { u, 0.0f, 0.0f, 0.0f,
108 0.0f, v, 0.0f, 0.0f,
109 0.0f, 0.0f, w, 0.0f,
110 x, y, z, 1.0f};
111 MultMatrixf(matrix);
112 }
113
114 void CVisMatrixGLES::Ortho2D(GLfloat l, GLfloat r, GLfloat b, GLfloat t)
115 {
116 GLfloat u = 2.0f / (r - l);
117 GLfloat v = 2.0f / (t - b);
118 GLfloat x = - (r + l) / (r - l);
119 GLfloat y = - (t + b) / (t - b);
120 GLfloat matrix[16] = { u, 0.0f, 0.0f, 0.0f,
121 0.0f, v, 0.0f, 0.0f,
122 0.0f, 0.0f,-1.0f, 0.0f,
123 x, y, 0.0f, 1.0f};
124 MultMatrixf(matrix);
125 }
126
127 void CVisMatrixGLES::Frustum(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f)
128 {
129 GLfloat u = (2.0f * n) / (r - l);
130 GLfloat v = (2.0f * n) / (t - b);
131 GLfloat w = (r + l) / (r - l);
132 GLfloat x = (t + b) / (t - b);
133 GLfloat y = - (f + n) / (f - n);
134 GLfloat z = - (2.0f * f * n) / (f - n);
135 GLfloat matrix[16] = { u, 0.0f, 0.0f, 0.0f,
136 0.0f, v, 0.0f, 0.0f,
137 w, x, y,-1.0f,
138 0.0f, 0.0f, z, 0.0f};
139 MultMatrixf(matrix);
140 }
141
142 void CVisMatrixGLES::Translatef(GLfloat x, GLfloat y, GLfloat z)
143 {
144 GLfloat matrix[16] = {1.0f, 0.0f, 0.0f, 0.0f,
145 0.0f, 1.0f, 0.0f, 0.0f,
146 0.0f, 0.0f, 1.0f, 0.0f,
147 x, y, z, 1.0f};
148 MultMatrixf(matrix);
149 }
150
151 void CVisMatrixGLES::Scalef(GLfloat x, GLfloat y, GLfloat z)
152 {
153 GLfloat matrix[16] = { x, 0.0f, 0.0f, 0.0f,
154 0.0f, y, 0.0f, 0.0f,
155 0.0f, 0.0f, z, 0.0f,
156 0.0f, 0.0f, 0.0f, 1.0f};
157 MultMatrixf(matrix);
158 }
159
160 void CVisMatrixGLES::Rotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
161 {
162 GLfloat modulous = sqrt((x*x)+(y*y)+(z*z));
163 if (modulous != 0.0)
164 {
165 x /= modulous;
166 y /= modulous;
167 z /= modulous;
168 }
169 GLfloat cosine = cos(angle);
170 GLfloat sine = sin(angle);
171 GLfloat cos1 = 1 - cosine;
172 GLfloat a = (x*x*cos1) + cosine;
173 GLfloat b = (x*y*cos1) - (z*sine);
174 GLfloat c = (x*z*cos1) + (y*sine);
175 GLfloat d = (y*x*cos1) + (z*sine);
176 GLfloat e = (y*y*cos1) + cosine;
177 GLfloat f = (y*z*cos1) - (x*sine);
178 GLfloat g = (z*x*cos1) - (y*sine);
179 GLfloat h = (z*y*cos1) + (x*sine);
180 GLfloat i = (z*z*cos1) + cosine;
181 GLfloat matrix[16] = { a, d, g, 0.0f,
182 b, e, h, 0.0f,
183 c, f, i, 0.0f,
184 0.0f, 0.0f, 0.0f, 1.0f};
185 MultMatrixf(matrix);
186 }
187
188 #if defined(__ARM_NEON__) && !defined(__arm64__)
189
190 inline void Matrix4Mul(const float* src_mat_1, const float* src_mat_2, float* dst_mat)
191 {
192 asm volatile (
193 // Store A & B leaving room at top of registers for result (q0-q3)
194 "vldmia %1, { q4-q7 } \n\t"
195 "vldmia %2, { q8-q11 } \n\t"
196
197 // result = first column of B x first row of A
198 "vmul.f32 q0, q8, d8[0]\n\t"
199 "vmul.f32 q1, q8, d10[0]\n\t"
200 "vmul.f32 q2, q8, d12[0]\n\t"
201 "vmul.f32 q3, q8, d14[0]\n\t"
202
203 // result += second column of B x second row of A
204 "vmla.f32 q0, q9, d8[1]\n\t"
205 "vmla.f32 q1, q9, d10[1]\n\t"
206 "vmla.f32 q2, q9, d12[1]\n\t"
207 "vmla.f32 q3, q9, d14[1]\n\t"
208
209 // result += third column of B x third row of A
210 "vmla.f32 q0, q10, d9[0]\n\t"
211 "vmla.f32 q1, q10, d11[0]\n\t"
212 "vmla.f32 q2, q10, d13[0]\n\t"
213 "vmla.f32 q3, q10, d15[0]\n\t"
214
215 // result += last column of B x last row of A
216 "vmla.f32 q0, q11, d9[1]\n\t"
217 "vmla.f32 q1, q11, d11[1]\n\t"
218 "vmla.f32 q2, q11, d13[1]\n\t"
219 "vmla.f32 q3, q11, d15[1]\n\t"
220
221 // output = result registers
222 "vstmia %2, { q0-q3 }"
223 : //no output
224 : "r" (dst_mat), "r" (src_mat_2), "r" (src_mat_1) // input - note *value* of pointer doesn't change
225 : "memory", "q0", "q1", "q2", "q3", "q4", "q5", "q6", "q7", "q8", "q9", "q10", "q11" //clobber
226 );
227 }
228 void CVisMatrixGLES::MultMatrixf(const GLfloat *matrix)
229 {
230 if (m_pMatrix)
231 {
232 GLfloat m[16];
233 Matrix4Mul(m_pMatrix, matrix, m);
234 }
235 }
236
237 #else
238 void CVisMatrixGLES::MultMatrixf(const GLfloat *matrix)
239 {
240 if (m_pMatrix)
241 {
242 GLfloat a = (matrix[0] * m_pMatrix[0]) + (matrix[1] * m_pMatrix[4]) + (matrix[2] * m_pMatrix[8]) + (matrix[3] * m_pMatrix[12]);
243 GLfloat b = (matrix[0] * m_pMatrix[1]) + (matrix[1] * m_pMatrix[5]) + (matrix[2] * m_pMatrix[9]) + (matrix[3] * m_pMatrix[13]);
244 GLfloat c = (matrix[0] * m_pMatrix[2]) + (matrix[1] * m_pMatrix[6]) + (matrix[2] * m_pMatrix[10]) + (matrix[3] * m_pMatrix[14]);
245 GLfloat d = (matrix[0] * m_pMatrix[3]) + (matrix[1] * m_pMatrix[7]) + (matrix[2] * m_pMatrix[11]) + (matrix[3] * m_pMatrix[15]);
246 GLfloat e = (matrix[4] * m_pMatrix[0]) + (matrix[5] * m_pMatrix[4]) + (matrix[6] * m_pMatrix[8]) + (matrix[7] * m_pMatrix[12]);
247 GLfloat f = (matrix[4] * m_pMatrix[1]) + (matrix[5] * m_pMatrix[5]) + (matrix[6] * m_pMatrix[9]) + (matrix[7] * m_pMatrix[13]);
248 GLfloat g = (matrix[4] * m_pMatrix[2]) + (matrix[5] * m_pMatrix[6]) + (matrix[6] * m_pMatrix[10]) + (matrix[7] * m_pMatrix[14]);
249 GLfloat h = (matrix[4] * m_pMatrix[3]) + (matrix[5] * m_pMatrix[7]) + (matrix[6] * m_pMatrix[11]) + (matrix[7] * m_pMatrix[15]);
250 GLfloat i = (matrix[8] * m_pMatrix[0]) + (matrix[9] * m_pMatrix[4]) + (matrix[10] * m_pMatrix[8]) + (matrix[11] * m_pMatrix[12]);
251 GLfloat j = (matrix[8] * m_pMatrix[1]) + (matrix[9] * m_pMatrix[5]) + (matrix[10] * m_pMatrix[9]) + (matrix[11] * m_pMatrix[13]);
252 GLfloat k = (matrix[8] * m_pMatrix[2]) + (matrix[9] * m_pMatrix[6]) + (matrix[10] * m_pMatrix[10]) + (matrix[11] * m_pMatrix[14]);
253 GLfloat l = (matrix[8] * m_pMatrix[3]) + (matrix[9] * m_pMatrix[7]) + (matrix[10] * m_pMatrix[11]) + (matrix[11] * m_pMatrix[15]);
254 GLfloat m = (matrix[12] * m_pMatrix[0]) + (matrix[13] * m_pMatrix[4]) + (matrix[14] * m_pMatrix[8]) + (matrix[15] * m_pMatrix[12]);
255 GLfloat n = (matrix[12] * m_pMatrix[1]) + (matrix[13] * m_pMatrix[5]) + (matrix[14] * m_pMatrix[9]) + (matrix[15] * m_pMatrix[13]);
256 GLfloat o = (matrix[12] * m_pMatrix[2]) + (matrix[13] * m_pMatrix[6]) + (matrix[14] * m_pMatrix[10]) + (matrix[15] * m_pMatrix[14]);
257 GLfloat p = (matrix[12] * m_pMatrix[3]) + (matrix[13] * m_pMatrix[7]) + (matrix[14] * m_pMatrix[11]) + (matrix[15] * m_pMatrix[15]);
258 m_pMatrix[0] = a; m_pMatrix[4] = e; m_pMatrix[8] = i; m_pMatrix[12] = m;
259 m_pMatrix[1] = b; m_pMatrix[5] = f; m_pMatrix[9] = j; m_pMatrix[13] = n;
260 m_pMatrix[2] = c; m_pMatrix[6] = g; m_pMatrix[10] = k; m_pMatrix[14] = o;
261 m_pMatrix[3] = d; m_pMatrix[7] = h; m_pMatrix[11] = l; m_pMatrix[15] = p;
262 }
263 }
264 #endif
265
266 // gluLookAt implementation taken from Mesa3D
267 void CVisMatrixGLES::LookAt(GLfloat eyex, GLfloat eyey, GLfloat eyez, GLfloat centerx, GLfloat centery, GLfloat centerz, GLfloat upx, GLfloat upy, GLfloat upz)
268 {
269 GLfloat forward[3], side[3], up[3];
270 GLfloat m[4][4];
271
272 forward[0] = centerx - eyex;
273 forward[1] = centery - eyey;
274 forward[2] = centerz - eyez;
275
276 up[0] = upx;
277 up[1] = upy;
278 up[2] = upz;
279
280 GLfloat tmp = sqrt(forward[0]*forward[0] + forward[1]*forward[1] + forward[2]*forward[2]);
281 if (tmp != 0.0)
282 {
283 forward[0] /= tmp;
284 forward[1] /= tmp;
285 forward[2] /= tmp;
286 }
287
288 side[0] = forward[1]*up[2] - forward[2]*up[1];
289 side[1] = forward[2]*up[0] - forward[0]*up[2];
290 side[2] = forward[0]*up[1] - forward[1]*up[0];
291
292 tmp = sqrt(side[0]*side[0] + side[1]*side[1] + side[2]*side[2]);
293 if (tmp != 0.0)
294 {
295 side[0] /= tmp;
296 side[1] /= tmp;
297 side[2] /= tmp;
298 }
299
300 up[0] = side[1]*forward[2] - side[2]*forward[1];
301 up[1] = side[2]*forward[0] - side[0]*forward[2];
302 up[2] = side[0]*forward[1] - side[1]*forward[0];
303
304 m[0][0] = 1.0f; m[0][1] = 0.0f; m[0][2] = 0.0f; m[0][3] = 0.0f;
305 m[1][0] = 0.0f; m[1][1] = 1.0f; m[1][2] = 0.0f; m[1][3] = 0.0f;
306 m[2][0] = 0.0f; m[2][1] = 0.0f; m[2][2] = 1.0f; m[2][3] = 0.0f;
307 m[3][0] = 0.0f; m[3][1] = 0.0f; m[3][2] = 0.0f; m[3][3] = 1.0f;
308
309 m[0][0] = side[0];
310 m[1][0] = side[1];
311 m[2][0] = side[2];
312
313 m[0][1] = up[0];
314 m[1][1] = up[1];
315 m[2][1] = up[2];
316
317 m[0][2] = -forward[0];
318 m[1][2] = -forward[1];
319 m[2][2] = -forward[2];
320
321 MultMatrixf(&m[0][0]);
322 Translatef(-eyex, -eyey, -eyez);
323 }
324
325 static void __gluMultMatrixVecf(const GLfloat matrix[16], const GLfloat in[4], GLfloat out[4])
326 {
327 int i;
328
329 for (i=0; i<4; i++)
330 {
331 out[i] = in[0] * matrix[0*4+i] +
332 in[1] * matrix[1*4+i] +
333 in[2] * matrix[2*4+i] +
334 in[3] * matrix[3*4+i];
335 }
336 }
337
338 // gluProject implementation taken from Mesa3D
339 bool CVisMatrixGLES::Project(GLfloat objx, GLfloat objy, GLfloat objz, const GLfloat modelMatrix[16], const GLfloat projMatrix[16], const GLint viewport[4], GLfloat* winx, GLfloat* winy, GLfloat* winz)
340 {
341 GLfloat in[4];
342 GLfloat out[4];
343
344 in[0]=objx;
345 in[1]=objy;
346 in[2]=objz;
347 in[3]=1.0;
348 __gluMultMatrixVecf(modelMatrix, in, out);
349 __gluMultMatrixVecf(projMatrix, out, in);
350 if (in[3] == 0.0)
351 return false;
352 in[0] /= in[3];
353 in[1] /= in[3];
354 in[2] /= in[3];
355 /* Map x, y and z to range 0-1 */
356 in[0] = in[0] * 0.5 + 0.5;
357 in[1] = in[1] * 0.5 + 0.5;
358 in[2] = in[2] * 0.5 + 0.5;
359
360 /* Map x,y to viewport */
361 in[0] = in[0] * viewport[2] + viewport[0];
362 in[1] = in[1] * viewport[3] + viewport[1];
363
364 *winx=in[0];
365 *winy=in[1];
366 *winz=in[2];
367 return true;
368 }
0 #pragma once
1 /*
2 * Copyright (C) 2005-2013 Team XBMC
3 * http://www.xbmc.org
4 *
5 * This Program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2, or (at your option)
8 * any later version.
9 *
10 * This Program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with XBMC; see the file COPYING. If not, see
17 * <http://www.gnu.org/licenses/>.
18 *
19 */
20
21 #if defined(TARGET_DARWIN)
22 #include <OpenGLES/ES2/gl.h>
23 #include <OpenGLES/ES2/glext.h>
24 #else
25 #include <GLES2/gl2.h>
26 #include <GLES2/gl2ext.h>
27 #endif
28
29 #include <string.h>
30 #include <vector>
31
32 enum EMATRIXMODE
33 {
34 MM_PROJECTION = 0,
35 MM_MODELVIEW,
36 MM_TEXTURE,
37 MM_MATRIXSIZE // Must be last! used for size of matrices
38 };
39
40 class CVisMatrixGLES
41 {
42 public:
43 CVisMatrixGLES();
44 ~CVisMatrixGLES();
45
46 GLfloat* GetMatrix(EMATRIXMODE mode);
47
48 void MatrixMode(EMATRIXMODE mode);
49 void PushMatrix();
50 void PopMatrix();
51 void LoadIdentity();
52 void Ortho(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
53 void Ortho2D(GLfloat l, GLfloat r, GLfloat b, GLfloat t);
54 void Frustum(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
55 void Translatef(GLfloat x, GLfloat y, GLfloat z);
56 void Scalef(GLfloat x, GLfloat y, GLfloat z);
57 void Rotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
58 void MultMatrixf(const GLfloat *matrix);
59 void LookAt(GLfloat eyex, GLfloat eyey, GLfloat eyez, GLfloat centerx, GLfloat centery, GLfloat centerz, GLfloat upx, GLfloat upy, GLfloat upz);
60 bool Project(GLfloat objx, GLfloat objy, GLfloat objz, const GLfloat modelMatrix[16], const GLfloat projMatrix[16], const GLint viewport[4], GLfloat* winx, GLfloat* winy, GLfloat* winz);
61
62 protected:
63
64 struct MatrixWrapper
65 {
66 MatrixWrapper(){};
67 MatrixWrapper( const float values[16]) { memcpy(m_values,values,sizeof(m_values)); }
68 MatrixWrapper( const MatrixWrapper &rhs ) { memcpy(m_values, rhs.m_values, sizeof(m_values)); }
69 MatrixWrapper &operator=( const MatrixWrapper &rhs ) { memcpy(m_values, rhs.m_values, sizeof(m_values)); return *this;}
70 operator float*() { return m_values; }
71 operator const float*() const { return m_values; }
72
73 float m_values[16];
74 };
75
76 std::vector<struct MatrixWrapper> m_matrices[(int)MM_MATRIXSIZE];
77 GLfloat *m_pMatrix;
78 EMATRIXMODE m_matrixMode;
79 };
0 /*
1 * Copyright (C) 2005-2013 Team XBMC
2 * http://www.xbmc.org
3 *
4 * This Program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2, or (at your option)
7 * any later version.
8 *
9 * This Program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with XBMC; see the file COPYING. If not, see
16 * <http://www.gnu.org/licenses/>.
17 *
18 */
19
20 #include "VisShader.h"
21 #include <stdio.h>
22
23 #define LOG_SIZE 1024
24 #define GLchar char
25
26 //////////////////////////////////////////////////////////////////////
27 // CShader
28 //////////////////////////////////////////////////////////////////////
29 bool CVisShader::LoadSource(const char *buffer)
30 {
31 m_source = buffer;
32 return true;
33 }
34
35 //////////////////////////////////////////////////////////////////////
36 // CVisGLSLVertexShader
37 //////////////////////////////////////////////////////////////////////
38
39 bool CVisGLSLVertexShader::Compile()
40 {
41 GLint params[4];
42
43 Free();
44
45 m_vertexShader = glCreateShader(GL_VERTEX_SHADER);
46 const char *ptr = m_source.c_str();
47 glShaderSource(m_vertexShader, 1, &ptr, 0);
48 glCompileShader(m_vertexShader);
49 glGetShaderiv(m_vertexShader, GL_COMPILE_STATUS, params);
50 if (params[0]!=GL_TRUE)
51 {
52 GLchar log[LOG_SIZE];
53 glGetShaderInfoLog(m_vertexShader, LOG_SIZE, NULL, log);
54 m_lastLog = log;
55 m_compiled = false;
56 }
57 else
58 {
59 GLchar log[LOG_SIZE];
60 glGetShaderInfoLog(m_vertexShader, LOG_SIZE, NULL, log);
61 m_lastLog = log;
62 m_compiled = true;
63 }
64 return m_compiled;
65 }
66
67 void CVisGLSLVertexShader::Free()
68 {
69 if (m_vertexShader)
70 glDeleteShader(m_vertexShader);
71 m_vertexShader = 0;
72 }
73
74 //////////////////////////////////////////////////////////////////////
75 // CVisGLSLPixelShader
76 //////////////////////////////////////////////////////////////////////
77 bool CVisGLSLPixelShader::Compile()
78 {
79 GLint params[4];
80
81 Free();
82
83 // Pixel shaders are not mandatory.
84 if (m_source.length()==0)
85 return true;
86
87 m_pixelShader = glCreateShader(GL_FRAGMENT_SHADER);
88 const char *ptr = m_source.c_str();
89 glShaderSource(m_pixelShader, 1, &ptr, 0);
90 glCompileShader(m_pixelShader);
91 glGetShaderiv(m_pixelShader, GL_COMPILE_STATUS, params);
92 if (params[0]!=GL_TRUE)
93 {
94 GLchar log[LOG_SIZE];
95 glGetShaderInfoLog(m_pixelShader, LOG_SIZE, NULL, log);
96 m_lastLog = log;
97 m_compiled = false;
98 }
99 else
100 {
101 GLchar log[LOG_SIZE];
102 glGetShaderInfoLog(m_pixelShader, LOG_SIZE, NULL, log);
103 m_lastLog = log;
104 m_compiled = true;
105 }
106 return m_compiled;
107 }
108
109 void CVisGLSLPixelShader::Free()
110 {
111 if (m_pixelShader)
112 glDeleteShader(m_pixelShader);
113 m_pixelShader = 0;
114 }
115
116 //////////////////////////////////////////////////////////////////////
117 // CVisGLSLShaderProgram
118 //////////////////////////////////////////////////////////////////////
119 void CVisGLSLShaderProgram::Free()
120 {
121 m_pVP->Free();
122 m_pFP->Free();
123 if (m_shaderProgram)
124 glDeleteProgram(m_shaderProgram);
125 m_shaderProgram = 0;
126 m_ok = false;
127 m_lastProgram = 0;
128 }
129
130 bool CVisGLSLShaderProgram::CompileAndLink()
131 {
132 GLint params[4];
133
134 // free resources
135 Free();
136
137 // compiled vertex shader
138 if (!m_pVP->Compile())
139 return false;
140
141 // compile pixel shader
142 if (!m_pFP->Compile())
143 {
144 m_pVP->Free();
145 return false;
146 }
147
148 // create program object
149 if (!(m_shaderProgram = glCreateProgram()))
150 goto error;
151
152 // attach the vertex shader
153 glAttachShader(m_shaderProgram, m_pVP->Handle());
154
155 // if we have a pixel shader, attach it. If not, fixed pipeline
156 // will be used.
157 if (m_pFP->Handle())
158 glAttachShader(m_shaderProgram, m_pFP->Handle());
159
160 // link the program
161 glLinkProgram(m_shaderProgram);
162 glGetProgramiv(m_shaderProgram, GL_LINK_STATUS, params);
163 if (params[0]!=GL_TRUE)
164 {
165 GLchar log[LOG_SIZE];
166 glGetProgramInfoLog(m_shaderProgram, LOG_SIZE, NULL, log);
167 goto error;
168 }
169
170 m_validated = false;
171 m_ok = true;
172 OnCompiledAndLinked();
173 return true;
174
175 error:
176 m_ok = false;
177 Free();
178 return false;
179 }
180
181 bool CVisGLSLShaderProgram::Enable()
182 {
183 if (OK())
184 {
185 glUseProgram(m_shaderProgram);
186 if (OnEnabled())
187 {
188 if (!m_validated)
189 {
190 // validate the program
191 GLint params[4];
192 glValidateProgram(m_shaderProgram);
193 glGetProgramiv(m_shaderProgram, GL_VALIDATE_STATUS, params);
194 if (params[0]!=GL_TRUE)
195 {
196 GLchar log[LOG_SIZE];
197 glGetProgramInfoLog(m_shaderProgram, LOG_SIZE, NULL, log);
198 }
199 m_validated = true;
200 }
201 return true;
202 }
203 else
204 {
205 glUseProgram(0);
206 return false;
207 }
208 return true;
209 }
210 return false;
211 }
212
213 void CVisGLSLShaderProgram::Disable()
214 {
215 if (OK())
216 {
217 glUseProgram(0);
218 OnDisabled();
219 }
220 }
0 #pragma once
1 /*
2 * Copyright (C) 2005-2013 Team XBMC
3 * http://www.xbmc.org
4 *
5 * This Program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2, or (at your option)
8 * any later version.
9 *
10 * This Program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with XBMC; see the file COPYING. If not, see
17 * <http://www.gnu.org/licenses/>.
18 *
19 */
20
21 #if defined(TARGET_DARWIN)
22 #include <OpenGLES/ES2/gl.h>
23 #include <OpenGLES/ES2/glext.h>
24 #else
25 #include <GLES2/gl2.h>
26 #include <GLES2/gl2ext.h>
27 #endif
28
29 #include <vector>
30 #include <string>
31
32 //////////////////////////////////////////////////////////////////////
33 // CVisShader - base class
34 //////////////////////////////////////////////////////////////////////
35 class CVisShader
36 {
37 public:
38 CVisShader() { m_compiled = false; }
39 virtual ~CVisShader() {}
40 virtual bool Compile() = 0;
41 virtual void Free() = 0;
42 virtual GLuint Handle() = 0;
43 virtual void SetSource(const char *src) { m_source = src; }
44 virtual bool LoadSource(const char *buffer);
45 bool OK() { return m_compiled; }
46
47 protected:
48 std::string m_source;
49 std::string m_lastLog;
50 std::vector<std::string> m_attr;
51 bool m_compiled;
52
53 };
54
55
56 //////////////////////////////////////////////////////////////////////
57 // CVisVertexShader - vertex shader class
58 //////////////////////////////////////////////////////////////////////
59 class CVisVertexShader : public CVisShader
60 {
61 public:
62 CVisVertexShader() { m_vertexShader = 0; }
63 virtual ~CVisVertexShader() { Free(); }
64 virtual void Free() {}
65 virtual GLuint Handle() { return m_vertexShader; }
66
67 protected:
68 GLuint m_vertexShader;
69 };
70
71 class CVisGLSLVertexShader : public CVisVertexShader
72 {
73 public:
74 virtual void Free();
75 virtual bool Compile();
76 };
77
78 //////////////////////////////////////////////////////////////////////
79 // CVisPixelShader - abstract pixel shader class
80 //////////////////////////////////////////////////////////////////////
81 class CVisPixelShader : public CVisShader
82 {
83 public:
84 CVisPixelShader() { m_pixelShader = 0; }
85 virtual ~CVisPixelShader() { Free(); }
86 virtual void Free() {}
87 virtual GLuint Handle() { return m_pixelShader; }
88
89 protected:
90 GLuint m_pixelShader;
91 };
92
93
94 class CVisGLSLPixelShader : public CVisPixelShader
95 {
96 public:
97 virtual void Free();
98 virtual bool Compile();
99 };
100
101 //////////////////////////////////////////////////////////////////////
102 // CShaderProgram - the complete shader consisting of both the vertex
103 // and pixel programs. (abstract)
104 //////////////////////////////////////////////////////////////////////
105 class CVisShaderProgram
106 {
107 public:
108 CVisShaderProgram()
109 {
110 m_ok = false;
111 m_shaderProgram = 0;
112 m_pFP = NULL;
113 m_pVP = NULL;
114 }
115
116 virtual ~CVisShaderProgram()
117 {
118 Free();
119 delete m_pFP;
120 delete m_pVP;
121 }
122
123 // enable the shader
124 virtual bool Enable() = 0;
125
126 // disable the shader
127 virtual void Disable() = 0;
128
129 // returns true if shader is compiled and linked
130 bool OK() { return m_ok; }
131
132 // free resources
133 virtual void Free() {}
134
135 // return the vertex shader object
136 CVisVertexShader* VertexShader() { return m_pVP; }
137
138 // return the pixel shader object
139 CVisPixelShader* PixelShader() { return m_pFP; }
140
141 // compile and link the shaders
142 virtual bool CompileAndLink() = 0;
143
144 // override to to perform custom tasks on successfull compilation
145 // and linkage. E.g. obtaining handles to shader attributes.
146 virtual void OnCompiledAndLinked() {}
147
148 // override to to perform custom tasks before shader is enabled
149 // and after it is disabled. Return false in OnDisabled() to
150 // disable shader.
151 // E.g. setting attributes, disabling texture unites, etc
152 virtual bool OnEnabled() { return true; }
153 virtual void OnDisabled() { }
154
155 virtual GLuint ProgramHandle() { return m_shaderProgram; }
156
157 protected:
158 CVisVertexShader* m_pVP;
159 CVisPixelShader* m_pFP;
160 GLuint m_shaderProgram;
161 bool m_ok;
162 };
163
164
165 class CVisGLSLShaderProgram
166 : virtual public CVisShaderProgram
167 {
168 public:
169 CVisGLSLShaderProgram()
170 {
171 m_pFP = new CVisGLSLPixelShader();
172 m_pVP = new CVisGLSLVertexShader();
173 }
174 CVisGLSLShaderProgram(const char *vert, const char *frag)
175 {
176 m_pFP = new CVisGLSLPixelShader();
177 m_pFP->LoadSource(frag);
178 m_pVP = new CVisGLSLVertexShader();
179 m_pVP->LoadSource(vert);
180 }
181
182 // enable the shader
183 virtual bool Enable();
184
185 // disable the shader
186 virtual void Disable();
187
188 // free resources
189 virtual void Free();
190
191 // compile and link the shaders
192 virtual bool CompileAndLink();
193
194 protected:
195 GLint m_lastProgram;
196 bool m_validated;
197 };
0 /* XMMS - Cross-platform multimedia player
1 * Copyright (C) 1998-2000 Peter Alm, Mikael Alm, Olle Hallnas, Thomas Nilsson and 4Front Technologies
2 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation; either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
16 */
17
18 /*
19 * Wed May 24 10:49:37 CDT 2000
20 * Fixes to threading/context creation for the nVidia X4 drivers by
21 * Christian Zander <phoenix@minion.de>
22 */
23
24 /*
25 * Ported to XBMC by d4rk
26 * Also added 'hSpeed' to animate transition between bar heights
27 */
28
29
30 #include "xbmc_vis_dll.h"
31 #include <math.h>
32 #include <d3d11_1.h>
33 #include <DirectXMath.h>
34 #include <DirectXPackedVector.h>
35 #include <stdio.h>
36
37 #define NUM_BANDS 16
38 #define NUM_VERTICIES 36
39
40 float y_angle = 45.0f, y_speed = 0.5f;
41 float x_angle = 20.0f, x_speed = 0.0f;
42 float z_angle = 0.0f, z_speed = 0.0f;
43 float heights[16][16], cHeights[16][16], scale;
44 float hSpeed = 0.05f;
45 DWORD g_mode = 3; // D3DFILL_SOLID;
46
47 ID3D11Device* g_device = NULL;
48 ID3D11DeviceContext* g_context = NULL;
49 ID3D11VertexShader* g_vShader = NULL;
50 ID3D11PixelShader* g_pShader = NULL;
51 ID3D11InputLayout* g_inputLayout = NULL;
52 ID3D11Buffer* g_vBuffer = NULL;
53 ID3D11Buffer* g_cViewProj = NULL;
54 ID3D11Buffer* g_cWorld = NULL;
55 ID3D11RasterizerState* g_rsStateSolid = NULL;
56 ID3D11RasterizerState* g_rsStateWire = NULL;
57 ID3D11BlendState* g_omBlend = NULL;
58 ID3D11DepthStencilState* g_omDepth = NULL;
59
60 using namespace DirectX;
61 using namespace DirectX::PackedVector;
62
63 // Include the precompiled shader code.
64 namespace
65 {
66 #include "DefaultPixelShader.inc"
67 #include "DefaultVertexShader.inc"
68 }
69
70 typedef struct
71 {
72 XMFLOAT3 pos;
73 XMFLOAT4 col;
74 } Vertex_t;
75
76 typedef struct
77 {
78 XMFLOAT4X4 view;
79 XMFLOAT4X4 proj;
80 } cbViewProj;
81
82 typedef struct
83 {
84 XMFLOAT4X4 world;
85 } cbWorld;
86
87 #define VERTEX_FORMAT (D3DFVF_XYZ | D3DFVF_DIFFUSE)
88
89 void draw_vertex(Vertex_t * pVertex, float x, float y, float z, XMFLOAT4 color) {
90 pVertex->col = XMFLOAT4(color);
91 pVertex->pos = XMFLOAT3(x, y, z);
92 }
93
94 int draw_rectangle(Vertex_t * verts, float x1, float y1, float z1, float x2, float y2, float z2, XMFLOAT4 color)
95 {
96 if(y1 == y2)
97 {
98 draw_vertex(&verts[0], x1, y1, z1, color);
99 draw_vertex(&verts[1], x2, y1, z1, color);
100 draw_vertex(&verts[2], x2, y2, z2, color);
101
102 draw_vertex(&verts[3], x2, y2, z2, color);
103 draw_vertex(&verts[4], x1, y2, z2, color);
104 draw_vertex(&verts[5], x1, y1, z1, color);
105 }
106 else
107 {
108 draw_vertex(&verts[0], x1, y1, z1, color);
109 draw_vertex(&verts[1], x2, y1, z2, color);
110 draw_vertex(&verts[2], x2, y2, z2, color);
111
112 draw_vertex(&verts[3], x2, y2, z2, color);
113 draw_vertex(&verts[4], x1, y2, z1, color);
114 draw_vertex(&verts[5], x1, y1, z1, color);
115 }
116 return 6;
117 }
118
119 void draw_bar(float x_offset, float z_offset, float height, float red, float green, float blue)
120 {
121 Vertex_t verts[NUM_VERTICIES];
122 int verts_idx = 0;
123
124 float width = 0.1f;
125 XMFLOAT4 color;
126
127 if (1 == g_mode /*== D3DFILL_POINT*/)
128 color = XMFLOAT4(0.2f, 1.0f, 0.2f, 1.0f);
129
130 if (1 != g_mode /*!= D3DFILL_POINT*/)
131 {
132 color = XMFLOAT4(red, green, blue, 1.0f);
133 verts_idx += draw_rectangle(&verts[verts_idx], x_offset, height, z_offset, x_offset + width, height, z_offset + 0.1f, color);
134 }
135 verts_idx += draw_rectangle(&verts[verts_idx], x_offset, 0.0f, z_offset, x_offset + width, 0.0f, z_offset + 0.1f, color);
136
137 if (1 != g_mode /*!= D3DFILL_POINT*/)
138 {
139 color = XMFLOAT4(0.5f * red, 0.5f * green, 0.5f * blue, 1.0f);
140 verts_idx += draw_rectangle(&verts[verts_idx], x_offset, 0.0f, z_offset + 0.1f, x_offset + width, height, z_offset + 0.1f, color);
141 }
142 verts_idx += draw_rectangle(&verts[verts_idx], x_offset, 0.0f, z_offset, x_offset + width, height, z_offset, color);
143
144 if (1 != g_mode /*!= D3DFILL_POINT*/)
145 {
146 color = XMFLOAT4(0.25f * red, 0.25f * green, 0.25f * blue, 1.0f);
147 verts_idx += draw_rectangle(&verts[verts_idx], x_offset, 0.0f, z_offset , x_offset, height, z_offset + 0.1f, color);
148 }
149 verts_idx += draw_rectangle(&verts[verts_idx], x_offset + width, 0.0f, z_offset , x_offset + width, height, z_offset + 0.1f, color);
150
151 D3D11_MAPPED_SUBRESOURCE res;
152 if (S_OK == g_context->Map(g_vBuffer, 0, D3D11_MAP_WRITE_DISCARD, 0, &res))
153 {
154 memcpy(res.pData, verts, sizeof(Vertex_t) * NUM_VERTICIES);
155 g_context->Unmap(g_vBuffer, 0);
156 }
157
158 g_context->IASetPrimitiveTopology(g_mode != 1 /*D3DFILL_POINT*/ ? D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST : D3D11_PRIMITIVE_TOPOLOGY_POINTLIST);
159 g_context->Draw(verts_idx, 0);
160 }
161
162 void draw_bars(void)
163 {
164 int x,y;
165 float x_offset, z_offset, r_base, b_base;
166
167 for(y = 0; y < 16; y++)
168 {
169 z_offset = -1.6f + ((15 - y) * 0.2f);
170
171 b_base = y * (1.0f / 15);
172 r_base = 1.0f - b_base;
173
174 for(x = 0; x < 16; x++)
175 {
176 x_offset = -1.6f + (x * 0.2f);
177 if (::fabs(cHeights[y][x]-heights[y][x])>hSpeed)
178 {
179 if (cHeights[y][x]<heights[y][x])
180 cHeights[y][x] += hSpeed;
181 else
182 cHeights[y][x] -= hSpeed;
183 }
184 draw_bar(x_offset, z_offset,
185 cHeights[y][x], r_base - (x * (r_base / 15.0f)),
186 x * (1.0f / 15), b_base);
187 }
188 }
189 }
190
191 bool init_renderer_objs()
192 {
193 if (S_OK != g_device->CreateVertexShader(DefaultVertexShaderCode, sizeof(DefaultVertexShaderCode), nullptr, &g_vShader))
194 return false;
195
196 // Create input layout
197 D3D11_INPUT_ELEMENT_DESC layout[] =
198 {
199 { "POSITION", 0, DXGI_FORMAT_R32G32B32_FLOAT, 0, 0, D3D11_INPUT_PER_VERTEX_DATA, 0 },
200 { "COLOR", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, 12, D3D11_INPUT_PER_VERTEX_DATA, 0 },
201 };
202 if (S_OK != g_device->CreateInputLayout(layout, ARRAYSIZE(layout), DefaultVertexShaderCode, sizeof(DefaultVertexShaderCode), &g_inputLayout))
203 return false;
204
205 // Create pixel shader
206 if (S_OK != g_device->CreatePixelShader(DefaultPixelShaderCode, sizeof(DefaultPixelShaderCode), nullptr, &g_pShader))
207 return false;
208
209 // create buffers
210 CD3D11_BUFFER_DESC desc(sizeof(Vertex_t) * NUM_VERTICIES, D3D11_BIND_VERTEX_BUFFER, D3D11_USAGE_DYNAMIC, D3D11_CPU_ACCESS_WRITE);
211 if (S_OK != g_device->CreateBuffer(&desc, NULL, &g_vBuffer))
212 return false;
213
214 desc.ByteWidth = sizeof(cbWorld);
215 desc.BindFlags = D3D11_BIND_CONSTANT_BUFFER;
216 if (S_OK != g_device->CreateBuffer(&desc, NULL, &g_cWorld))
217 return false;
218
219 cbViewProj cViewProj;
220 XMStoreFloat4x4(&cViewProj.view, XMMatrixTranspose(XMMatrixIdentity()));
221 XMStoreFloat4x4(&cViewProj.proj, XMMatrixTranspose(XMMatrixPerspectiveOffCenterLH(-1.0f, 1.0f, -1.0f, 1.0f, 1.5f, 10.0f)));
222
223 desc.ByteWidth = sizeof(cbViewProj);
224 desc.Usage = D3D11_USAGE_DEFAULT;
225 desc.CPUAccessFlags = 0;
226 D3D11_SUBRESOURCE_DATA initData = { 0 };
227 initData.pSysMem = &cViewProj;
228 if (S_OK != g_device->CreateBuffer(&desc, &initData, &g_cViewProj))
229 return false;
230
231 // create blend state
232 D3D11_BLEND_DESC blendState = { 0 };
233 ZeroMemory(&blendState, sizeof(D3D11_BLEND_DESC));
234 blendState.RenderTarget[0].BlendEnable = true;
235 blendState.RenderTarget[0].SrcBlend = D3D11_BLEND_ONE;
236 blendState.RenderTarget[0].DestBlend = D3D11_BLEND_ZERO;
237 blendState.RenderTarget[0].BlendOp = D3D11_BLEND_OP_ADD;
238 blendState.RenderTarget[0].SrcBlendAlpha = D3D11_BLEND_ONE;
239 blendState.RenderTarget[0].DestBlendAlpha = D3D11_BLEND_ZERO;
240 blendState.RenderTarget[0].BlendOpAlpha = D3D11_BLEND_OP_ADD;
241 blendState.RenderTarget[0].RenderTargetWriteMask = D3D11_COLOR_WRITE_ENABLE_ALL;
242
243 if (S_OK != g_device->CreateBlendState(&blendState, &g_omBlend))
244 return false;
245
246 // create depth state
247 D3D11_DEPTH_STENCIL_DESC depthStencilDesc;
248 ZeroMemory(&depthStencilDesc, sizeof(D3D11_DEPTH_STENCIL_DESC));
249
250 // Set up the description of the stencil state.
251 depthStencilDesc.DepthEnable = true;
252 depthStencilDesc.DepthWriteMask = D3D11_DEPTH_WRITE_MASK_ALL;
253 depthStencilDesc.DepthFunc = D3D11_COMPARISON_LESS;
254 depthStencilDesc.StencilEnable = true;
255 depthStencilDesc.StencilReadMask = 0xFF;
256 depthStencilDesc.StencilWriteMask = 0xFF;
257
258 // Stencil operations if pixel is front-facing.
259 depthStencilDesc.FrontFace.StencilFailOp = D3D11_STENCIL_OP_KEEP;
260 depthStencilDesc.FrontFace.StencilDepthFailOp = D3D11_STENCIL_OP_INCR;
261 depthStencilDesc.FrontFace.StencilPassOp = D3D11_STENCIL_OP_KEEP;
262 depthStencilDesc.FrontFace.StencilFunc = D3D11_COMPARISON_ALWAYS;
263
264 // Stencil operations if pixel is back-facing.
265 depthStencilDesc.BackFace.StencilFailOp = D3D11_STENCIL_OP_KEEP;
266 depthStencilDesc.BackFace.StencilDepthFailOp = D3D11_STENCIL_OP_DECR;
267 depthStencilDesc.BackFace.StencilPassOp = D3D11_STENCIL_OP_KEEP;
268 depthStencilDesc.BackFace.StencilFunc = D3D11_COMPARISON_ALWAYS;
269
270 if (S_OK != g_device->CreateDepthStencilState(&depthStencilDesc, &g_omDepth))
271 return false;
272
273 // create raster states
274 D3D11_RASTERIZER_DESC rasterizerState;
275 rasterizerState.CullMode = D3D11_CULL_NONE;
276 rasterizerState.FillMode = D3D11_FILL_SOLID;
277 rasterizerState.FrontCounterClockwise = false;
278 rasterizerState.DepthBias = 0;
279 rasterizerState.DepthBiasClamp = 0.0f;
280 rasterizerState.DepthClipEnable = true;
281 rasterizerState.SlopeScaledDepthBias = 0.0f;
282 rasterizerState.ScissorEnable = false;
283 rasterizerState.MultisampleEnable = false;
284 rasterizerState.AntialiasedLineEnable = false;
285
286 if (S_OK != g_device->CreateRasterizerState(&rasterizerState, &g_rsStateSolid))
287 return false;
288
289 rasterizerState.FillMode = D3D11_FILL_WIREFRAME;
290 if (S_OK != g_device->CreateRasterizerState(&rasterizerState, &g_rsStateWire))
291 return false;
292
293 // we are ready
294 return true;
295 }
296
297 //-- Create -------------------------------------------------------------------
298 // Called on load. Addon should fully initalize or return error status
299 // !!! Add-on master function !!!
300 //-----------------------------------------------------------------------------
301 ADDON_STATUS ADDON_Create(void* hdl, void* visProps)
302 {
303 if (!visProps)
304 return ADDON_STATUS_UNKNOWN;
305
306 VIS_PROPS* props = (VIS_PROPS*) visProps;
307 g_context = (ID3D11DeviceContext*)props->device;
308 g_context->GetDevice(&g_device);
309
310 if (!init_renderer_objs())
311 return ADDON_STATUS_PERMANENT_FAILURE;
312
313 return ADDON_STATUS_NEED_SETTINGS;
314 }
315
316 //-- Render -------------------------------------------------------------------
317 // Called once per frame. Do all rendering here.
318 //-----------------------------------------------------------------------------
319 extern "C" void Render()
320 {
321 bool configured = true; //FALSE;
322
323 float factors[4] = { 1.0f, 1.0f, 1.0f, 1.0f };
324 g_context->OMSetBlendState(g_omBlend, factors, 0xFFFFFFFF);
325 g_context->OMSetDepthStencilState(g_omDepth, 0);
326 switch (g_mode)
327 {
328 case 1: // D3DFILL_POINT:
329 case 2: // D3DFILL_WIREFRAME:
330 g_context->RSSetState(g_rsStateWire);
331 break;
332 case 3: // D3DFILL_SOLID:
333 g_context->RSSetState(g_rsStateSolid);
334 break;
335 }
336
337 unsigned stride = sizeof(Vertex_t), offset = 0;
338 g_context->IASetVertexBuffers(0, 1, &g_vBuffer, &stride, &offset);
339 g_context->IASetInputLayout(g_inputLayout);
340 g_context->VSSetShader(g_vShader, 0, 0);
341 g_context->VSSetConstantBuffers(0, 1, &g_cViewProj);
342 g_context->VSSetConstantBuffers(1, 1, &g_cWorld);
343 g_context->PSSetShader(g_pShader, 0, 0);
344
345 if(configured)
346 {
347 x_angle += x_speed;
348 if (x_angle >= 360.0f)
349 x_angle -= 360.0f;
350
351 y_angle += y_speed;
352 if (y_angle >= 360.0f)
353 y_angle -= 360.0f;
354
355 z_angle += z_speed;
356 if (z_angle >= 360.0f)
357 z_angle -= 360.0f;
358
359 D3D11_MAPPED_SUBRESOURCE res;
360 if (S_OK == g_context->Map(g_cWorld, 0, D3D11_MAP_WRITE_DISCARD, 0, &res))
361 {
362 cbWorld *cWorld = (cbWorld*)res.pData;
363 XMMATRIX
364 matRotationX = XMMatrixRotationX(-XMConvertToRadians(x_angle)),
365 matRotationY = XMMatrixRotationY(-XMConvertToRadians(y_angle)),
366 matRotationZ = XMMatrixRotationZ(XMConvertToRadians(z_angle)),
367 matTranslation = XMMatrixTranslation(0.0f, -0.5f, 5.0f),
368 matWorld = matRotationZ * matRotationY * matRotationX * matTranslation;
369 XMStoreFloat4x4(&cWorld->world, XMMatrixTranspose(matWorld));
370
371 g_context->Unmap(g_cWorld, 0);
372 }
373
374 draw_bars();
375 }
376 }
377
378 extern "C" void Start(int iChannels, int iSamplesPerSec, int iBitsPerSample, const char* szSongName)
379 {
380 int x, y;
381
382 for(x = 0; x < 16; x++)
383 {
384 for(y = 0; y < 16; y++)
385 {
386 cHeights[y][x] = 0.0f;
387 }
388 }
389
390 scale = 1.0f / log(256.0f);
391
392 x_speed = 0.0f;
393 y_speed = 0.5f;
394 z_speed = 0.0f;
395 x_angle = 20.0f;
396 y_angle = 45.0f;
397 z_angle = 0.0f;
398 }
399
400 extern "C" void AudioData(const float* pAudioData, int iAudioDataLength, float *pFreqData, int iFreqDataLength)
401 {
402 int i,c;
403 int y=0;
404 float val;
405
406 int xscale[] = {0, 1, 2, 3, 5, 7, 10, 14, 20, 28, 40, 54, 74, 101, 137, 187, 255};
407
408 for(y = 15; y > 0; y--)
409 {
410 for(i = 0; i < 16; i++)
411 {
412 heights[y][i] = heights[y - 1][i];
413 }
414 }
415
416 for(i = 0; i < NUM_BANDS; i++)
417 {
418 for(c = xscale[i], y = 0; c < xscale[i + 1]; c++)
419 {
420 if (c<iAudioDataLength)
421 {
422 if((int)(pAudioData[c] * (0x07fff+.5f) > y))
423 y = (int)(pAudioData[c] * (0x07fff+.5f));
424 }
425 else
426 continue;
427 }
428 y >>= 7;
429 if(y > 0)
430 val = (logf((float)y) * scale);
431 else
432 val = 0;
433 heights[0][i] = val;
434 }
435 }
436
437
438 //-- GetInfo ------------------------------------------------------------------
439 // Tell XBMC our requirements
440 //-----------------------------------------------------------------------------
441 extern "C" void GetInfo(VIS_INFO* pInfo)
442 {
443 pInfo->bWantsFreq = false;
444 pInfo->iSyncDelay = 0;
445 }
446
447 //-- GetSubModules ------------------------------------------------------------
448 // Return any sub modules supported by this vis
449 //-----------------------------------------------------------------------------
450 extern "C" unsigned int GetSubModules(char ***names)
451 {
452 return 0; // this vis supports 0 sub modules
453 }
454
455 //-- OnAction -----------------------------------------------------------------
456 // Handle XBMC actions such as next preset, lock preset, album art changed etc
457 //-----------------------------------------------------------------------------
458 extern "C" bool OnAction(long flags, const void *param)
459 {
460 bool ret = false;
461 return ret;
462 }
463
464 //-- GetPresets ---------------------------------------------------------------
465 // Return a list of presets to XBMC for display
466 //-----------------------------------------------------------------------------
467 extern "C" unsigned int GetPresets(char ***presets)
468 {
469 return 0;
470 }
471
472 //-- GetPreset ----------------------------------------------------------------
473 // Return the index of the current playing preset
474 //-----------------------------------------------------------------------------
475 extern "C" unsigned GetPreset()
476 {
477 return 0;
478 }
479
480 //-- IsLocked -----------------------------------------------------------------
481 // Returns true if this add-on use settings
482 //-----------------------------------------------------------------------------
483 extern "C" bool IsLocked()
484 {
485 return false;
486 }
487
488 //-- Stop ---------------------------------------------------------------------
489 // This dll must stop all runtime activities
490 // !!! Add-on master function !!!
491 //-----------------------------------------------------------------------------
492 extern "C" void ADDON_Stop()
493 {
494 }
495
496 //-- Destroy ------------------------------------------------------------------
497 // Do everything before unload of this add-on
498 // !!! Add-on master function !!!
499 //-----------------------------------------------------------------------------
500 extern "C" void ADDON_Destroy()
501 {
502 if (g_cViewProj)
503 g_cViewProj->Release();
504 if (g_cWorld)
505 g_cWorld->Release();
506 if (g_rsStateSolid)
507 g_rsStateSolid->Release();
508 if (g_rsStateWire)
509 g_rsStateWire->Release();
510 if (g_omBlend)
511 g_omBlend->Release();
512 if (g_omDepth)
513 g_omDepth->Release();
514 if (g_vBuffer)
515 g_vBuffer->Release();
516 if (g_inputLayout)
517 g_inputLayout->Release();
518 if (g_vShader)
519 g_vShader->Release();
520 if (g_pShader)
521 g_pShader->Release();
522 if (g_device)
523 g_device->Release();
524 }
525
526 //-- HasSettings --------------------------------------------------------------
527 // Returns true if this add-on use settings
528 // !!! Add-on master function !!!
529 //-----------------------------------------------------------------------------
530 extern "C" bool ADDON_HasSettings()
531 {
532 return true;
533 }
534
535 //-- GetStatus ---------------------------------------------------------------
536 // Returns the current Status of this visualisation
537 // !!! Add-on master function !!!
538 //-----------------------------------------------------------------------------
539 extern "C" ADDON_STATUS ADDON_GetStatus()
540 {
541 return ADDON_STATUS_OK;
542 }
543
544 //-- GetSettings --------------------------------------------------------------
545 // Return the settings for XBMC to display
546 // !!! Add-on master function !!!
547 //-----------------------------------------------------------------------------
548 extern "C" unsigned int ADDON_GetSettings(ADDON_StructSetting ***sSet)
549 {
550 return 0;
551 }
552
553 //-- FreeSettings --------------------------------------------------------------
554 // Free the settings struct passed from XBMC
555 // !!! Add-on master function !!!
556 //-----------------------------------------------------------------------------
557
558 extern "C" void ADDON_FreeSettings()
559 {
560 }
561
562 //-- SetSetting ---------------------------------------------------------------
563 // Set a specific Setting value (called from XBMC)
564 // !!! Add-on master function !!!
565 //-----------------------------------------------------------------------------
566 extern "C" ADDON_STATUS ADDON_SetSetting(const char *strSetting, const void* value)
567 {
568 if (!strSetting || !value)
569 return ADDON_STATUS_UNKNOWN;
570
571 if (strcmp(strSetting, "bar_height")==0)
572 {
573 switch (*(int*) value)
574 {
575 case 0:
576 scale = 1.0f / log(256.0f);
577 break;
578
579 case 1:
580 scale = 2.0f / log(256.0f);
581 break;
582
583 case 2:
584 scale = 3.0f / log(256.0f);
585 break;
586
587 case 3:
588 scale = 0.5f / log(256.0f);
589 break;
590
591 case 4:
592 scale = 0.33f / log(256.0f);
593 break;
594 }
595 return ADDON_STATUS_OK;
596 }
597
598 else if (strcmp(strSetting, "speed")==0)
599 {
600 switch (*(int*) value)
601 {
602 case 0:
603 hSpeed = 0.05f;
604 break;
605
606 case 1:
607 hSpeed = 0.025f;
608 break;
609
610 case 2:
611 hSpeed = 0.0125f;
612 break;
613
614 case 3:
615 hSpeed = 0.10f;
616 break;
617
618 case 4:
619 hSpeed = 0.20f;
620 break;
621 }
622 return ADDON_STATUS_OK;
623 }
624
625 else if (strcmp(strSetting, "mode")==0)
626 {
627 switch (*(int*) value)
628 {
629 case 0:
630 g_mode = 3; // D3DFILL_SOLID;
631 break;
632
633 case 1:
634 g_mode = 2; // D3DFILL_WIREFRAME;
635 break;
636
637 case 2:
638 g_mode = 1; // D3DFILL_POINT;
639 break;
640 }
641 return ADDON_STATUS_OK;
642 }
643 return ADDON_STATUS_UNKNOWN;
644 }
645
646 //-- Announce -----------------------------------------------------------------
647 // Receive announcements from XBMC
648 //-----------------------------------------------------------------------------
649
650 extern "C" void ADDON_Announce(const char *flag, const char *sender, const char *message, const void *data)
651 {
652 }
0 /* XMMS - Cross-platform multimedia player
1 * Copyright (C) 1998-2000 Peter Alm, Mikael Alm, Olle Hallnas, Thomas Nilsson and 4Front Technologies
2 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation; either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
16 */
17
18 /*
19 * Wed May 24 10:49:37 CDT 2000
20 * Fixes to threading/context creation for the nVidia X4 drivers by
21 * Christian Zander <phoenix@minion.de>
22 */
23
24 /*
25 * Ported to XBMC by d4rk
26 * Also added 'hSpeed' to animate transition between bar heights
27 *
28 * Ported to GLES 2.0 by Gimli
29 */
30
31 #define __STDC_LIMIT_MACROS
32
33 #include <xbmc_vis_dll.h>
34 #include <string.h>
35 #include <math.h>
36 #include <stdint.h>
37
38 #if defined(HAS_GLES2)
39 #include "VisGUIShader.h"
40
41 #ifndef M_PI
42 #define M_PI 3.141592654f
43 #endif
44 #define DEG2RAD(d) ( (d) * M_PI/180.0f )
45
46 //OpenGL wrapper - allows us to use same code of functions draw_bars and render
47 #define GL_PROJECTION MM_PROJECTION
48 #define GL_MODELVIEW MM_MODELVIEW
49
50 #define glPushMatrix() vis_shader->PushMatrix()
51 #define glPopMatrix() vis_shader->PopMatrix()
52 #define glTranslatef(x,y,z) vis_shader->Translatef(x,y,z)
53 #define glRotatef(a,x,y,z) vis_shader->Rotatef(DEG2RAD(a),x,y,z)
54 #define glPolygonMode(a,b) ;
55 #define glBegin(a) vis_shader->Enable()
56 #define glEnd() vis_shader->Disable()
57 #define glMatrixMode(a) vis_shader->MatrixMode(a)
58 #define glLoadIdentity() vis_shader->LoadIdentity()
59 #define glFrustum(a,b,c,d,e,f) vis_shader->Frustum(a,b,c,d,e,f)
60
61 GLenum g_mode = GL_TRIANGLES;
62 float g_fWaveform[2][512];
63 const char *frag = "precision mediump float; \n"
64 "varying lowp vec4 m_colour; \n"
65 "void main () \n"
66 "{ \n"
67 " gl_FragColor = m_colour; \n"
68 "}\n";
69
70 const char *vert = "attribute vec4 m_attrpos;\n"
71 "attribute vec4 m_attrcol;\n"
72 "attribute vec4 m_attrcord0;\n"
73 "attribute vec4 m_attrcord1;\n"
74 "varying vec4 m_cord0;\n"
75 "varying vec4 m_cord1;\n"
76 "varying lowp vec4 m_colour;\n"
77 "uniform mat4 m_proj;\n"
78 "uniform mat4 m_model;\n"
79 "void main ()\n"
80 "{\n"
81 " mat4 mvp = m_proj * m_model;\n"
82 " gl_Position = mvp * m_attrpos;\n"
83 " m_colour = m_attrcol;\n"
84 " m_cord0 = m_attrcord0;\n"
85 " m_cord1 = m_attrcord1;\n"
86 "}\n";
87
88 CVisGUIShader *vis_shader = NULL;
89
90 #elif defined(HAS_OPENGL)
91 #ifdef __APPLE__
92 #include <OpenGL/gl.h>
93 #else
94 #include <GL/gl.h>
95 #endif
96 GLenum g_mode = GL_FILL;
97
98 #endif
99
100 #define NUM_BANDS 16
101
102 GLfloat x_angle = 20.0, x_speed = 0.0;
103 GLfloat y_angle = 45.0, y_speed = 0.5;
104 GLfloat z_angle = 0.0, z_speed = 0.0;
105 GLfloat heights[16][16], cHeights[16][16], scale;
106 GLfloat hSpeed = 0.05;
107
108 #if defined(HAS_OPENGL)
109 void draw_rectangle(GLfloat x1, GLfloat y1, GLfloat z1, GLfloat x2, GLfloat y2, GLfloat z2)
110 {
111 if(y1 == y2)
112 {
113 glVertex3f(x1, y1, z1);
114 glVertex3f(x2, y1, z1);
115 glVertex3f(x2, y2, z2);
116
117 glVertex3f(x2, y2, z2);
118 glVertex3f(x1, y2, z2);
119 glVertex3f(x1, y1, z1);
120 }
121 else
122 {
123 glVertex3f(x1, y1, z1);
124 glVertex3f(x2, y1, z2);
125 glVertex3f(x2, y2, z2);
126
127 glVertex3f(x2, y2, z2);
128 glVertex3f(x1, y2, z1);
129 glVertex3f(x1, y1, z1);
130 }
131 }
132
133 void draw_bar(GLfloat x_offset, GLfloat z_offset, GLfloat height, GLfloat red, GLfloat green, GLfloat blue )
134 {
135 GLfloat width = 0.1;
136
137 if (g_mode == GL_POINT)
138 glColor3f(0.2, 1.0, 0.2);
139
140 if (g_mode != GL_POINT)
141 {
142 glColor3f(red,green,blue);
143 draw_rectangle(x_offset, height, z_offset, x_offset + width, height, z_offset + 0.1);
144 }
145 draw_rectangle(x_offset, 0, z_offset, x_offset + width, 0, z_offset + 0.1);
146
147 if (g_mode != GL_POINT)
148 {
149 glColor3f(0.5 * red, 0.5 * green, 0.5 * blue);
150 draw_rectangle(x_offset, 0.0, z_offset + 0.1, x_offset + width, height, z_offset + 0.1);
151 }
152 draw_rectangle(x_offset, 0.0, z_offset, x_offset + width, height, z_offset );
153
154 if (g_mode != GL_POINT)
155 {
156 glColor3f(0.25 * red, 0.25 * green, 0.25 * blue);
157 draw_rectangle(x_offset, 0.0, z_offset , x_offset, height, z_offset + 0.1);
158 }
159 draw_rectangle(x_offset + width, 0.0, z_offset , x_offset + width, height, z_offset + 0.1);
160 }
161
162 #elif defined(HAS_GLES2)
163
164 void draw_bar(GLfloat x_offset, GLfloat z_offset, GLfloat height, GLfloat red, GLfloat green, GLfloat blue )
165 {
166 // avoid zero sized bars, which results in overlapping triangles of same depth and display artefacts
167 height = std::max(height, 1e-3f);
168
169 GLfloat col[] = {
170 red * 0.1f, green * 0.1f, blue * 0.1f,
171 red * 0.2f, green * 0.2f, blue * 0.2f,
172 red * 0.3f, green * 0.3f, blue * 0.3f,
173 red * 0.4f, green * 0.4f, blue * 0.4f,
174 red * 0.5f, green * 0.5f, blue * 0.5f,
175 red * 0.6f, green * 0.6f, blue * 0.6f,
176 red * 0.7f, green * 0.7f, blue * 0.7f,
177 red * 0.8f, green * 0.8f, blue *0.8f
178 };
179 GLfloat ver[] = {
180 x_offset + 0.0f, 0.0f, z_offset + 0.0f,
181 x_offset + 0.1f, 0.0f, z_offset + 0.0f,
182 x_offset + 0.1f, 0.0f, z_offset + 0.1f,
183 x_offset + 0.0f, 0.0f, z_offset + 0.1f,
184 x_offset + 0.0f, height, z_offset + 0.0f,
185 x_offset + 0.1f, height, z_offset + 0.0f,
186 x_offset + 0.1f, height, z_offset + 0.1f,
187 x_offset + 0.0f, height, z_offset + 0.1f
188 };
189
190 GLubyte idx[] = {
191 // Bottom
192 0, 1, 2,
193 0, 2, 3,
194 // Left
195 0, 4, 7,
196 0, 7, 3,
197 // Back
198 3, 7, 6,
199 3, 6, 2,
200 // Right
201 1, 5, 6,
202 1, 6, 2,
203 // Front
204 0, 4, 5,
205 0, 5, 1,
206 // Top
207 4, 5, 6,
208 4, 6, 7
209 };
210
211 GLint posLoc = vis_shader->GetPosLoc();
212 GLint colLoc = vis_shader->GetColLoc();
213
214 glVertexAttribPointer(colLoc, 3, GL_FLOAT, 0, 0, col);
215 glVertexAttribPointer(posLoc, 3, GL_FLOAT, 0, 0, ver);
216
217 glEnableVertexAttribArray(posLoc);
218 glEnableVertexAttribArray(colLoc);
219
220 glDrawElements(g_mode, 36, GL_UNSIGNED_BYTE, idx);
221
222 glDisableVertexAttribArray(posLoc);
223 glDisableVertexAttribArray(colLoc);
224 }
225 #endif
226
227 void draw_bars(void)
228 {
229 int x,y;
230 GLfloat x_offset, z_offset, r_base, b_base;
231
232 glClear(GL_DEPTH_BUFFER_BIT);
233 glPushMatrix();
234 glTranslatef(0.0,-0.5,-5.0);
235 glRotatef(x_angle,1.0,0.0,0.0);
236 glRotatef(y_angle,0.0,1.0,0.0);
237 glRotatef(z_angle,0.0,0.0,1.0);
238
239 glPolygonMode(GL_FRONT_AND_BACK, g_mode);
240 glBegin(GL_TRIANGLES);
241
242 for(y = 0; y < 16; y++)
243 {
244 z_offset = -1.6 + ((15 - y) * 0.2);
245
246 b_base = y * (1.0 / 15);
247 r_base = 1.0 - b_base;
248
249 for(x = 0; x < 16; x++)
250 {
251 x_offset = -1.6 + ((float)x * 0.2);
252 if (::fabs(cHeights[y][x]-heights[y][x])>hSpeed)
253 {
254 if (cHeights[y][x]<heights[y][x])
255 cHeights[y][x] += hSpeed;
256 else
257 cHeights[y][x] -= hSpeed;
258 }
259 draw_bar(x_offset, z_offset,
260 cHeights[y][x], r_base - (float(x) * (r_base / 15.0)),
261 (float)x * (1.0 / 15), b_base);
262 }
263 }
264 glEnd();
265 glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
266 glPopMatrix();
267 }
268
269 //-- Create -------------------------------------------------------------------
270 // Called on load. Addon should fully initalize or return error status
271 //-----------------------------------------------------------------------------
272 ADDON_STATUS ADDON_Create(void* hdl, void* props)
273 {
274 if (!props)
275 return ADDON_STATUS_UNKNOWN;
276
277 scale = 1.0 / log(256.0);
278
279 #if defined(HAS_GLES2)
280 vis_shader = new CVisGUIShader(vert, frag);
281
282 if(!vis_shader)
283 return ADDON_STATUS_UNKNOWN;
284
285 if(!vis_shader->CompileAndLink())
286 {
287 delete vis_shader;
288 return ADDON_STATUS_UNKNOWN;
289 }
290 #endif
291
292 scale = 1.0 / log(256.0);
293
294 return ADDON_STATUS_NEED_SETTINGS;
295 }
296
297 //-- Render -------------------------------------------------------------------
298 // Called once per frame. Do all rendering here.
299 //-----------------------------------------------------------------------------
300 extern "C" void Render()
301 {
302 glDisable(GL_BLEND);
303 glMatrixMode(GL_PROJECTION);
304 glPushMatrix();
305 glLoadIdentity();
306 glFrustum(-1, 1, -1, 1, 1.5, 10);
307 glMatrixMode(GL_MODELVIEW);
308 glPushMatrix();
309 glLoadIdentity();
310 glEnable(GL_DEPTH_TEST);
311 glDepthFunc(GL_LESS);
312 glPolygonMode(GL_FRONT, GL_FILL);
313 //glPolygonMode(GL_BACK, GL_FILL);
314 x_angle += x_speed;
315 if(x_angle >= 360.0)
316 x_angle -= 360.0;
317
318 y_angle += y_speed;
319 if(y_angle >= 360.0)
320 y_angle -= 360.0;
321
322 z_angle += z_speed;
323 if(z_angle >= 360.0)
324 z_angle -= 360.0;
325
326 draw_bars();
327 glPopMatrix();
328 glMatrixMode(GL_PROJECTION);
329 glPopMatrix();
330 glDisable(GL_DEPTH_TEST);
331 glEnable(GL_BLEND);
332 }
333
334 extern "C" void Start(int iChannels, int iSamplesPerSec, int iBitsPerSample, const char* szSongName)
335 {
336 int x, y;
337
338 for(x = 0; x < 16; x++)
339 {
340 for(y = 0; y < 16; y++)
341 {
342 cHeights[y][x] = 0.0;
343 }
344 }
345
346 x_speed = 0.0;
347 y_speed = 0.5;
348 z_speed = 0.0;
349 x_angle = 20.0;
350 y_angle = 45.0;
351 z_angle = 0.0;
352 }
353
354 extern "C" void AudioData(const float* pAudioData, int iAudioDataLength, float *pFreqData, int iFreqDataLength)
355 {
356 int i,c;
357 int y=0;
358 GLfloat val;
359
360 int xscale[] = {0, 1, 2, 3, 5, 7, 10, 14, 20, 28, 40, 54, 74, 101, 137, 187, 255};
361
362 for(y = 15; y > 0; y--)
363 {
364 for(i = 0; i < 16; i++)
365 {
366 heights[y][i] = heights[y - 1][i];
367 }
368 }
369
370 for(i = 0; i < NUM_BANDS; i++)
371 {
372 for(c = xscale[i], y = 0; c < xscale[i + 1]; c++)
373 {
374 if (c<iAudioDataLength)
375 {
376 if((int)(pAudioData[c] * (INT16_MAX)) > y)
377 y = (int)(pAudioData[c] * (INT16_MAX));
378 }
379 else
380 continue;
381 }
382 y >>= 7;
383 if(y > 0)
384 val = (logf(y) * scale);
385 else
386 val = 0;
387 heights[0][i] = val;
388 }
389 }
390
391
392 //-- GetInfo ------------------------------------------------------------------
393 // Tell XBMC our requirements
394 //-----------------------------------------------------------------------------
395 extern "C" void GetInfo(VIS_INFO* pInfo)
396 {
397 pInfo->bWantsFreq = false;
398 pInfo->iSyncDelay = 0;
399 }
400
401
402 //-- GetSubModules ------------------------------------------------------------
403 // Return any sub modules supported by this vis
404 //-----------------------------------------------------------------------------
405 extern "C" unsigned int GetSubModules(char ***names)
406 {
407 return 0; // this vis supports 0 sub modules
408 }
409
410 //-- OnAction -----------------------------------------------------------------
411 // Handle XBMC actions such as next preset, lock preset, album art changed etc
412 //-----------------------------------------------------------------------------
413 extern "C" bool OnAction(long flags, const void *param)
414 {
415 bool ret = false;
416 return ret;
417 }
418
419 //-- GetPresets ---------------------------------------------------------------
420 // Return a list of presets to XBMC for display
421 //-----------------------------------------------------------------------------
422 extern "C" unsigned int GetPresets(char ***presets)
423 {
424 return 0;
425 }
426
427 //-- GetPreset ----------------------------------------------------------------
428 // Return the index of the current playing preset
429 //-----------------------------------------------------------------------------
430 extern "C" unsigned GetPreset()
431 {
432 return 0;
433 }
434
435 //-- IsLocked -----------------------------------------------------------------
436 // Returns true if this add-on use settings
437 //-----------------------------------------------------------------------------
438 extern "C" bool IsLocked()
439 {
440 return false;
441 }
442
443 //-- Stop ---------------------------------------------------------------------
444 // This dll must cease all runtime activities
445 // !!! Add-on master function !!!
446 //-----------------------------------------------------------------------------
447 extern "C" void ADDON_Stop()
448 {
449 }
450
451 //-- Destroy ------------------------------------------------------------------
452 // Do everything before unload of this add-on
453 // !!! Add-on master function !!!
454 //-----------------------------------------------------------------------------
455 extern "C" void ADDON_Destroy()
456 {
457 #if defined(HAS_GLES2)
458 if(vis_shader)
459 {
460 vis_shader->Free();
461 delete vis_shader;
462 }
463 #endif
464 }
465
466 //-- HasSettings --------------------------------------------------------------
467 // Returns true if this add-on use settings
468 // !!! Add-on master function !!!
469 //-----------------------------------------------------------------------------
470 extern "C" bool ADDON_HasSettings()
471 {
472 return true;
473 }
474
475 //-- GetStatus ---------------------------------------------------------------
476 // Returns the current Status of this visualisation
477 // !!! Add-on master function !!!
478 //-----------------------------------------------------------------------------
479 extern "C" ADDON_STATUS ADDON_GetStatus()
480 {
481 return ADDON_STATUS_OK;
482 }
483
484 //-- GetSettings --------------------------------------------------------------
485 // Return the settings for XBMC to display
486 // !!! Add-on master function !!!
487 //-----------------------------------------------------------------------------
488 extern "C" unsigned int ADDON_GetSettings(ADDON_StructSetting ***sSet)
489 {
490 return 0;
491 }
492
493 //-- FreeSettings --------------------------------------------------------------
494 // Free the settings struct passed from XBMC
495 // !!! Add-on master function !!!
496 //-----------------------------------------------------------------------------
497
498 extern "C" void ADDON_FreeSettings()
499 {
500 }
501
502 //-- SetSetting ---------------------------------------------------------------
503 // Set a specific Setting value (called from XBMC)
504 // !!! Add-on master function !!!
505 //-----------------------------------------------------------------------------
506 extern "C" ADDON_STATUS ADDON_SetSetting(const char *strSetting, const void* value)
507 {
508 if (!strSetting || !value)
509 return ADDON_STATUS_UNKNOWN;
510
511 if (strcmp(strSetting, "bar_height")==0)
512 {
513 switch (*(int*) value)
514 {
515 case 1://standard
516 scale = 1.f / log(256.f);
517 break;
518
519 case 2://big
520 scale = 2.f / log(256.f);
521 break;
522
523 case 3://real big
524 scale = 3.f / log(256.f);
525 break;
526
527 case 4://unused
528 scale = 0.33f / log(256.f);
529 break;
530
531 case 0://small
532 default:
533 scale = 0.5f / log(256.f);
534 break;
535 }
536 return ADDON_STATUS_OK;
537 }
538 else if (strcmp(strSetting, "speed")==0)
539 {
540 switch (*(int*) value)
541 {
542 case 1:
543 hSpeed = 0.025f;
544 break;
545
546 case 2:
547 hSpeed = 0.0125f;
548 break;
549
550 case 3:
551 hSpeed = 0.1f;
552 break;
553
554 case 4:
555 hSpeed = 0.2f;
556 break;
557
558 case 0:
559 default:
560 hSpeed = 0.05f;
561 break;
562 }
563 return ADDON_STATUS_OK;
564 }
565 else if (strcmp(strSetting, "mode")==0)
566 {
567 #if defined(HAS_OPENGL)
568 switch (*(int*) value)
569 {
570 case 1:
571 g_mode = GL_LINE;
572 break;
573
574 case 2:
575 g_mode = GL_POINT;
576 break;
577
578 case 0:
579 default:
580 g_mode = GL_FILL;
581 break;
582 }
583 #else
584 switch (*(int*) value)
585 {
586 case 1:
587 g_mode = GL_LINE_LOOP;
588 break;
589
590 case 2:
591 g_mode = GL_LINES; //no points on gles!
592 break;
593
594 case 0:
595 default:
596 g_mode = GL_TRIANGLES;
597 break;
598 }
599
600 #endif
601
602 return ADDON_STATUS_OK;
603 }
604
605 return ADDON_STATUS_UNKNOWN;
606 }
607
608 //-- Announce -----------------------------------------------------------------
609 // Receive announcements from XBMC
610 // !!! Add-on master function !!!
611 //-----------------------------------------------------------------------------
612 extern "C" void ADDON_Announce(const char *flag, const char *sender, const char *message, const void *data)
613 {
614 }
0 #ifndef OPENGL_SPECTRUM_H
1 #define OPENGL_SPECTRUM_H
2
3 extern void oglspectrum_configure(void);
4 extern void oglspectrum_read_config(void);
5
6 typedef struct
7 {
8 gboolean tdfx_mode;
9 } OGLSpectrumConfig;
10
11 extern OGLSpectrumConfig oglspectrum_cfg;
12
13 #endif
0 <?xml version="1.0" encoding="UTF-8"?>
1 <addon
2 id="visualization.spectrum"
3 version="1.0.14"
4 name="Spectrum"
5 provider-name="Team XBMC">
6 <extension
7 point="xbmc.player.musicviz"
8 library_@PLATFORM@="@LIBRARY_FILENAME@"/>
9 <extension point="xbmc.addon.metadata">
10 <summary lang="af">Visualisering wys a roterende 3D Spektrum Analiseerder</summary>
11 <summary lang="ar">عارض يظهر طيف محلل دوري ثلاثي الأبعاد</summary>
12 <summary lang="be">Visualisation showing a rotating 3D Spectrum Analyzer</summary>
13 <summary lang="bg">Визуализация представяща ротиращ се 3D спектрален анализатор</summary>
14 <summary lang="ca">Visualització mostrant un analitzador d'espectre giratori 3D</summary>
15 <summary lang="cs">Vizualizace zobrazující rotující 3D spektrální analyzátor</summary>
16 <summary lang="da">Visualisering der viser en roterende 3D-spektrumanalyse</summary>
17 <summary lang="de">Diese Visualisierung zeigt eine rotierende Spektrum Analyse in 3D</summary>
18 <summary lang="el">Οπτικοποίηση που εμφανίζει έναν περιστρεφόμενο τρισδιάστατο Αναλυτή Φάσματος</summary>
19 <summary lang="en">Visualisation showing a rotating 3D Spectrum Analyzer</summary>
20 <summary lang="es">Visualización que muestra un analizador de espectro en 3D girando</summary>
21 <summary lang="es_AR">Visualización que muestra un analizador de espectro en 3D girando</summary>
22 <summary lang="es_MX">Visualización que muestra un Analizador de Espectro giratorio 3D</summary>
23 <summary lang="et">Visuaal, mis näitab pöörlevat 3D spektraalanalüüsi</summary>
24 <summary lang="fi">Pyörivä 3D-spektrianalysaattori</summary>
25 <summary lang="fr">Visualisation affichant un analyseur de spectre 3D en rotation</summary>
26 <summary lang="gl">Visualización que amosa un analizador de espectro virando en 3D</summary>
27 <summary lang="he">DirectX Spectrum זהו חיזוי אשר מציג סיבובי 3D Spectrum Analyzer</summary>
28 <summary lang="hr">Vizualizacija koja prikazuje rotirajući 3D spektralni analizator</summary>
29 <summary lang="hu">Vizualizáció 3D spektrum analizátorral</summary>
30 <summary lang="is">Myndskreyting sem sýnir þrívíddar rófgreini</summary>
31 <summary lang="it">La visualizzazione mostra un analizzatore di spettro 3D rotante</summary>
32 <summary lang="ja">回転する 3D スペクトラムアナライザーを表示する ビジュアライザー</summary>
33 <summary lang="ko">회전하는 3D 스펙트럼 분석기를 보여지는 음악시각화</summary>
34 <summary lang="lt">Vizualizacija rodo rotacinis 3D spektro analizatorių</summary>
35 <summary lang="mk">Визуализација која покажува ротирачки 3Д анализатор на спектар</summary>
36 <summary lang="nl">DirectX-visualisatie die een roterende 3D-spectrumanalyse weergeeft</summary>
37 <summary lang="no">Visualisering som viser en roterende 3D ​​Spectrum Analyzer</summary>
38 <summary lang="pl">Wizualizacja pokazująca obracający się analizator widma w 3D</summary>
39 <summary lang="pt">Visualização que mostra um analisador espectral rotativo em 3D</summary>
40 <summary lang="pt_BR">Visualização que mostra um analisador espectral rotativo em 3D</summary>
41 <summary lang="ro">Vizualizare cu afișarea unui analizor de spectru 3D rotativ</summary>
42 <summary lang="ru">Визуализация, показывающая вращающийся трёхмерный анализатор спектра</summary>
43 <summary lang="sk">Vizualizácia zobrazujúca rotujúci 3D spektrálny analyzátor</summary>
44 <summary lang="sl">Vizualizacija, ki prikatuje vrtečo 3D spektralno analizo</summary>
45 <summary lang="sv">Visualisering som visar en roterande 3D-spektrumanalysator</summary>
46 <summary lang="th">การแสดงแสงสี ทำให้เห็นการหมุนแบบ 3 มิติ ของการวิเคราะห์คลื่นความถี่เสียง</summary>
47 <summary lang="uk">Візуалізація що показує обертаючийся 3D спектроаналізатор.</summary>
48 <summary lang="zh">显示旋转三维频谱分析图像的可视化效果</summary>
49 <summary lang="zh_TW">顯示旋轉的3D頻譜分析視覺效果</summary>
50 <description lang="af">Spectrum is 'n Visualisering wat 'n roterende 3D Spektrum Analiseerder, verbeeld met , vertoon wat op die maat van die musiek beweeg en 'n golf effek oor die spektrum rooster skep.&#10;Dit het ook verstellings vir die aanpas van spektrum staaf hoogte, sy spoed, en hoe die stawe verbeeld word (solied, punte, draad raamwerk) en is 'n lekker ligte, lae cpu verbruik visualisering wat fantasties lyk</description>
51 <description lang="ar">طيف هو تحليل بصري متحرك ثلاثي الابعاد للموسيقى! يتحرك بواسطة يرنامج على وزن الموسيقى في شكل موجة.&#10;توجد ايضا اعدادات لتعديل شبكة الطيف من حيث طول الاعمدة, سرعتها, وحتى شكلها (صلبة, نقاط, اسلاك) تعمل هذة بحمل خفيف, ومعالجة cpu ضئيلة لكنها تبدو رائعة</description>
52 <description lang="be">Spectrum is a Visualisation showing a rotating 3D Spectrum Analyzer rendered in that moves to the beat of the music creating a wave effect across the spectrum grid.&#10;It also has settings to adjust the spectrum bar height, Its speed, and how the bars are rendered (solid, points, wire frame) and is a nice light weight, low cpu useage visualisation that looks great</description>
53 <description lang="bg">Spectrum е визуализация изобразяваща ротиращ се 3D спектрален анализатор (рендването се извършва с ). Ротацията е според ритъма на музиката и предизвиква вълнови ефект по спектрална решетка.&#10;Можете да настройвате височината на спектралните стълбове, скоростта и рендването - solid, points, wire frame. Характеризира се с отличен вид, като същевременно почти не натоварва процесора.</description>
54 <description lang="ca">Spectrum és una visualització que mostra un analitzador d'espectre giratori en 3D renderitzat amb que es mou al ritme de la música creant un efecte d'ona al llarg de la graella de l'espectre.⏎ També té opcions per ajustar l'alçada de la barra de l'espectre, la seva velocitat, i com es renderitzen les barres (sòlid, punts, malla de filferro). Una visualització que utilitza poca CPU i que és veu molt bé. </description>
55 <description lang="cs">Spectrum je vizualizace zobrazující rotující 3D spektrální analyzátor rendrovaný v , který se pohybuje v rytmu hudby a vytváří vlnový efekt napříč spektrální mřížkou.&#10;Obsahuje také nastavení pro přizpůsobení výšky sloupců spektra, rychlosti a způsobu vykreslení (vyplněný, body, drátový model). Je to velmi lehká vizualizace s nízkou zatíží CPU, která vypadá skvěle.</description>
56 <description lang="da">-spektrum er en visualisering, der viser en roterende 3D-spektrumanalysator renderet i DirectX, som bevæger sig i takt til musikken og skaber en bølgeeffekt på tværs af spektrumfeltet.&#10;Den har også indstillinger til at justere spektrumliniens højde, fart og hvordan den bliver renderet (fast, punkter, trådramme). Det er en letvægtsvisualisering med lavt CPU-forbrug, som ser godt ud.</description>
57 <description lang="de">Spectrum ist eine Visualisierung, die eine rotierende Spektrum Analyse in 3D zeigt. Die Visualisierung wird so gerendert, dass sie sich zum Takt der Musik bewegt und eine Welle über das Spektrum Grid legt.&#10;Es lässt sich neben der Höhe, die Geschwindigkeit als auch die Art der Balken (durchgehend, Punkte, Drahtgeflecht) einstellen. Eine schöne Visualisierung, die nur eine geringe CPU-Last erzeugt</description>
58 <description lang="el">Το Spectrum είναι μία Οπτικοποίηση που εμφανίζει έναν περιστρεφόμενο τρισδιάστατο Αναλυτή Φάσματος που αποδίδεται μέσω και κινείται στο ρυθμό της μουσικής δημιουργώντας ένα κυματικό εφέ κατά μήκος του φασματικού πλέγματος.&#10;Διαθέτει ρυθμίσεις για τον ορισμό του ύψους των στηλών του φάσματος, του τρόπου απόδοσης των στηλών (συμπαγείς, σημειακές, συρματόπλεγμα), και είναι μία ελαφριά, εμφανίσιμη και χαμηλής υπολογιστικής ισχύος οπτικοποίηση</description>
59 <description lang="en">Spectrum is a Visualisation showing a rotating 3D Spectrum Analyzer rendered in that moves to the beat of the music creating a wave effect across the spectrum grid.&#10;It also has settings to adjust the spectrum bar height, Its speed, and how the bars are rendered (solid, points, wire frame) and is a nice light weight, low cpu useage visualisation that looks great</description>
60 <description lang="es">Spectrum es una visualización que muestra un analizador de espectro en 3D girando renderizado con que se mueve al ritmo de la música creando un efecto de onda en la rejilla del espectro.&#10;Se puede ajustar la altura de las barras, su velocidad, y como son renderizadas (sólido, puntos, malla). Es una visualización que utiliza poca CPU y muy agradable.</description>
61 <description lang="es_AR">Spectrum es una visualización que muestra un analizador de espectro en 3D girando, renderizado con , que se mueve al ritmo de la música creando un efecto de onda en la rejilla del espectro.&#10;Se puede ajustar la altura de las barras, su velocidad, y como son renderizadas (sólido, puntos, malla). Es una visualización que utiliza poca CPU y muy agradable.</description>
62 <description lang="es_MX">Espectro es una Visualización que muestra un Analizador de Especto en 3D rotando renderizado en que se mueve al ritmo de la música creando un efecto de onda a través del espectro de la red.&#10;También tiene configuraciones para ajustar la altura de la barra de espectro, su velocidad, y cómo las barras son renderizadas (sólidas, puntos, malla de alambre) y es una buena visualización liviana, de poco uso de cpu que se ve genial.</description>
63 <description lang="et">Spectrum on visuaal, mis näitab 3D spektraalanalüüsi renderdatud 'is, mis liigub liigub muusika rütmis luues laineefekti üle spektraalvõrgustiku.&#10;Lisaks on olemas ka võimalus seadistada spektri kõrgust, selle kiirust ja kuidas ribasid renderdatakse (tahkis, punktid, sõrestik). Spectrum on hea väljanägemisega kerge ja vähese protsessorikasutusega visuaal.</description>
64 <description lang="fi">Näyttää pyörivän 3D-spektrianalysaattorin, joka liikkuu musiikin tahdissa tuottaen aaltotehosteen spektrikuvaajaan.&#10;Spektripalkin korkeuden, nopeuden, ja piirtotavan (täytetyt, pisteet, ääriviivat) voi asettaa asetuksista. Spectrum on kevyt visualisointi joka näyttää hyvältä.</description>
65 <description lang="fr">Spectrum est une visualisation affichant un analyseur de spectre 3D en rotation, sous . Il réagit au rythme de la musique, créant un effet d'onde sur la grille du spectre.&#10;Il propose divers paramètres pour ajuster la hauteur, la vitesse, et le rendu des barres du spectre (plein, points, fil de fer). Une visualisation légère, peu gourmande en CPU et agréable à regarder.</description>
66 <description lang="gl">Spectrum é unha Visualización que amosa un analizador de espectro virando en 3D renderizado con que se move ó ritmo da música creando un efecto de onde ó longo da grella do espectro.&#10;Tamén ten opcións para axustar a altura da barra, a velocidade e como se renderizan as barras (sólidas, puntos, malla) do espectro. É bonito, lixeiro, de baixo custo en CPU.</description>
67 <description lang="he">Spectrum זהו חיזוי אשר מציג סיבובי 3D Spectrum Analyzer אשר זז לצלילי המוזיקה שיוצר אפקט גלים לרוחב רשת הספקטרום.&#10;יש אפשרות גם להגדיר את גובה פס הספקטרום, את המהירות, ואת התנהגות הפסים (filled, points, wire frame) וזהו חיזוי נחמד קל משקל לא מעמיס על המעבד ונראה נהדר.</description>
68 <description lang="hr">Spectrum je vizualizacija koja prikazuje rotirajući 3D spektralni analizator renderiran u -u koji se pokreće u ritmu muzike stvarajući efekt valova u spektralnoj mreži.&#10;Također sadrži i postavke za namještanje visine sprektralnih traka, njihove brzine, i načina na koji su prikazane (popunjeno, točke, žičani okvir). Vizualizacija izgleda sjajno te je malih memorijskih i CPU zahtjeva.</description>
69 <description lang="hu">Az Spectrum egy olyan vizualizáció ami egy 3D hang spektrum analizátort mutat segítségével megjelenítve, ami a zene ritmusára mozog egy hullám-effektust képezve a teljes spektrumhálón.&#10;Beállítható a spektrum oszlopok magassága, mozgási sebessége és hogy az oszlopok hogyan jelenjenek meg (teli, pontok, drótváz). Ez egy kis erőforrásigényű vizualizáció ami nagyon jól mutat.</description>
70 <description lang="is">Spectrum er myndskreyting sem sýnir þrívíddar rófgreini sem snýst sem er teiknaður í og hreyfist í takt við tónlistina sem myndar bylgjuhreyfingu yfir rófið.&#10;Það er líka hægt að stilla hæð mælingana, hraða og hvernig þær eru teiknaðar (fyllt, punktar, útlínur) myndskrytingin setur lítið álag á örgjörva og lítur vel út</description>
71 <description lang="it">Spectrum è una visualizzazione che mostra un analizzatore di spettro renderizzato in che si muove a tempo di musica creando un effetto onda attraverso la griglia.&#10;E' possibile regolare varie impostazioni: l'altezza delle barre, la velocità di risposta e come le barre sono renderizzate (piene, con punti o con righe). E' una visualizzazione rilassante e con basso uso del processore.</description>
72 <description lang="ja">Spectrum is a Visualisation showing a rotating 3D Spectrum Analyzer rendered in that moves to the beat of the music creating a wave effect across the spectrum grid.&#10;It also has settings to adjust the spectrum bar height, Its speed, and how the bars are rendered (solid, points, wire frame) and is a nice light weight, low cpu useage visualisation that looks great</description>
73 <description lang="ko">스펙트럼은 회전하는 3D 스펙트럼 분석기를 통해 음악시각화를 보여주며 음악의 비트가 만들어내는 웨이브 효과를 스펙트럼 그리드에 보여줍니다. 설정에서 스펙트럼 바의 높이, 속도, 바의 갯수 (채워짐, 점, 와이어 프레임)를 지정할수 있습니다. 가볍고 CPU를 많이 사용하지 않습니다.</description>
74 <description lang="lt">Spektro vizualizacija, kurioje besisukantį 3D spektro analizatorių, priimtą , katras juda į muzikos ritmą, įsteigiantis bangų poveikį visame spektro tinklelyje.&#10;Taip pat turi nustatymus nureguliuoti spektro juostos aukštį, jos greitį, ir teikiamas kraštines (kieta, taškai, tinklelio rėmas) ir yra gražus bei lengvas, mažai naudoja CPU vizualizacijai, ir atrodo puikiai</description>
75 <description lang="mk">Spectrum is a Visualisation showing a rotating 3D Spectrum Analyzer rendered in that moves to the beat of the music creating a wave effect across the spectrum grid.⏎ It also has settings to adjust the spectrum bar height, Its speed, and how the bars are rendered (solid, points, wire frame) and is a nice light weight, low cpu useage visualisation that looks great</description>
76 <description lang="nl">Spectrum is een visualisatie met een draaiende 3D ​​Spectrum Analyzer gerenderd in . Deze visualisatie beweegt op het ritme van de muziek en creëert een golf effect over het hele spectrum. ⏎&#10;Het heeft instellingen om de barhoogte en de snelheid aan te passen, en hoe de staven worden weergegeven (vast, punten, draad frame) en is een mooie lichtgewicht visualisatie die weinig van de cpu vraagt en er geweldig uit ziet.</description>
77 <description lang="no">Spectrum er en visualisering som viser et roterende 3D ​​Spectrum Analyzer gjengitt i som flytter til rytmen i musikken skaper en bølge effekt over hele spekteret rutenettet.⏎&#10;Det har også innstillinger for å justere spekterets bar høyde, hastighet, og hvordan barene gjengis (solid, punkt, wireframe) og er en fin lett vekt, lav cpu brukende visualisering som ser flott ut</description>
78 <description lang="pl">Wizualizacja pokazuje obracający się, trójwymiarowy analizator widma, renderowany przy użyciu . Możesz ustawić wysokość słupków, ich prędkość i wygląd.</description>
79 <description lang="pt">Spectrum é uma visualização que mostra um analisador espectral 3D rotativo, renderizado em , que se sincroniza com o ritmo da música, criando assim um efeito de ondas na grelha espectral.&#10;Pode-se definir a altura das barras, a sua velocidade e como são renderizadas (sólido, pontos ou contorno). É uma visualização que não utiliza muito CPU e tem um aspecto fantástico.</description>
80 <description lang="pt_BR">O Spectrum é uma visualização que mostra um analisador espectral rotativo 3D, renderizado em , que se sincroniza com a batida, criando assim um efeito de ondas na grelha espectral.&#10;Pode-se definir a altura das barras, a sua velocidade e como são renderizadas (sólido, pontos ou contorno). É uma visualização que utiliza pouco o CPU e com um visual fantástico.</description>
81 <description lang="ro">Spectrul este o vizualizare care afișează un analizor de spectre 3D rotativ randat în care se mișcă după bătăile muzicii creând un val dea-lungul grilei spectrale.&#10;De asemenea, are setări pentru ajustarea înălțimii bărilor spectrale, a vitezei, și a modului în care bările sunt randate (umplere, puncte, contur). Este o vizualizare cu consum redus al procesorului care arată fantastic de bine.</description>
82 <description lang="ru">Эта визуализация на основе показывает вращающийся трёхмерный анализатор спектра, который движется в такт музыке, создавая эффект волны по всему спектру сетки.⏎&#10;Визуализация имеет настройки для регулировки высоты полос спектра, скорости движения и способа отображения полос (сплошной, точки, каркас), а также обладает небольшим размером и малой нагрузкой на процессор.</description>
83 <description lang="sk">Spectrum je vizualizácia zobrazujúca rotujúci 3D spektrálny analyzátor vykresľovaný pomocou , ktorý sa hýbe v rytme hudby a tak vytvára vlny naprieč mriežkou spektra.[CR]&#10;Zároveň má nastavenia upravujúce výšku stĺpcov spektra, ich rýchlosť a ako sú vykresľované (vyplnené, body, drôtový model). Je to jednoduchá vizualizácia s nízkou záťažou CPU, ktorá výborne vyzerá.</description>
84 <description lang="sl">Spectrum je vizualizacija, ki prikazuje vrtečo 3D spektralno analizato, generirano v , ki se premika v ritmu glasbe in ustvarja učinek valovanja v celotnem spektru. Vsebuje tudi nastavitve za prilagoditev višine spektra, hitrosti in oblike (polno, točke, okvir) ter je varčna vizualizacija z nizka porabo CPU-ja, ki izgleda super.</description>
85 <description lang="sv">Spektrum är en visualisering som visar en roterande 3D-spektrumanalysator renderad i . Den rör sig till musikens takt och skapar en vågeffekt över spektrat.&#10;-spektrum har inställningar för att justera staplarnas höjd, deras hastighet, hur de ska visas (solida, punkter, ramverk) och är en visualisering med låg cpu-användning samtidigt som den ser bra ut</description>
86 <description lang="th">Spectrum เป็น การแสดงแสงสี ทำให้เห็นการหมุนกราฟวิเคราะห์คลื่นความถี่เสียง แบบ 3 มิติ ที่สร้างขึ้นโดย ที่ขยับไปตามจังหวะของเพลงที่สร้างผลกระทบเป็นคลื่นไปทั่วตารางความถี่.&#10;นอกจากนี้ยังมีการตั้งค่าเพื่อปรับความสูงของแท่งคลื่นความถี่,ความเร็วและกระบวนการที่แท่งแสดงผล (ของแข็ง, จุด, โครงลวด) ทั้งยังใช้ทรัพยากรน้อยได้ดี, การแสดงแสงสี ที่ใช้ซีพียูต่ำนั่นก็ดูยอดเยี่ยมทีเดียว</description>
87 <description lang="uk">Spectrum є візалізаціє що показує обертаючийся 3D спектроаналізатор що промальовується з використанням технології . Спектроаналізатор показує стовпчики змінної висоти що рухаються в такт з музикою і створюють ефект подібний до хвилі.&#10;Ви маєте можливість налаштувати висоту стовпчиків, їх швидкість і те як вони намальовані (Заповнені, контури, крапки). Це досить проста, і невимоглива до процесора візуалізація, але яка має чудовий вигляд.</description>
88 <description lang="zh">Spectrum可视化效果是渲染的一个旋转的三维频谱分析图像,频谱矩阵随着音乐节拍而象波浪起伏。&#10;你还可以设置频谱棒的高度、变换速度、以及呈现效果(固体、点、框架)。这是一个不错的轻量级,低CPU使用率的可视化效果。</description>
89 <description lang="zh_TW"> Spectrum 是使用 描繪顯示旋轉的3D頻譜分析視覺效果,頻譜格線隨著音樂節拍而像波浪起伏。&#10;它還可以調整頻譜長條的高度、速度以及呈現效果(實心、點狀、線框)。它是個很好的輕量級、低 CPU 使用率的視覺化效果。</description>
90 <platform>@PLATFORM@</platform>
91 </extension>
92 </addon>
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Afrikaans (http://www.transifex.com/projects/p/xbmc-main/language/af/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: af\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modus"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Gevul"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Draad Raamwerk"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punte"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Staaf Hoogte"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Klein"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Verstek"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Groot"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Baie Groot"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Spoed"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Baie Stadig"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Stadig"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Verstek"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Vinnig"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Baie Vinnig"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Albanian (http://www.transifex.com/projects/p/xbmc-main/language/sq/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: sq\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mënyra"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Plotësuar"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Wireframe"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Pikë"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Naltësija e kallëpit"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Të vogël"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Prezgjedhuar"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "I madh"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Shumë i madh"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Shpejtësija"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Shumë ngadal"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Ngadal"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Prezgjedhuar"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Shpejt"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Shumë i shpejtë"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Amharic (http://www.transifex.com/projects/p/xbmc-main/language/am/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: am\n"
16 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "ዘዴ "
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "ተሞልቷል"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "የሽቦ ክፈፍ "
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "ነጥቦች "
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "የባሩ እርዝመት"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "ትንሽ "
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "ነባር "
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "ትልቅ "
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "በጣም ትልቅ "
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "ፍጥነት"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "በጣም በዝግታ "
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "በዝግታ "
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "ነባር "
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "በፍጥነት "
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "በጣም በፍጥነት "
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Arabic (http://www.transifex.com/projects/p/xbmc-main/language/ar/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: ar\n"
16 "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "الوضع"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "ممتلء"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "سلكي"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "نقط"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "شريط الارتفاع"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "صغير"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "الافتراضية"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "كبير"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "كبير جدا"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "سرعة"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "ب\\يء جدا"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "بطيء"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "الافتراضية"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "سريع"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "سريع جدا"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Azerbaijani (http://www.transifex.com/projects/p/xbmc-main/language/az/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: az\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30009"
19 msgid "Speed"
20 msgstr "Sürət"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Basque (http://www.transifex.com/projects/p/xbmc-main/language/eu/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: eu\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modua"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Betea"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Burdin-haria"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Puntuak"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Barra garaiera"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Txikia"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Lehenetsia"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Handia"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Oso handia"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Abiadura"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Oso poliki"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Poliki"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Lehenetsia"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Azkarra"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Oso azkarra"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Belarusian (http://www.transifex.com/projects/p/xbmc-main/language/be/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: be\n"
16 "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mode"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Filled"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Wireframe"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Points"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Bar Height"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Small"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Default"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Вялікі"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Very Big"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Speed"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Very Slow"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Slow"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Default"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Fast"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Very Fast"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Bosnian (http://www.transifex.com/projects/p/xbmc-main/language/bs/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: bs\n"
16 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Režim"
21
22 msgctxt "#30005"
23 msgid "Small"
24 msgstr "Malo"
25
26 msgctxt "#30006"
27 msgid "Default"
28 msgstr "Podrazumjevano"
29
30 msgctxt "#30009"
31 msgid "Speed"
32 msgstr "Brzina"
33
34 msgctxt "#30012"
35 msgid "Default"
36 msgstr "Podrazumjevano"
37
38 msgctxt "#30013"
39 msgid "Fast"
40 msgstr "Brzo"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Bulgarian (http://www.transifex.com/projects/p/xbmc-main/language/bg/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: bg\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Режим"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Запълнен"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Wireframe"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Точков"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Височина на стълбовете"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Малка"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Стандартна"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Голяма"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Много голяма"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Скорост"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Много бавна"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Бавна"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Стандартна"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Бърза"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Много бърза"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Burmese (http://www.transifex.com/projects/p/xbmc-main/language/my/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: my\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "အခြေအနေ"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "ဖြည့်စွက်မည်"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "အခြေခံဖွဲ့စည်းမှု"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "အမှတ်များ"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "ဘား အမြင့်"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "သေးငယ်သော"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "မူလအတိုင်း"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "ကြီးမားသော"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "ပို၍ကြီးမားသော"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "အမြန်နှုန်း"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "ပို၍နှေးသော"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "နှေးသော"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "မူလအတိုင်း"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "အမြန်"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "ပို၍မြန်သော"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Catalan (http://www.transifex.com/projects/p/xbmc-main/language/ca/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: ca\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mode"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Sòlid"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Malla"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punts"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Alçada de la barra"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Petit"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Per defecte"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Gran"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Molt gran"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Velocitat"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Molt lent"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lent"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Per defecte"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Ràpid"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Molt ràpid"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Chinese (Simple) (http://www.transifex.com/projects/p/xbmc-main/language/zh/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: zh\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "模式"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "填充"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "线框"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "点"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "柱高"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "小"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "默认"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "大"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "特大"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "速度"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "极慢"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "慢"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "默认"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "快"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "极快"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Chinese (Traditional) (http://www.transifex.com/projects/p/xbmc-main/language/zh_TW/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: zh_TW\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "模式"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "填滿"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "線框"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "點狀"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "頻譜長條高度"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "小"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "預設"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "大"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "非常大"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "速度"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "非常慢"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "縵"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "預設"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "快"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "非常快"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Croatian (http://www.transifex.com/projects/p/xbmc-main/language/hr/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: hr\n"
16 "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Način"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Popunjeno"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Žičani okvir"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Točke"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Visina trake"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Malo"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Zadano"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Veliko"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Vrlo veliko"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Brzina"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Vrlo sporo"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Sporo"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Zadano"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Brzo"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Vrlo brzo"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Czech (http://www.transifex.com/projects/p/xbmc-main/language/cs/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: cs\n"
16 "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Režim"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Vypněný"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Drátový model"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Body"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Výška sloupce"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Malá"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Výchozí"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Velká"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Velmi velká"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Rychlost"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Velmi pomalu"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Pomalu"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Výchozí"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rychle"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Velmi rychle"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Danish (http://www.transifex.com/projects/p/xbmc-main/language/da/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: da\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Tilstand"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Fyldt"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Wireframe"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punkter"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Bokshøjde"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Lille"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Standard"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Stor"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Meget stor"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Hastighed"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Meget langsom"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Langsom"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Standard"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Hurtig"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Meget hurtig"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Dutch (http://www.transifex.com/projects/p/xbmc-main/language/nl/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: nl\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modus"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Gevuld"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Draden"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punten"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Balkhoogte"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Klein"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Standaard"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Groot"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Heel groot"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Snelheid"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Zeer traag"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Traag"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Standaard"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Snel"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Zeer snel"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: English (http://www.transifex.com/projects/p/xbmc-main/language/en/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: en\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 #settings labels
19
20 msgctxt "#30000"
21 msgid "Mode"
22 msgstr ""
23
24 msgctxt "#30001"
25 msgid "Filled"
26 msgstr ""
27
28 msgctxt "#30002"
29 msgid "Wireframe"
30 msgstr ""
31
32 msgctxt "#30003"
33 msgid "Points"
34 msgstr ""
35
36 msgctxt "#30004"
37 msgid "Bar Height"
38 msgstr ""
39
40 msgctxt "#30005"
41 msgid "Small"
42 msgstr ""
43
44 msgctxt "#30006"
45 msgid "Default"
46 msgstr ""
47
48 msgctxt "#30007"
49 msgid "Big"
50 msgstr ""
51
52 msgctxt "#30008"
53 msgid "Very Big"
54 msgstr ""
55
56 msgctxt "#30009"
57 msgid "Speed"
58 msgstr ""
59
60 msgctxt "#30010"
61 msgid "Very Slow"
62 msgstr ""
63
64 msgctxt "#30011"
65 msgid "Slow"
66 msgstr ""
67
68 msgctxt "#30012"
69 msgid "Default"
70 msgstr ""
71
72 msgctxt "#30013"
73 msgid "Fast"
74 msgstr ""
75
76 msgctxt "#30014"
77 msgid "Very Fast"
78 msgstr ""
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: English (US) (http://www.transifex.com/projects/p/xbmc-main/language/en_US/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: en_US\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mode"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Filled"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Wireframe"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Points"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Bar Height"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Small"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Default"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Big"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Very Big"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Speed"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Very Slow"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Slow"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Default"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Fast"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Very Fast"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Esperanto (http://www.transifex.com/projects/p/xbmc-main/language/eo/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: eo\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mode"
21
22 msgctxt "#30006"
23 msgid "Default"
24 msgstr "Default"
25
26 msgctxt "#30009"
27 msgid "Speed"
28 msgstr "Rapideco"
29
30 msgctxt "#30012"
31 msgid "Default"
32 msgstr "Default"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Estonian (http://www.transifex.com/projects/p/xbmc-main/language/et/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: et\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Režiim"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Täidetud"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Sõrestik"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punkte"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Riba kõrgus"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Väike"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Vaikimisi"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Suur"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Väga suur"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Kiirus"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Väga aeglane"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Aeglane"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Vaikimisi"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Kiire"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Väga kiire"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Faroese (http://www.transifex.com/projects/p/xbmc-main/language/fo/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: fo\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30005"
19 msgid "Small"
20 msgstr "Líti"
21
22 msgctxt "#30006"
23 msgid "Default"
24 msgstr "Vanligt"
25
26 msgctxt "#30009"
27 msgid "Speed"
28 msgstr "Fer"
29
30 msgctxt "#30012"
31 msgid "Default"
32 msgstr "Vanligt"
33
34 msgctxt "#30013"
35 msgid "Fast"
36 msgstr "Skjótt"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Finnish (http://www.transifex.com/projects/p/xbmc-main/language/fi/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: fi\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Muoto"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Täytetty"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Rautalanka"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Pisteet"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Palkin korkeus"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Pieni"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Oletus"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Suuri"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Erittäin suuri"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Nopeus"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Erittäin hidas"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Hidas"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Oletus"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Nopea"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Erittäin nopea"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: French (http://www.transifex.com/projects/p/xbmc-main/language/fr/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: fr\n"
16 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mode"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Plein"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Fil de fer"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Points"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Hauteur de barre"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Petit"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Défaut"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Grand"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Très Grand"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Vitesse"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Très Lent"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lent"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Défaut"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rapide"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Très Rapide"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: French (Canada) (http://www.transifex.com/projects/p/xbmc-main/language/fr_CA/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: fr_CA\n"
16 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mode"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Plein"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Fil de fer"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Points"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Hauteur de barre"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Petit"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Défaut"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Grand"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Très Grand"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Vitesse"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Très Lent"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lent"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Défaut"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rapide"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Très Rapide"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Galician (http://www.transifex.com/projects/p/xbmc-main/language/gl/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: gl\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modo"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Cheo"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Malla"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Puntos"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Altura da barra"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Pequeno"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Predeterminado"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Grande"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Moi grande"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Velocidade"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Moi lenta"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lenta"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Predeterminada"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rápida"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Moi rápida"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: German (http://www.transifex.com/projects/p/xbmc-main/language/de/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: de\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modus"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Ausgefüllt"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Drahtgeflecht"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punkte"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Balkenhöhe"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Klein"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Standard"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Groß"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Sehr groß"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Geschwindigkeit"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Sehr langsam"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Langsam"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Standard"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Schnell"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Sehr schnell"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Greek (http://www.transifex.com/projects/p/xbmc-main/language/el/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: el\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Μέθοδος"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Γέμισαν"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Συρματόπλεγμα"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Σημεία"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Ύψος Στηλών"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Μικρό"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Προεπιλογή"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Μεγάλο"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Πολύ Μεγάλο"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Ταχύτητα"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Πολύ Αργά"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Αργά"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Προεπιλογή"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Γρήγορα"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Πολύ Γρήγορα"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Haitian (Haitian Creole) (http://www.transifex.com/projects/p/xbmc-main/language/ht/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: ht\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30009"
19 msgid "Speed"
20 msgstr "Vites"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Hebrew (http://www.transifex.com/projects/p/xbmc-main/language/he/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: he\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "מצב"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Filled"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Wireframe"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Points"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "גובה פס"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "קטן"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "ברירת מחדל"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "גדול"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "גדול מאוד"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "מהירות"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "איטי מאוד"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "איטי"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "ברירת מחדל"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "מהיר"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "מהיר מאוד"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Hindi (Devanagiri) (http://www.transifex.com/projects/p/xbmc-main/language/hi/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: hi\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "विधि"
21
22 msgctxt "#30006"
23 msgid "Default"
24 msgstr "डिफ़ॉल्ट"
25
26 msgctxt "#30009"
27 msgid "Speed"
28 msgstr "गति"
29
30 msgctxt "#30012"
31 msgid "Default"
32 msgstr "डिफ़ॉल्ट"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Hungarian (http://www.transifex.com/projects/p/xbmc-main/language/hu/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: hu\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mód"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Kitöltött"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Drótváz"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Pontok"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Oszlopmagasság"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Alacsony"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Alapérték"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Nagy"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Nagyon nagy"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Sebesség"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Nagyon lassú"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lassú"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Alapérték"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Gyors"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Nagyon gyors"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Icelandic (http://www.transifex.com/projects/p/xbmc-main/language/is/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: is\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Hamur"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Fyllt"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Útlínur"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punktar"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Hæð"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Lítið"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Sjálfgefið"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Stórt"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Mjög stórt"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Hraði"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Mjög hægt"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Hægt"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Sjálfgefið"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Hratt"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Mjög hratt"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Indonesian (http://www.transifex.com/projects/p/xbmc-main/language/id/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: id\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mode"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Diisi"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Wireframe"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Point"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Tinggi bar"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Kecil"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Standar"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Besar"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Sangat Besar"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Kecepatan"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Sangat Pelan"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Pelan"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Standar"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Cepat"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Sangat Cepat"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Italian (http://www.transifex.com/projects/p/xbmc-main/language/it/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: it\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modalità"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Piene"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "A righe"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "A punti"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Altezza barre"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Piccolo"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Predefinito"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Grande"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Molto grande"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Velocità"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Molto lento"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lento"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Predefinito"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Veloce"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Molto veloce"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Japanese (http://www.transifex.com/projects/p/xbmc-main/language/ja/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: ja\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "モード"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "フィル"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "ワイヤーフレーム"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "ポイント"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "バーの高さ"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "小さい"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "デフォルト"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "大きい"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "とても大きい"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "表示時間"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "とてもゆっくり"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "ゆっくり"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "デフォルト"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "速く"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "とても速く"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Korean (http://www.transifex.com/projects/p/xbmc-main/language/ko/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: ko\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "모드"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "채워짐"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "와이어 프레임"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "점"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "바 높이"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "낮음"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "보통"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "높음"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "매우 높음"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "속도"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "매우 느림"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "느림"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "보통"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "빠름"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "매우 빠름"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Latvian (http://www.transifex.com/projects/p/xbmc-main/language/lv/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: lv\n"
16 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Veids"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Pildīts"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Tīkla režgis"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punkti"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Stieņa augstums"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Mazs"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Noklusētais"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Liels"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Ļoti liels"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Ātrums"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Ļoti mazs"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lēns"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Noklusētais"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Ātrs"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Loti ātrs"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Lithuanian (http://www.transifex.com/projects/p/xbmc-main/language/lt/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: lt\n"
16 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Režimas"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Pripildytas"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Tinklelio modelis"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Taškai"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Juosta aukštai"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Mažas"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Numatytas"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Didelis"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Labai didelis"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Prezentacijos rodymo laikas"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Labai lėtas"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lėtas"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Numatytas"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Greitas"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Labai greitas"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Macedonian (http://www.transifex.com/projects/p/xbmc-main/language/mk/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: mk\n"
16 "Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Режим"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Исполнето"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Мрежесто"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Поени"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Висина на бар"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Мало"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Подразбирачко"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Големо"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Многу големо"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Брзина"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Многу споро"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Споро"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Подразбирачко"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Брзо"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Многу брзо"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Malay (http://www.transifex.com/projects/p/xbmc-main/language/ms/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: ms\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30005"
19 msgid "Small"
20 msgstr "Kecil"
21
22 msgctxt "#30009"
23 msgid "Speed"
24 msgstr "Kelajuan"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Maltese (http://www.transifex.com/projects/p/xbmc-main/language/mt/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: mt\n"
16 "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n==0 || ( n%100>1 && n%100<11) ? 1 : (n%100>10 && n%100<20 ) ? 2 : 3);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mode:"
21
22 msgctxt "#30006"
23 msgid "Default"
24 msgstr "Difolt"
25
26 msgctxt "#30009"
27 msgid "Speed"
28 msgstr "Veloċita'"
29
30 msgctxt "#30012"
31 msgid "Default"
32 msgstr "Difolt"
33
34 msgctxt "#30013"
35 msgid "Fast"
36 msgstr "Mgħaġġel"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Norwegian (http://www.transifex.com/projects/p/xbmc-main/language/no/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: no\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modus"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Fylt"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Trådramme"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punkter"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Søylehøyde"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Liten"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Standard"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Stor"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Veldig stor"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Hastighet"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Veldig sakte"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Sakte"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Standard"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rask"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Veldig rask"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Persian (http://www.transifex.com/projects/p/xbmc-main/language/fa/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: fa\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30006"
19 msgid "Default"
20 msgstr "پیش فرض"
21
22 msgctxt "#30009"
23 msgid "Speed"
24 msgstr "سرعت"
25
26 msgctxt "#30012"
27 msgid "Default"
28 msgstr "پیش فرض"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Persian (Iran) (http://www.transifex.com/projects/p/xbmc-main/language/fa_IR/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: fa_IR\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "حالت"
21
22 msgctxt "#30006"
23 msgid "Default"
24 msgstr "پیش فرض"
25
26 msgctxt "#30009"
27 msgid "Speed"
28 msgstr "سرعت"
29
30 msgctxt "#30012"
31 msgid "Default"
32 msgstr "پیش فرض"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Polish (http://www.transifex.com/projects/p/xbmc-main/language/pl/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: pl\n"
16 "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Tryb"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Wypełnione"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Siatka"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punkty"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Wysokość słupków"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Małe"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Domyślne"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Duże"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Bardzo duże"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Szybkość"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Bardzo wolne"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Wolne"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Domyślne"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Szybkie"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Bardzo szybkie"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Portuguese (http://www.transifex.com/projects/p/xbmc-main/language/pt/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: pt\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modo"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Preenchido"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Contorno"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Pontos"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Altura das barras"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Pequena"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Padrão"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Grande"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Muito grande"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Velocidade"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Muito lento"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lento"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Padrão"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rápido"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Muito rápido"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/xbmc-main/language/pt_BR/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: pt_BR\n"
16 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modo"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Total"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Contornos"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Pontos"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Altura da Barra"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Pequeno"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Padrão"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Grande"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Muito Grande"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Velocidade"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Bem devagar"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Devagar"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Padrão"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rápido"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Muito Rápido"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Romanian (http://www.transifex.com/projects/p/xbmc-main/language/ro/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: ro\n"
16 "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mod"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Umplere"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Contur"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Puncte"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Înălțime bară"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Mică"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Standard"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Mare"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Foarte mare"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Viteză"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Foarte încet"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Încet"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Standard"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rapidă"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Foarte rapidă"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Russian (http://www.transifex.com/projects/p/xbmc-main/language/ru/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: ru\n"
16 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Режим"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Сплошной"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Каркас"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Точки"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Высота полос"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Небольшие"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "По-умолчанию"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Крупные"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Огромные"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Скорость"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Очень медленно"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Медленно"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "По-умолчанию"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Быстро"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Очень быстро"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Serbian (http://www.transifex.com/projects/p/xbmc-main/language/sr/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: sr\n"
16 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Režim"
21
22 msgctxt "#30006"
23 msgid "Default"
24 msgstr "Podrazumevano"
25
26 msgctxt "#30009"
27 msgid "Speed"
28 msgstr "Brzina"
29
30 msgctxt "#30012"
31 msgid "Default"
32 msgstr "Podrazumevano"
33
34 msgctxt "#30013"
35 msgid "Fast"
36 msgstr "Brzo"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Serbian (Cyrillic) (http://www.transifex.com/projects/p/xbmc-main/language/sr_RS/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: sr_RS\n"
16 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Режим"
21
22 msgctxt "#30006"
23 msgid "Default"
24 msgstr "Подразумевано"
25
26 msgctxt "#30009"
27 msgid "Speed"
28 msgstr "Брзина"
29
30 msgctxt "#30012"
31 msgid "Default"
32 msgstr "Подразумевано"
33
34 msgctxt "#30013"
35 msgid "Fast"
36 msgstr "Брзо"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Slovak (http://www.transifex.com/projects/p/xbmc-main/language/sk/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: sk\n"
16 "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Režim"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Vyplnený"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Drôtový model"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Body"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Výška stĺpcov"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Malý"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Štandardný"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Veľký"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Veľmi veľký"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Rýchlosť"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Veľmi pomalo"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Pomalo"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Štandardná"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rýchlo"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Veľmi rýchlo"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Slovenian (http://www.transifex.com/projects/p/xbmc-main/language/sl/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: sl\n"
16 "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Način"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Polno"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Shema"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Točke"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Višina stolpcev"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Majhna"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Privzeta"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Velika"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Zelo velika"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Hitrost"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Zelo počasno"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Počasno"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Privzeto"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Hitro"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Zelo hitro"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Spanish (http://www.transifex.com/projects/p/xbmc-main/language/es/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: es\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modo"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Sólido"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Malla"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Puntos"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Altura de la barra"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Pequeña"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Por defecto"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Grande"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Muy grande"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Velocidad"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Muy despacio"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Despacio"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Por defecto"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rápido"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Muy rápido"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/xbmc-main/language/es_AR/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: es_AR\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modo"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Sólido"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Malla"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Puntos"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Altura de la barra"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Pequeña"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Por defecto"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Grande"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Muy grande"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Velocidad"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Muy lenta"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lenta"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Por defecto"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rápida"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Muy rápida"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Spanish (Mexico) (http://www.transifex.com/projects/p/xbmc-main/language/es_MX/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: es_MX\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modo"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Lleno"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Malla de alambre"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Puntos"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Altura de Barra"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Chico"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Por defecto"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Grande"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Muy Grande"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Velocidad"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Muy Lento"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Lento"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Por defecto"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Rápido"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Muy Rápido"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Swedish (http://www.transifex.com/projects/p/xbmc-main/language/sv/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: sv\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Läge"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Fylld"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Wireframe"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Punkter"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Stapelhöjd"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Liten"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Standard"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Stor"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Väldigt stor"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Hastighet"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Väldigt långsam"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Långsam"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Standard"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Snabb"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Väldigt snabb"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Tajik (http://www.transifex.com/projects/p/xbmc-main/language/tg/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: tg\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Ҳолат"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Пуршуда"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Чорчӯбаи хаттӣ"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Нуқтаҳо"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Баландии навор"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Хурд"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Пешфарз"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Калон"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Хеле калон"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Суръат"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Хеле суст"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Суст"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Пешфарз"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Тез"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Хеле тез"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Tamil (India) (http://www.transifex.com/projects/p/xbmc-main/language/ta_IN/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: ta_IN\n"
16 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "முறை"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "பூர்த்தி"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "கம்பிச்சட்டம்"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "புள்ளிகள்"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "பட்டை உயரம்"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "சிறிய"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "இயல்புநிலை"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "பெரிய"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "மிக பெரிய"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "வேகமாக"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "மிகவும் மெதுவாக"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "மெதுவாக"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "இயல்புநிலை"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "வேகமாக"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "மிக வேகமாக"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Thai (http://www.transifex.com/projects/p/xbmc-main/language/th/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: th\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "โหมด"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "เติมพื้นผิว"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "โครงลวด"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "จุด"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "ความสูงของแท่ง"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "เล็ก"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "ค่าพื้นฐาน"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "ใหญ่"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "ใหญ่มาก"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "ความเร็ว"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "ช้ามาก"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "ช้า"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "ค่าพื้นฐาน"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "เร็ว"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "เร็วมาก"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Turkish (http://www.transifex.com/projects/p/xbmc-main/language/tr/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: tr\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Mod"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Dolu"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Telkafes"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Noktalar"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Çubuk Yüksekliği"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Küçük"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Varsayılan"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Büyük"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Çok Büyük"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Hız"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Çok Yavaş"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Yavaş"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Varsayılan"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Hızlı"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Çok Hızlı"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Ukrainian (http://www.transifex.com/projects/p/xbmc-main/language/uk/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: uk\n"
16 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Режим"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Заповнений"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Контури"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Крапки"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Висота стовпчика"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Мала"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "За промовчанням"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Велика"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Дуже велика"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Швидкість"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Дуже повільно"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Повільно"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "За промовчанням"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Швидкість"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Дуже швидко"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Uzbek (http://www.transifex.com/projects/p/xbmc-main/language/uz/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: uz\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Usul"
21
22 msgctxt "#30006"
23 msgid "Default"
24 msgstr "Andoza"
25
26 msgctxt "#30009"
27 msgid "Speed"
28 msgstr "Tezligi"
29
30 msgctxt "#30012"
31 msgid "Default"
32 msgstr "Andoza"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Vietnamese (http://www.transifex.com/projects/p/xbmc-main/language/vi/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: vi\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Chế độ"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Làm đầy"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Khung dây"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Số điểm"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Chiều cao cột"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Nhỏ"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Mặc định"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Lớn"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Rất lớn"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Tốc độ"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Rất chậm"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Chậm"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Mặc định"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Nhanh"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Rất nhanh"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Vietnamese (Viet Nam) (http://www.transifex.com/projects/p/xbmc-main/language/vi_VN/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: vi_VN\n"
16 "Plural-Forms: nplurals=1; plural=0;\n"
17
18 msgctxt "#30009"
19 msgid "Speed"
20 msgstr "Tốc độ"
0 # XBMC Media Center language file
1 # Addon Name: OpenGL Spectrum
2 # Addon id: visualization.glspectrum
3 # Addon Provider: Team XBMC
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: XBMC Main\n"
7 "Report-Msgid-Bugs-To: http://trac.xbmc.org/\n"
8 "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n"
9 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10 "Last-Translator: XBMC Translation Team\n"
11 "Language-Team: Welsh (http://www.transifex.com/projects/p/xbmc-main/language/cy/)\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15 "Language: cy\n"
16 "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"
17
18 msgctxt "#30000"
19 msgid "Mode"
20 msgstr "Modd"
21
22 msgctxt "#30001"
23 msgid "Filled"
24 msgstr "Llanwyd"
25
26 msgctxt "#30002"
27 msgid "Wireframe"
28 msgstr "Ffrâm weiar"
29
30 msgctxt "#30003"
31 msgid "Points"
32 msgstr "Pwyntiau"
33
34 msgctxt "#30004"
35 msgid "Bar Height"
36 msgstr "Uchder Bar"
37
38 msgctxt "#30005"
39 msgid "Small"
40 msgstr "Bach"
41
42 msgctxt "#30006"
43 msgid "Default"
44 msgstr "Rhagosodiad"
45
46 msgctxt "#30007"
47 msgid "Big"
48 msgstr "Mawr"
49
50 msgctxt "#30008"
51 msgid "Very Big"
52 msgstr "Mawr Iawn"
53
54 msgctxt "#30009"
55 msgid "Speed"
56 msgstr "Cyflymder"
57
58 msgctxt "#30010"
59 msgid "Very Slow"
60 msgstr "Araf Iawn"
61
62 msgctxt "#30011"
63 msgid "Slow"
64 msgstr "Araf"
65
66 msgctxt "#30012"
67 msgid "Default"
68 msgstr "Rhagosodiad"
69
70 msgctxt "#30013"
71 msgid "Fast"
72 msgstr "Cyflym"
73
74 msgctxt "#30014"
75 msgid "Very Fast"
76 msgstr "Cyflym Iawn"
0 <settings>
1 <setting id="mode" label="30000" type="enum" lvalues="30001|30002|30003" default="0"/>
2 <setting id="bar_height" label="30004" type="enum" lvalues="30005|30006|30007|30008" default="1"/>
3 <setting id="speed" label="30009" type="enum" lvalues="30010|30011|30012|30013|30014" default="2"/>
4 </settings>